前言
需要环境JDK1.8或以上
zookeeper 3个
tomcat8或以上 4个
solr7.1.0
准备工作
单机版的安装 点我
拷贝单机版的solrhome和tomcat
一、solrhome
cd /usr/local/
mkdir solrcloud
在solrcloud目录中上传tomcat并且复制4个和zookeeper复制3个,复制3个solrhome
二、zookeeper集群搭建
cd /usr/local/solrcloud/zookeeper01
mkdir data
cd /usr/local/solrcloud/zookeeper01
mkdir data
cd /usr/local/solrcloud/zookeeper01/data
echo 1>>myid
cd /usr/local/solrcloud/zookeeper01/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改zoo.cfg的端口,同理修改zookeeper02和zookeeper03 。zookeeper01clientPort=12181,zookeeper02 clientPort=22181,zookeeper03 clientPort=32181
三、修改配置
修改每个tomcat中的端口,/usr/local/solrcloud/tomcat0X/conf 中的web.xml文件,我的修改规则是tomcat01配置文件端口加一,同理tomcat零几配置文件端口就加几。
cd /usr/local/solrcloud/tomcat01/webapps/solr/WEB-INF
vi web.xml
zookeeper集群和tomcat建立联系,修改所有tomcat中的catalina.sh
增加一句
JAVA_OPTS="-DzkHost=192.168.57.128:12181,192.168.57.128:22181,192.168.57.128:32181"
修改solrhome0x solr.xml文件
修改solrhome0x collection1中的core.propies
#节点名称,每个core不一样
coreNodename=cx
#分片名称,每个保持不一样
shard=sx
四、脚本编写
写启动所有zk脚本,同理可写关闭脚本
启动所有tomcat脚本,同理可写关闭脚本
脚本写完之后可能没有执行权限
执行完之后可以看到脚本文件变颜色了,有执行权限了。
五、启动
启动zk集群,tomcat集群
cd /usr/local/solrcloud
./startallzk.sh
./startalltm.sh
使用zk管理solrcloud配置文件
cd /usr/local/solr-7.1.0/server/scripts/cloud-scripts
./zkcli.sh -zkhost 192.168.57.128:12181,192.168.57.128:22181,192.168.57.128:32181 -cmd upconfig -confdir /usr/local/solrcloud/solrhome01/collection1/conf -confname myconf
六、登录solr管理页面,创建集群
创建一个名字为collection2的核心,包含两个分片,每个分片两台机器。最终提示success代表创建成功
地址栏输入:
http://192.168.57.128:8001/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2
小结
在执行过程中如果遇到问题,记得看日志,日志是个很好的文件。