搜索推荐四——solrcloud搭建

版权声明:分享是一种美德,能够找到同一兴趣点是幸运,转载文章记得说明出处,共同进步。 https://blog.csdn.net/David_snjly/article/details/86639147

搭建zookeeper集群环境

详细步骤参考分布式——zookeeper集群环境搭建

搭建单机版solr

基于单机版solr实现solrcloud集群搭建

搭建solrcloud集群步骤:

solrcloud安装在/usr/local/solrcloud目录下

  • 第一步:复制4个单机版solr服务对应的tomcat,并分别修改端口为:8280、8380、8480、8580。813fab6de12d6af01f12e610b5805094.png
    然后修改tomcat8280的server.xml,同理修改其他几个tomcat的server.xml
#第22行
<Server port="8205" shutdown="SHUTDOWN">
#第69行
<Connector port="8280" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
#第116行
<Connector port="8209" protocol="AJP/1.3" redirectPort="8443" />
  • 第二步:复制4个solrhome,分别为solrhome8280、solrhome8380、solrhome8480、solrhome8580。一个solr实例对应一个solrhome。 507b9236ced610980f77a36ccfddc75f.png

也有人将solrhome放在tomcat-solr-${port}的里面与tomcat的webapp同级也是可以的,在第三步修改是制定即可。

  • 第三步:修改每个solr服务对应的Tomcat容器中solr项目的web.xml文件中的内容(目录结构为/usr/local/solrcloud/tomcat_8280/webapps/solr/WEB-INF)
    f095dc584bb7176e97cfd8d21c7347e1.png
  • 第四步:修改每个solrhome下的solr.xml,指定对应solr服务的tomcat的ip和端口。218b8991b7cae8d1182f9dab3881b154.png
  • 第五步:设置tomcat的启动参数,在每个tomcat目录下的bin/catalina.sh,添加以下内容:31dae33fc7ca00ac6080bfb259a1c369.png
#第239行(不用动);
#JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`"
#在第239行下面添加一行JAVA_OPTS的配置
JAVA_OPTS="-DzkHost=192.168.31.241:2182,192.168.31.241:2183,192.168.31.241:2184"
#解释:上面的三个ip为三个zookeeper的ip+clientPort的通讯端口(clientPort)
  • 第六步:将solr配置文件上传到zookeeper中,进行统一管理,进入到/root/soft/solr-5.3.1/server/scripts/cloud-scripts目录 (此目录在apacha-solr包中) 中执行zkcli.sh命令:
    e35b59855c83f67e28350fe9ea928fe7.png
上传配置文件
./zkcli.sh   -zkhost ${ip}:2281,${ip}:3281,${ip}:4281   -cmd   upconfig   -confdir   /usr/local/solrcloud/solrhome8280/solr/item/conf   -confname   myconf/item(每个ip地址之间用逗号分隔)

绑定配置文件和collection
./zkcli.sh -zkhost 172.16.117.7:2181,172.16.117.7:3181,172.16.117.7:4181 -cmd linkconfig -collection artisan -confname myconf/artisan
  • 第七步:编写脚本文件启动所有的solr服务69429e1e9d315bab71f371405fc69084.png
  • 第八步:访问部署的solr集群中任意的端口服务8934cc889d9a0757202b1ff6707082cc.png
  • 第九步:solrcloud搭建完毕。

创建分片

分片对应单机solr中的core
http://localhost:8280/solr/admin/collections?action=CREATE&name=studio&numShards=3&replicationFactor=2&collection.configName=myconf/studio

删除不用的collection
http://172.16.117.7:8280/solr/admin/collections?action=DELETE&name=studio

猜你喜欢

转载自blog.csdn.net/David_snjly/article/details/86639147