52037317 发表于 2017-12-20 11:05:38

三、SolrCloud的搭建

  本次安装是单台虚拟机安装,所以采用伪集群的方式进行安装,如果是真正的生产环境,将伪集群的ip改下就可以了,步骤是一样的。
  SolrCloud结构图如下:


环境准备:
  CentOS-6.4-i386-bin-DVD1.iso
  jdk-7u72-linux-i586.tar.gz
  apache-tomcat-7.0.47.tar.gz
  zookeeper-3.4.6.tar.gz
  solr-4.10.3.tgz

1.1. 环境安装
  概念了解:一、Solr的相关概念了解

1.1.1. CentOs 6.4安装
  略

1.1.2. jdk7安装
  略

1.2. zookeeper集群安装
  第一步:解压zookeeper
  

tar -zxvf zookeeper-3.4.6.tar.gz  

  第二步:在/usr/local/目录下创建一个solrcloud目录。把zookeeper解压后的文件夹复制到此目录下三份。分别命名为zookeeper1、2、3
  

# mkdir /usr/local/solrcloud  
[iyunv@bogon
~]# mv zookeeper-3.4.6 /usr/local/solrcloud/zookeeper1  
[iyunv@bogon
~]# cd /usr/local/solrcloud  
# ll
  
total
4  
drwxr
-xr-x. 10 1000 1000 4096 Feb 202014 zookeeper1  
# cp
-r zookeeper1/ zookeeper2  
# cp
-r zookeeper1/ zookeeper3  
#
  

  进入zookeeper1文件夹,创建data目录。并在data目录中创建一个myid文件内容为“1”(echo 1 >> data/myid)。
  第三步:配置zookeeper。
  1、在每个zookeeper文件夹下创建一个data目录。
  2、在data文件夹下创建一个文件名称为myid,文件的内容就是此zookeeper的编号1、2、3
  

# echo 1 >> myid  
# ll
  
total
4  
-rw-r--r--. 1 root root 2 Sep 17 23:43 myid
  
# cat myid
  
1
  

  在zookeeper2、3文件夹下分别创建data目录和myid文件,做法同上
  3、把zookeeper1下conf目录下的zoo_sample.cfg文件复制一份改名为zoo.cfg
  4、修改zoo.cfg的配置
  

修改:  
dataDir
=/usr/local/solrcloud/zookeeper1/data #创建的data目录全路径  
clientPort
=2181#客户端连接的端口(zookeeper2中为2182、zookeeper3中为2183)  
添加:
  
server.
1=192.168.25.154:2881:3881#集群中节点的信息,包括IP地址及投票选举的端口  
server.2=192.168.25.154:2882:3882
  
server.3=192.168.25.154:2883:3883
  

  在zookeeper2、3文件夹下分别做上述配置
  第四步:启动zookeeper。进入zookeeper1/bin目录下。
  启动zookeeper:./zkServer.sh start
  关闭:./zkServer.sh stop
  查看状态:./zkServer.sh status
  

# zookeeper1/bin/zkServer.sh status  
JMX enabled by
default  
Using config:
/usr/local/solrcloud/zookeeper1/bin/../conf/zoo.cfg  
Mode: follower
  
# zookeeper2
/bin/zkServer.sh status  
JMX enabled by
default  
Using config:
/usr/local/solrcloud/zookeeper2/bin/../conf/zoo.cfg  
Mode: leader
  
# zookeeper3
/bin/zkServer.sh status  
JMX enabled by
default  
Using config:
/usr/local/solrcloud/zookeeper3/bin/../conf/zoo.cfg  
Mode: follower
  
#
  

  注意:开启zookeeper用到的端口,或者直接关闭防火墙。
  

service iptables stop  


1.3 Solr实例的搭建
  注:此步详细步骤可参考:二、Solr单机版的搭建
  第一步:创建4个tomcat实例,修改其端口。8080-8083
  第二步:解压solr-4.10.3.tar.gz压缩包。从压缩包中复制solr.war到tomcat。
  第三步:启动tomcat解压war包。把solr-4.10.3目录下example目录下的关于日志相关的jar包添加到solr工程中。
  第四步:创建solrhome。修改web.xml指定solrhome的位置。

1.4 solr集群的搭建
  第一步:把solrhome中的配置文件上传到zookeeper集群。使用zookeeper的客户端上传。
  客户端命令位置:/root/solr-4.10.3/example/scripts/cloud-scripts
  

./zkcli.sh -zkhost 192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183 -cmd upconfig -confdir /usr/local/solrcloud/solrhome1/collection1/conf -confname myconf  

  注:-zkhost后跟zookeeper集群的IP地址+端口号,需要改为自己的地址。
  查看配置文件是否上传成功:
  

cd /usr/local/solrcloud/solrhome1/bin  

# ./zkCli.sh
  Connecting to localhost:2181
ls /

ls /configs

ls /configs/myconf


  第二步:修改solrhome1、2、3、4下的solr.xml文件,指定当前实例运行的ip地址及端口号。

  第三步:修改每一台solr的tomcat 的 bin目录下catalina.sh文件中加入DzkHost指定zookeeper服务器地址:
  JAVA_OPTS="-DzkHost=192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183"
  (可以使用vim的查找功能查找到JAVA_OPTS的定义的位置,然后添加)

  第四步:重新启动tomcat。
  访问任意一台solr,左侧菜单出现Cloud:

  一个主节点多个备份节点,集群只有一片。
  第五步:创建一个两片的collection,每片是一主一备。
  如果集群中有四个solr节点创建新集群collection2,将集群分为两片,每片两个副本。
  

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



  第六步:删除collection1.
  

http://192.168.25.154:8080/solr/admin/collections?action=DELETE&name=collection1  



1.5. 启动solrCloud注意
  启动solrCloud需要先启动solrCloud依赖的所有zookeeper服务器,再启动每台solr服务器。
  
页: [1]
查看完整版本: 三、SolrCloud的搭建