solr集群(solrcloud)部署搭建_solr集群部署-CSDN博客
我是用的版本:solr-7.7.3+zookeeper-3.4.13
文件地址:
solr:链接:https://pan.baidu.com/s/1BxNbDNzyoacwE_U2Yf0fCw
提取码:m1sl
jdk:链接:https://pan.baidu.com/s/1pc8OgNmPjW31wSXedJhMQQ
提取码:cn09
zookeeper:链接:https://pan.baidu.com/s/1f8IxdcWROj0nHRo3LE3oBQ
提取码:rm55
安装Java环境
解压安装包 tar xvf jdk-8u301-linux-x64.tar.gz
配置环境变量:vim /etc/profile
echo 'export JAVA_HOME=/usr/local/java/jdk1.8.0_301' >> /etc/profile
echo 'export JAVA="$JAVA_HOME/bin"' >> /etc/profile
echo 'export PATH="$JAVA:$PATH"' >> /etc/profile
刷新环境变量:source /etc/profile
查看安装情况 java -version
zookeeper
下载:Index of /apache/zookeeper/zookeeper-3.4.13 (easyname.ch)
解压文件:tar xvf apache-zookeeper-3.4.13.tar.gz
修改配置文件名:cp ./conf/zoo_sample.cfg ./conf/zoo.cfg
修改配置文件 vim ./conf/zoo.cfg
dataDir=/opt/zookeeper/apache-zookeeper-3.4.13/data
4lw.commands.whitelist=mntr,stat,ruok,conf,isro
server.1=172.16.76.28:2888:3888
server.2=172.16.76.29:2888:3888
server.3=172.16.76.30:2888:3888
autopurge.snapRetainCount=3
autopurge.purgeInterval=1
可以看做是server.A=B:C:D
A是一个数字,是当前server的唯一标识;
B是这个服务器的IP地址;
C表示的是这个服务器与集群中的Leader服务器交换信息的端口;
D表示的是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。
echo “1” >/opt/zookeeper/apache-zookeeper-3.4.13/data/myid
echo “2” >/opt/zookeeper/apache-zookeeper-3.4.13/data/myid
echo “3” >/opt/zookeeper/apache-zookeeper-3.4.13/data/myid
查看zookeeper是否启动:bin目录下:ps -aux | grep ‘zookeeper’
启动命令:在bin目录下
启动:/opt/zookeeper-3.4.13/bin/zkServer.sh start
查看集群状态:/opt/zookeeper-3.4.13/bin/zkServer.sh status
报错:Error contacting service. It is probably not running:
启动成功,但是状态报错,可能是没有关闭防火墙,关闭防火墙后需要重新启动
成功
打开zookeeper控制台 /opt/zookeeper-3.4.13/bin/zkCli.sh
查看命令:ls
删除命令:delete
Solr
solr下载:wget https://archive.apache.org/dist/lucene/solr/7.7.3/solr-7.7.3.tgz
解压:tar -zxvf solr-7.7.3.tgz
solrCloud部署依赖zookeeper,需要先启动每一台zookeeper服务器
/opt/solr-7.7.3/bin/solr start -force
/opt/solr-7.7.3/bin/solr stop -force
上传配置文件
让zookeeper统一管理配置文件(只需要一次,不需要每个节点一次) 在/opt/solr-7.7.3/server/scripts/cloud-scripts 下
创建对应配置文件文件夹 目录/opt/solr-7.7.3/server/solr/configsets
mkdir /opt/solr-7.7.3/server/solr/configsets/jnlinfo
复制原始配置文件
cp -rf _default/* jnlinfo/
上传配置文件到zookeeper中
/opt/solr-7.7.3/server/scripts/cloud-scripts/zkcli.sh -zkhost 172.16.76.28:2181,172.16.76.29:2181,172.16.76.30:2181 -cmd upconfig -confdir /opt/solr-7.7.3/server/solr/configsets/ccc/conf -confname cccconf
查看配置文件上传内容
/opt/zookeeper-3.4.13/bin/zkCli.sh
修改脚本
bin目录下vim solr.in.sh
ZK_HOST="172.16.76.28:2181,172.16.76.29:2181,172.16.76.30:2181"
问题:搭建solrCloud时,Graph中没有集群节点信息图
core和collection的区别
1.在单节点的solr上,一个core等于一个collection。
2.在solrCloud上,一个collection由分布在不同节点的core组成,但是一个collection仍然为一个逻辑索引,但是这个colletion由不同的core包含不同的shards组成。
3.一个core包含不同封装一个物理索引形成一个实例。
4.一个collection是由分布在不同node上的core组合而成,从而提供一个逻辑索引组成的。
https://www.cnblogs.com/shoufeng/p/10569644.html
./solr create-collection -c [新建集合的名字] -n [zookeeper上配置文件的名称,上一步设置的那个n] -shards 2 [分两块] -replicationFactor 2 [replic数量]
--
./solr create_collection -c jnlinfo_hep -n solrconf -shards 3 -replicationFactor 3 -force
replicationFactor (副本因子): 每个分片配备的副本数, 包括Leader和Replica;
numShards: 集合分片的个数;
replicationFactor (副本因子): 每个分片配备的副本数, 包括Leader和Replica;
numShards: 集合分片的个数;