linux中solr集群的搭建

本文详细介绍了如何在Linux环境下搭建Zookeeper集群,并进一步构建Solr集群的过程。包括Zookeeper集群配置、Tomcat端口修改、Solr配置关联等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux系统中
先搭建zookeeper集群
zookeeper下载:https://download.youkuaiyun.com/download/ly_linyuan/10377506
solr下载:https://download.youkuaiyun.com/download/ly_linyuan/10373271

1.上传zookeeper-3.4.6到linux服务器中并解压

2.复制为三份:
新建一个solr-cloud文件,复制到该目录下
cp -r zookeeper-3.4.6 /usr/local/solr-cloud/zookeeper01
cp -r zookeeper-3.4.6 /usr/local/solr-cloud/zookeeper02
cp -r zookeeper-3.4.6 /usr/local/solr-cloud/zookeeper03
这里写图片描述

3.进入solr-cloud目录:cd /usr/local/solr-cloud/
再进入第一个节点目录中:cd zookeeper01

4.创建data文件:mkdir data
进入data目录下:cd data
创建新文件myid:touch myid

5.编辑myid:vim myid
添加:1 保存并退出
后面分别添加2,3
这里写图片描述
6.进入zookeeper01的conf目录下,将zoo_sample.cfg改名为zoo.cfg
mv zoo_sample.cfg zoo.cfg
这里写图片描述
7.编辑zoo.cfg: vim zoo.cfg
(1)将dataDir=/root/zookeeper-3.4.6/data改为我们的实际目录
dataDir=/usr/local/solr-cloud/zookeeper01/data/
(2)配置集群中每一个节点的ip地址和端口号
server.1=192.168.64.129:2881:3881
server.2=192.168.64.129:2882:3882
server.3=192.168.64.129:2883:3883
注意:2881:zookeeper之间内部通信端口,3881:选举端口,不能和客户端访问的端口号一样即可
(3)clientPort=2181 客户端访问的端口号需要改,三个节点不能一样
这里第一个不改,改变其他两个节点分别为2882,2883
这里写图片描述
8.重复步骤3-7,配置其他两个节点(注意更改端口号)

9.写一个批处理启动所有节点
在solr-cloud目录下:vim start-zookeeper.sh
cd zookeeper01/bin
./zkServer.sh start
cd ../../
cd zookeeper02/bin
./zkServer.sh start
cd ../../
cd zookeeper03/bin
./zkServer.sh start
cd ../../
这里写图片描述

10.授权可执行:chmod u+x start-zookeeper.sh
启动:./start-zookeeper.sh
查看状态:cd zookeeper01/bin
./zkServer.sh status
这里写图片描述

solr集群的搭建
解压tomcat至solr-cloud目录中
tar zxf apache-tomcat-7.0.47.tar.gz -C /usr/local/solr-cloud/
进入solr-cloud目录再复制三份tomcat
cp -r tomcat01 tomcat02
这里写图片描述

2.修改每个tomcat的端口号
进入solr-cloud目录:cd /usr/local/solr-cloud
vim tomcat01/conf/server.xml
这里改为8180,8280,8380进行测试

3.将之前配置好单机版的solr复制过来
参考:https://blog.youkuaiyun.com/ly_linyuan/article/details/80101218
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

4.将单机版的solrhome也复制过来
cp -r ../solr/solrhome/ slorhome01
cp -r ../solr/solrhome/ slorhome02
cp -r ../solr/solrhome/ slorhome03
cp -r ../solr/solrhome/ slorhome04
这里写图片描述
5.依次修改四个solrhome的配置(进入solrhome01目录下编辑solr.xml)
vim solr.xml
节点信息

<solrcloud>
<str name="host">${host:}</str>
<int name="hostPort">${jetty.port:8983}</int>
<str name="hostContext">${hostContext:solr}</str>
<int name="zkClientTimeout">${zkClientTimeout:30000}</int>
<bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
</solrcloud>

修改为

<solrcloud>
<str name="host">192.168.64.129</str>
<int name="hostPort">8180</int>
<str name="hostContext">${hostContext:solr}</str>
<int name="zkClientTimeout">${zkClientTimeout:30000}</int>
<bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
</solrcloud>

6.更改tomcat中solr下的web.xml(将solrhome,solr与tomcat关联)
vim tomcat01/webapps/solr/WEB-INF/web.xml

<env-entry>
 <env-entry-name>solr/home</env-entry-name>
 <env-entry-value>/usr/local/solr/solrhome</env-entry-value>
 <env-entry-type>java.lang.String</env-entry-type>
</env-entry>

改为:

<env-entry>
 <env-entry-name>solr/home</env-entry-name>
 <env-entry-value>/usr/local/solr-cloud/solrhome01</env-entry-value>
 <env-entry-type>java.lang.String</env-entry-type>
</env-entry>

7.tomcat,solr和zookeeper关联关系配置
cd tomcat01/bin
vim catalina.sh
在下面语句下一行加入
#JAVA_OPTS=”$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=umask“(下一行加入)
JAVA_OPTS=”-DzkHost=192.168.64.129:2181,192.168.64.129:2182,192.168.64.129:2183”
这里写图片描述
8.将配置文件上传到zookeeper
ll solrhome01/collection1/conf/(随便找的)
需要使用工具
进入solr-4.10.3下的example下的scripts下的cloud-scripts的下面有一个zkcli.sh文件
命令:./zkcli.sh -zkhost 192.168.64.129:2181,192.168.64.129:2182,192.168.64.129:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf/ -confname myconf
这里写图片描述
进入zookeeper的bin目录下执行连接zookeeper:./zkCli.sh
./zkCli.sh -server 192.168.64.129:2182(连接zookeeper的2182端口命令)
quit退出
这里写图片描述

9.编写一个批处理启动tomcat,
vim start-tomcat.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 +x start-tomcat.sh
启动:./start-tomcat.sh
查看启动日志:
1、先切换到:cd /usr/system/apache-tomcat-7.0.62/logs
2、 tail -f catalina.out
效果图:
这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值