solr集群使用zookeeper作为集群管理工具 作为集群的入口, zookeeper一旦挂了, 集群也就挂了, 所以zookeeper也需要实现高可用, 就用zookeeper搭建集群
前面博文有zookeeper集群搭建
https://blog.csdn.net/qq_40803085/article/details/103768907
开始搭建
1) 找到一个干净的tomcat(没有做过改动的)
点击跳转至tomcat下载页面
2) 创建搭建solr集群的目录
在 /usr/local目录下创建solr-cloud文件夹
直接mkdir /usr/local/solr-cloud 或者先切换到local目录下cd /usr/local, 再进行创建mkdir solr-cloud
把tomcat拷贝四份到 /usr/local/solr-cloud分别命名
3) 从solr单机版复制名为solr的文件, 并修改tomcat的端口号
前面搭建单机版的solr, 已经配置好了tomcat里的solr, 所以从solr单机版复制, 我的单机版在local目录下, 名字为solr, 所以我先退回一级, 找到单机版solr目录tomcat/webapps/solr拷贝到此目录(solr-cloud)的tomcat/webapps. 所以就是 cp -r …/solr/tomcat/weapps/solr/ tomcat01/webapps 01-04每个目录复制一份
复制完成后顺便修改tomcat的端口号, solr集群, tomcat的端口号肯定不能一样的
vim tomcat01/conf/server.xml 01-04每个修改一下
端口号修改如下, 以此类推
tomcat01/conf/server.xml
tomcat02/conf/server.xml
4) 从solr单机版拷贝solrhome
还是一样,去单机版拷贝solrhome 拷贝四份
cp -r …/solr/solrhome/ solrhome01
5) 关联tomcat和solrhome
修改配置文件里solrhome的路径
修改内容如下, 以此类推
tomcat01/webapps/solr/WEB-INF/web.xml
tomcat02/webapps/solr/WEB-INF/web.xml
6) 修改配置文件solr.xml
修改solrhome里solr.xml的配置文件
solrhome01/solr.xml
把ip改成虚拟机ip 端口号改成对应的tomcat的端口号, solrhome01对应的是tomcat01的端口号也就是8180
根据上面的, 以此类推
7) 关联zookeeper和solr
在tomcat/bin文件夹下找到catalina.sh
修改catalina.sh 添加JAVA_OPTS
JAVA_OPTS这个参数主要配置运行时的环境变量
通过tomcat给solr传递一个参数, 告诉solr我的zookeeper在哪
这时候, 他们之间才能建立联系
所以在第一次用JAVA_OPTS这个值之前, 把我们的内容加进去
在这个位置写上, ip是自己虚拟机ip
JAVA_OPTS="-DzkHost=192.168.25.3:2181,192.168.25.3:2182,192.168.25.3:2183"
每一个tomca都需要改, 按照上面的方法
这样solr和zookeeper的关系就建立好了
8) 向zookeeper上传配置文件
让zookeeper统一管理配置文件。需要把solrhome/collection1/conf目录上传到zookeeper。上传任意solrhome中的配置文件即可
到这个目录下找到zkcli.sh
cd /home/zq/software/solr/solr-4.10.3/example/scripts/cloud-scripts/
把这个命令执行一遍(ip是自己虚拟机的ip, 执行之前记得启动zookeeper集群, 关闭防火墙( (systemctl stop firewalld.service) 临时关闭 ),就可以把配置文件上传到zookeeper了
./zkcli.sh -zkhost 192.168.25.3:2181,192.168.25.3:2182,192.168.25.3:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf
执行完成之后, 会出现这样的信息
尝试连接指定端口的zookeeper
切换到 cd /usr/local/solr-cloud/zookeeper01/bin/
执行./zkCli.sh -server 192.168.25.3:2182
可以看到上传的配置文件
9) 创建批处理启动文件
创建start-all_tomcat.sh, 添加如下内容保存
给权限
执行
10) 测试
solr集群搭建完成