您的位置:首页 > 编程语言 > Java开发

Java solrCloud全文搜索服务器集群的搭建

2018-01-04 15:28 477 查看
solrCloud伪集群搭建手记 (在同一虚拟机上模拟集群环境)

一 环境
-系统/Linux-CentOS64位-版本6.5-桌面版
-虚拟机配置/1个CPU-4个核心-4G内存分配-20G硬盘-网络NAT模式
-jdk_7u55_64位
-tomcat_7.0.47
(4)
-zookeeper_3.4.6
(3)
-solr_4.10.3 (4) (分别发布到4个tomcat中)
-IKAnalyzer2012FF_hf1
(IK分词器)

二 具体操作
1,关闭防火墙 service iptables stop
2,永久生效 chkconfig iptables off
3,安装上传文件指令依赖 yum -y install lrzsz
4,上传文件 在~目录下
-创建文件夹 mkdir temp
-进入文件夹 cd temp
-上传文件 rz
-jdk-7u55-linux-x64.tar.gz
-apache-tomcat-7.0.47.tar.gz
-zookeeper-3.4.6.tar.gz
-solr-4.10.3.tgz.tgz
-IKAnalyzer2012FF_hf1

5,安装jdk
-查看openJdk rpm -qa|grep java
-卸载openJdk 
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
   rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
-解压jdk安装包 tar -zxvf jdk-7u55-linux-x64.tar.gz
-创建jdk路径链接 ln -s /root/temp/jdk1.7.0_55/ /jdk
-配置环境变量 vim /etc/profile
-添加配置 
export JAVA_HOME=/jdk
export PATH=$PATH:$JAVA_HOME/bin
-配置生效 source /etc/profile
-查看jdk版本 java -version

6,搭建zookeeper集群(复制三份)
-解压缩 tar -zxvf zookeeper-3.4.6.tar.gz
-创建集群安装目录 mkdir /usr/local/solr-cloud
-将zookeeper移动到集群目录 mv /root/temp/zookeeper-3.4.6 /usr/local/solr-cloud/zookeeper01
-进入zookeeper01 cd /usr/local/solr-cloud/zookeeper01
-创建data文件夹和myid文件
mkdir data
cd data
vi myid 编辑内容1作为zookeeper01实例的id
-修改配置文件
cd /usr/local/solr-cloud/zookeeper01/conf
mv zoo_sample.cfg ./zoo.cfg
vi zoo.cfg
编辑内容
dataDir=/usr/local/solr-cloud/zookeeper01/data
clientPort=2181
配置文件末尾加上
server.1=192.168.25.134:2881:3881
server.2=192.168.25.134:2882:3882
server.3=192.168.25.134:2883:3883
-复制zookeeper
cd /usr/local/solr-cloud
cp -r zookeeper01/ zookeeper02
cp -r zookeeper01/ zookeeper03
-修改各自配置
-zookeeper02
修改./data/myid文件内容
2
修改./conf/zoo.cfg文件内容
dataDir=/usr/local/solr-cloud/zookeeper02/data
clientPort=2182
-zookeeper03
修改./data/myid文件内容
3
修改./conf/zoo.cfg文件内容
dataDir=/usr/local/solr-cloud/zookeeper03/data
clientPort=2183
-创建启动批处理文件
cd /usr/local/solr-cloud
vi start-all-zookeeper.sh
文件内容
/usr/local/solr-cloud/zookeeper01/bin/zkServer.sh start
/usr/local/solr-cloud/zookeeper02/bin/zkServer.sh start
/usr/local/solr-cloud/zookeeper03/bin/zkServer.sh start
开启权限 chmod u+x start-all-zookeeprt.sh
-启动,查看状态
/usr/local/solr-cloud/start-all-zookeeprt.sh
/usr/local/solr-cloud/zookeeper01/bin/zkServer.sh status
/usr/local/solr-cloud/zookeeper02/bin/zkServer.sh status
/usr/local/solr-cloud/zookeeper03/bin/zkServer.sh status

7,搭建solr集群
(1)发布单个solr服务
-进入压缩包坐在目录 cd /root/temp
-解压tomcat 
tar -zxvf apache-tomcat-7.0.47.tar.gz
-解压solr 
tar -zxvf solr-4.10.3.tgz.tgz
-复制solr的war包到tomcat
cp /root/temp/solr-4.10.3/distsolr-4.10.3.war /root/temp/apache-tomcat-7.0.47/webapps/solr.war
-启动tomcat解压缩war包
/root/temp/apache-tomcat-7.0.47/startup.sh
-关闭tomcat /root/temp/apache-tomcat-7.0.47/shutdown.sh
-修改solr配置
cp /root/temp/solr-4.10.3/example/lib/ext/* /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/lib/
cp /root/temp/IKAnalyzer2012FF_hf1/IKAnalyzer2012FF_u1.jar /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/lib/
cd /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/
mkdir classes
cp /root/temp/IKAnalyzer2012FF_hf1/ext_stopword.dic /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/classes
cp /root/temp/IKAnalyzer2012FF_hf1/IKAnalyzer.cfg.xml /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/classes
cp /root/temp/IKAnalyzer2012FF_hf1/mydict.dic /root/temp/apache-tomcat-7.0.47/webapps/solr/WEB-INF/classes
-移除war包
cd /root/temp/solr-4.10.3/distsolr-4.10.3.war /root/temp/apache-tomcat-7.0.47/webapps
mv solr.war

(2)搭建集群

cp /root/temp/apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat01
cp /root/temp/apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat02
cp /root/temp/apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat03
cp /root/temp/apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat04

cp /root/temp/solr-4.10.3/example/solr /usr/local/solr-cloud/solrhome01
cp /root/temp/solr-4.10.3/example/solr /usr/local/solr-cloud/solrhome02
cp /root/temp/solr-4.10.3/example/solr /usr/local/solr-cloud/solrhome03
cp /root/temp/solr-4.10.3/example/solr /usr/local/solr-cloud/solrhome04

(3)修改配置
(a) tomcat01和solrhome01
vi /usr/local/solr-cloud/tomcat01/webapps/solr/WEB-INF/web.xml
编辑内容
<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>
vi /usr/local/solr-cloud/tomcat01/conf/server.xml
修改端口 
启动端口 8180
关闭端口 8105
AJP 1.3连接端口 8109
vi /usr/local/solr-cloud/tomcat01/bin/catalina.sh
编辑内容(注意位置)
JAVA_OPTS="-DzkHost=192.168.25.134:2181,192.168.25.134:2182,192.168.25.134:2183"
vi /usr/local/solr-cloud/solrhome01/solr.xml
编辑内容
<solrcloud>
   <str name="host">192.168.25.134</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>

(b) tomcat02和solrhome02
vi /usr/local/solr-cloud/tomcat02/webapps/solr/WEB-INF/web.xml
编辑内容
<env-entry>
      <env-entry-name>solr/home</env-entry-name>
      <env-entry-value>/usr/local/solr-cloud/solrhome02/</env-entry-value>
      <env-entry-type>java.lang.String</env-entry-type>
   </env-entry>
vi /usr/local/solr-cloud/tomcat02/conf/server.xml
修改端口 
启动端口 8280
关闭端口 8205
AJP 1.3连接端口 8209
vi /usr/local/solr-cloud/tomcat02/bin/catalina.sh
编辑内容(注意位置)
JAVA_OPTS="-DzkHost=192.168.25.134:2181,192.168.25.134:2182,192.168.25.134:2183"
vi /usr/local/solr-cloud/solrhome02/solr.xml
编辑内容
<solrcloud>
   <str name="host">192.168.25.134</str>
   <int name="hostPort">8280</int>
   <str name="hostContext">${hostContext:solr}</str>
   <int name="zkClientTimeout">${zkClientTimeout:30000}</int>
   <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
 </solrcloud>

(c) tomcat03和solrhome03
vi /usr/local/solr-cloud/tomcat03/webapps/solr/WEB-INF/web.xml
编辑内容
<env-entry>
      <env-entry-name>solr/home</env-entry-name>
      <env-entry-value>/usr/local/solr-cloud/solrhome03/</env-entry-value>
      <env-entry-type>java.lang.String</env-entry-type>
   </env-entry>
vi /usr/local/solr-cloud/tomcat03/conf/server.xml
修改端口 
启动端口 8380
关闭端口 8305
AJP 1.3连接端口 8309
vi /usr/local/solr-cloud/tomcat03/bin/catalina.sh
编辑内容(注意位置)
JAVA_OPTS="-DzkHost=192.168.25.134:2181,192.168.25.134:2182,192.168.25.134:2183"
vi /usr/local/solr-cloud/solrhome03/solr.xml
编辑内容
<solrcloud>
   <str name="host">192.168.25.134</str>
   <int name="hostPort">8380</int>
   <str name="hostContext">${hostContext:solr}</str>
   <int name="zkClientTimeout">${zkClientTimeout:30000}</int>
   <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
 </solrcloud>

(d) tomcat04和solrhome04
vi /usr/local/solr-cloud/tomcat04/webapps/solr/WEB-INF/web.xml
编辑内容
<env-entry>
      <env-entry-name>solr/home</env-entry-name>
      <env-entry-value>/usr/local/solr-cloud/solrhome04/</env-entry-value>
      <env-entry-type>java.lang.String</env-entry-type>
   </env-entry>
vi /usr/local/solr-cloud/tomcat04/conf/server.xml
修改端口 
启动端口 8480
关闭端口 8405
AJP 1.3连接端口 8409
vi /usr/local/solr-cloud/tomcat04/bin/catalina.sh
编辑内容(注意位置)
JAVA_OPTS="-DzkHost=192.168.25.134:2181,192.168.25.134:2182,192.168.25.134:2183"
vi /usr/local/solr-cloud/solrhome04/solr.xml
编辑内容
<solrcloud>
   <str name="host">192.168.25.134</str>
   <int name="hostPort">8480</int>
   <str name="hostContext">${hostContext:solr}</str>
   <int name="zkClientTimeout">${zkClientTimeout:30000}</int>
   <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
 </solrcloud>
(4)zookeeper统一管理solr配置
-进入zkcli.sh所在目录
cd /root/temp/solr-4.10.3/example/scripts/cloud-scripts
-执行zkcli.sh上传配置
./zkcli.sh -zkhost 192.168.25.134:2181,192.168.25.134:2182,192.168.25.134:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf
(5)创建tomcat启动批处理文件
-进入目录
cd /usr/local/solr-cloud
-创建文件
vi start-all-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 u+x start-all-tomcat.sh
-启动tomcat
/usr/local/solr-cloud/start-all-tomcat.sh
(6)待所有tomcat启动完成后在浏览器访问 http://192.168.25.134:8180/solr/ (7)创建新的collection2并分片处理 http://192.168.25.134:8180/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2 (8)删除原有collection1 http://192.168.25.134:8180/solr/admin/collections?action=DELETE&name=collection1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: