linux环境solr集群部署,在linux上搭建Solr集群的方法

什么是SolrCloud

SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。

SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心。

Solr集群的系统架构

a02ce360253b5083ca4f9652780f501d.png

需要实现的solr集群架构

c115a906b22c3814a64ac079e6d6d60a.png

Zookeeper作为集群的管理工具。

1、集群管理:容错、负载均衡。

2、配置文件的集中管理

3、集群的入口

需要实现zookeeper 高可用。需要搭建集群。建议是奇数节点。需要三个zookeeper服务器。 投票选举 需要超过半数以上

搭建solr集群需要7台服务器。

搭建伪分布式:

需要三个zookeeper节点

需要四个tomcat节点。

建议虚拟机的内容1G以上。

一.在Linux上安装zookeeper集群 https://blog.csdn.net/lushizhuo9655/article/details/109135460

二.在Linux上搭建solr集群

Solr集群的搭建

根据单机版的操作安装好solr和对应的业务域 https://blog.csdn.net/lushizhuo9655/article/details/109033855

第一步:创建四个tomcat实例。每个tomcat运行在不同的端口。8180、8280、8380、8480

cd /root

cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat01

cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat02

cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat03

cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat04

cd /usr/local/solr-cloud/

ll

第二步:部署solr的war包。把单机版的solr工程复制到集群中的tomcat中。(记得每个tomcat的端口要记得修改 每个tomcat改三个端口)

cp -r ../solr/tomcat/webapps/solr/ tomcat01/webapps/

cp -r ../solr/tomcat/webapps/solr/ tomcat02/webapps/

cp -r ../solr/tomcat/webapps/solr/ tomcat03/webapps/

cp -r ../solr/tomcat/webapps/solr/ tomcat04/webapps/

vim tomcat01/conf/server.xml

vim tomcat02/conf/server.xml

vim tomcat03/conf/server.xml

vim tomcat04/conf/server.xml

86b750e7a990e3bbd1b8949d35250e7a.png

c89cebaae5e21b083c6a8008d3465796.png

第三步:为每个solr实例创建一个对应的solrhome。使用单机版的solrhome复制四份。

cp -r ../solr/solrhome/ solrhome01

cp -r ../solr/solrhome/ solrhome02

cp -r ../solr/solrhome/ solrhome03

cp -r ../solr/solrhome/ solrhome04

第四步:需要修改solr的web.xml文件。把solrhome关联起来。

vim tomcat01/webapps/solr/WEB-INF/web.xml

vim tomcat02/webapps/solr/WEB-INF/web.xml

vim tomcat03/webapps/solr/WEB-INF/web.xml

vim tomcat04/webapps/solr/WEB-INF/web.xml

改成对应的02 03 04

第五步:配置solrCloud相关的配置。每个solrhome下都有一个solr.xml,把其中的ip及端口号配置好。

vim solrhome01/solr.xml

vim solrhome02/solr.xml

vim solrhome03/solr.xml

vim solrhome04/solr.xml

a950b377fca3e019b4eda8c60f5af42e.png

851cc101c909f5ff0abb9a247787d2db.png

b122ff6e28a949d4439cf3fa3ec9b429.png

b3a1643c04fdb586f9fe43574881b6c4.png

第六步:修改tomcat/bin目录下的catalina.sh 文件,关联solr和zookeeper。

cd tomcat01/bin/

ll

vim catalina.sh

把此配置添加到配置文件中:

JAVA_OPTS="-DzkHost=192.168.0.245:2181,192.168.0.245:2182,192.168.0.245:2183"

2eafa7dc82d8a06093a11c07c1bea313.png

cd ..

cd ..

vim tomcat02/bin/catalina.sh

vim tomcat03/bin/catalina.sh

vim tomcat04/bin/catalina.sh

配置文件都加上那一句配置的代码

第七步:让zookeeper统一管理配置文件。需要把solrhome/collection1/conf目录上传到zookeeper。上传任意solrhome中的配置文件即可。

cd solrhome01

ll

cd collection1/conf

使用工具上传配置文件:/root/solr-4.10.3/example/scripts/cloud-scripts/zkcli.sh

cd /root/solr-4.10.3/example/scripts/cloud-scripts/

配置文件的文件夹上传到zookeeper

./zkcli.sh -zkhost 192.168.0.245:2181,192.168.0.245:2182,192.168.0.245:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf

查看zookeeper上的配置文件:

使用zookeeper目录下的bin/zkCli.sh命令查看zookeeper上的配置文件:

./zkCli.sh

71633531981d4b9220cd56fe97bd6ca3.png

退出:

quit

98a48b35bac2d7630690c675ccdadca3.png

使用以下命令连接指定的zookeeper服务:

./zkCli.sh -server 192.168.0.245:2183

700a6786152c0fe9b9795e0636e63a08.png

1fab043931a4eb0f27ea653928b3c0eb.png

此时表明,配置文件已经上传到zookeeper上了

f862229e84ad023a50df9ac599480f80.png

第八步:启动每个tomcat实例。要包装zookeeper集群是启动状态。

cd ..

cd ..

ll

vim start-tomcat-all.sh

/usr/local/solr-cloud/tomcat01/bin/startup.sh

/usr/local/solr-cloud/tomcat02/bin/startup.sh

/usr/local/solr-cloud/tomcat03/bin/startup.sh

/usr/local/solr-cloud/tomcat04/bin/startup.sh

chmod u+x start-tomcat-all.sh

./start-tomcat-all.sh

看是否起来了

tail -f /usr/local/solr-cloud/tomcat01/logs/catalina.out

tail -f /usr/local/solr-cloud/tomcat02/logs/catalina.out

tail -f /usr/local/solr-cloud/tomcat03/logs/catalina.out

tail -f /usr/local/solr-cloud/tomcat04/logs/catalina.out

第九步:访问集群 http://192.168.0.245:8180/solr 发现比单机的多了个cloud

b05bc83204a8bec3c774cc79ff1dc491.png

第十步:创建新的Collection进行分片处理。 直接在浏览器

http://192.168.0.245:8180/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2

92a12e53b727281738753e49d5cdf1f8.png

08103507ef62c265f153a68582dcf7d8.png

第十一步:删除不用的Collection。

http://192.168.0.245:8180/solr/admin/collections?action=DELETE&name=collection1

c1b91a9ad29a256702cd4196136aedfe.png

d6aa259939f9effa1433002e1c4f438a.png

到此这篇关于在Linux上搭建Solr集群的方法的文章就介绍到这了,更多相关Linux搭建Solr集群内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值