码迷,mamicode.com
首页 > 其他好文 > 详细

solr集群环境搭建

时间:2017-09-27 14:52:33      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:cell   安装   复制   安装包   java_opts   src   bin   重复   tom   

Solr集群环境搭建

 集群所需安装包

1. 在本地电脑的将以下安装包上传到共享目录中。

 solr-4.10.3.tgz.tgz和apache-tomcat-7.0.47.tar.gz 、jdk、zookeeper

1). 将共享目录下的zookeeper-3.4.6.tar.gz上传到        /usr/local/taotao_shop/solr_cloud

2). solr-4.10.3.tgz.tgz和apache-tomcat-7.0.47.tar.gz就不用了,直接使用上次我们搭建sorl单机版的tomcat就可以(上篇随笔)。

拷贝如下:

 技术分享

 

2. 首先搭建zookeeper集群

1). 将zookeeper压缩包解压,并将解压后的文件夹更名为zookeeper01,然后将zookeeper01该复制为两份,分为zookeeper02、zookeeper03

 技术分享

 

2). 在每个zookeeper目录下创建一个data目录

 技术分享

 

3). 并每个zookeeper在data目录下创建一个myid文件,文件名就叫做“myid”。内容就是每个实例的id。例如1、2、3

 

 技术分享

 

4). 修改每个zookeeper配置文件。把conf目录下的zoo_sample.cfg文件改名为zoo.cfg。

 技术分享

5). 并修改zoo.cfg文件内容。修改内容如下

(1). 修改每个zoo.cfg下面的dataDir,该值指向每个zookeeper的data目录

(2). 修改每个zoo.cfg下面的clientPort。注意端口不能重复,端口修改为 zookeeper01对应2182、zookeeper02对应2183、zookeeper03对应2184

(3). 在每个zookeeper的conf目录下的zoo.cfg末尾添加如下内容

server.1=192.168.25.128:2881:3881

server.2=192.168.25.128:2882:3882

server.3=192.168.25.128:2883:3883

解释:server.1、server.2、server.3分别代表zookeeper的集群列表,1、2、3分别表示zookeeperj节点的id。而ip(192.168.25.128)后面的端口表示zookeeper集群节点之间的通信端口,千万不要和上面我们修改的clientPort端口重复。然后最后的一个端口是zookeeper的选举端口,也不能重复。

操作如下:

修改zookeeper01/conf/zoo.conf

 技术分享

 

 

修改zookeeper02/conf/zoo.conf

 技术分享

 

 

修改zookeeper03/conf/zoo.conf

 技术分享

 

 

6). 启动每个zookeeper。可以执行每个zookeeper的bin目录下的zkServer.sh start。不过单独启动貌似有问题。这里我们编写一个批      处理文件来一次开启所有的zookeeper。

在/usr/local/taotao_shop/solr_cloud下创建zookeeper_all.sh,并将以下内容写入文件

cd /usr/local/taotao_shop/solr_cloud/zookeeper01/bin

./zkServer.sh start

cd /usr/local/taotao_shop/solr_cloud/zookeeper02/bin

./zkServer.sh start

cd /usr/local/taotao_shop/solr_cloud/zookeeper03/bin

./zkServer.sh start

技术分享

修改zookeeper_all.sh的执行权限

 技术分享

可以在每个zookeeper的bin目录下使用./zkServer.sh status查看状态

开启zookeeper集群如下:

 技术分享

这里我们也可以创建一个zookeeper_stop.sh的批处理文件来关闭所有zookeeper。

cd /usr/local/taotao_shop/solr_cloud/zookeeper01/bin

./zkServer.sh stop

cd /usr/local/taotao_shop/solr_cloud/zookeeper02/bin

./zkServer.sh stop

cd /usr/local/taotao_shop/solr_cloud/zookeeper03/bin

./zkServer.sh stop

 技术分享

3. 搭建Solr集群

Solr的运行需要tomcat环境,所以我们直接将单机版的solr运行环境拷贝至集群环境        中即可,而且单机版的tomcat已经拷贝了solr.war。我们只需要修改一些配置文件就可    以了。单机版的solr参见《06.Solr单机安装并设置开机启动.docx》

1). 创建四个tomcat实例。

(1) 将/usr/local/taotao_shop/solr下面的tomcat_solr拷贝到/usr/local/taotao_shop/solr_cloud下面。

 技术分享

(2) 将/usr/local/taotao_shop/solr_cloud下面的tomcat_solr更名为tomcat8180。并将tomcat8180拷贝三份分别为tomcat8280、tomcat8380、tomcat8480

 技术分享

(3) 修改四个tomcat的端口。每个端口号和tomcat的文件名中数字对应。修改如下

修改tomcat8180的conf目录下的server.xml

 技术分享

技术分享

 

 技术分享

技术分享

 

tomcat8280的conf目录下的server.xml

修改的端口就是:8205   8280    8209

tomcat8380的conf目录下的server.xml

修改的端口就是:8305   8380    8309

tomcat8480的conf目录下的server.xml

修改的端口就是:8405   8480    8409

2). 为每个tomcat下的solr关联solrhome。将solr安装目录下/example/solr的所有文件     拷贝到的集群目录。更名为solrhome8180

 技术分享

 

3). 将solrhome8180拷贝三份。分别为solrhome8280、solrhome8380、solrhome8480

 技术分享

 

4). 修改每个tomcat的webapps/solr/WEB-INF下面的web.xml配置。关联solr和         solrhome。

(1) 修改tomcat8180下关联solrhome8180

 技术分享

技术分享

 

(2) 修改tomcat8280下关联solrhome8280

 技术分享

 

 技术分享

 

(3) 修改tomcat8380和tomcat8480关联solrhome同理。

5). 配置solrCloud相关的配置。修改每一个solrhome下面solr.xml配置文件,将ip地       址和对应的tomcat端口进行配置

(1) 修改solrhome8180的solr.xml配置

 技术分享

 

 技术分享

 

(2) 修改solrhome8280的solr.xml配置

 技术分享

技术分享

 

 

(3) 对于修改solrhome8380和solrhome8480参照上面。

4. zookeeper统一管理solr

现在zookeeper集群和solr集群已经搭建完成,那么如何搭建solrcloud环境呢,那么        就需要让zookeeper来管理solr的配置文件。

1). 使用solr-4.10.3/example/scripts/cloud-scripts/zkcli.sh这个上传工具将集群下任一        solrhome的collection1/conf上传到zookeeper集群

技术分享

使用以上工具进行上传,输入如下命令即可(如果报错,可以尝试多执行几次)。

注意:./zkcli.sh命令之前要开启zookeeper集群。也就是先执行之前编写的批处理                 zookeeper_all.sh

./zkcli.sh -zkhost 192.168.25.128:2182,192.168.25.128:2183,192.168.25.128:2184 -cmd upconfig -confdir /usr/local/taotao_shop/solr_cloud/solrhome8180/collection1/conf  -confname myconf

 技术分享

 

2). 查看zookeeper配置文件,确定zookeeper是否管理solr了。

进入zookeeper0*任意目录,这里我们进入zookeeper01的bin目录。使用bin目录下面  的zkCli.sh来查看zookeeper集群所管理的配置。

在bin目录下执行:./zkCli.sh -server 192.168.25.128:2182

 技术分享

技术分享

 

 

5. tomcat运行时关联solrzookeeper

修改每个tomcat(修改tomcat8180、tomcat8280、tomcat8380、tomcat8480)的bin目录 下的catalina.sh 文件,加入以下内容:

JAVA_OPTS="-DzkHost=192.168.25.128:2182,192.168.25.128:2183,192.168.25.128:2184"

 技术分享

 

 技术分享

注意JAVA_OPTS的位置,不要放最后哟

 技术分享

 

6. 启动所有的tomcat

(1) 启动tomcat8180、tomcat8280、tomcat8380、tomcat8480。这里我们编写批处理    文件来启动。创建tomcat_all.sh,内容如下:

cd /usr/local/taotao_shop/solr_cloud/tomcat8180/bin

./startup.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8280/bin

./startup.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8380/bin

./startup.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8480/bin

./startup.sh

 技术分享

 

(2) 修改文件的执行权限

 技术分享

 

 

(3) 编写关闭所有tomcat的批处理文件。创建tomcat_shop.sh。内容如下:

cd /usr/local/taotao_shop/solr_cloud/tomcat8180/bin

./shutdown.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8280/bin

./shutdown.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8380/bin

./shutdown.sh

cd /usr/local/taotao_shop/solr_cloud/tomcat8480/bin

./shutdown.sh

 技术分享

 

(4) 修改关闭批处理文件的执行权限

 技术分享

 

7. 测试。

(1) 执行批处理文件启动所有tomcat

 技术分享

 

 

(2) 在本地浏览器访问http://192.168.25.128:8180/solr

 技术分享

 

(3) 创建新的Collection进行分片处理

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

 

 

技术分享

 

 技术分享

 

(4) 删除不用的collection

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

技术分享

技术分享

 

 

 

 

 

solr集群环境搭建

标签:cell   安装   复制   安装包   java_opts   src   bin   重复   tom   

原文地址:http://www.cnblogs.com/lucia557/p/7601562.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!