SolrCloud集群的搭建-熟练linux命令的搭建两个小时即可完成

SolrCloud搭建:

本教程的这套安装是单机版的安装,所以采用伪集群的方式进行安装,如果是真正的生成环境,将伪集群的ip改下就可以了,步骤是一样的。

环境准备:

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

zookeeper集群安装:

第一步:解压zookeeper,tar -zxvf zookeeper-3.4.6.tar.gz将zookeeper-3.4.6拷贝到/usr/local/solrcloud下,复制三份分别并将目录名改为zookeeper1、zookeeper2、zookeeper3。
相关命令:
解压:tar -zxvf zookeeper-3.4.6.tar.gz
复制:

cp -r zookeeper-3.4.6 /usr/local/solrcloud/zookeeper1
cp -r zookeeper-3.4.6 /usr/local/solrcloud/zookeeper2
cp -r zookeeper-3.4.6 /usr/local/solrcloud/zookeeper3

第二步:进入zookeeper1文件夹,创建data目录。并在data目录中创建一个myid文件内容为“1”(echo 1 >> data/myid)。
相关命令
创建data目录:mkdir data
在data目录下:echo 1 >> data/myid

第三步:进入conf文件夹,把zoo_sample.cfg改名为zoo.cfg
相关命令
在conf目录下:mv zoo_sample.cfg zoo.cfg

第四步:修改zoo.cfg。
修改:

dataDir=/usr/local/solrcloud/zookeeper1/data
clientPort=2181(zookeeper2中为2182、zookeeper3中为2183)

演示:
在这里插入图片描述
添加:

server.1=192.168.25.150:2881:3881
server.2=192.168.25.150:2882:3882
server.3=192.168.25.150:2883:3883

在这里插入图片描述
第五步:对zookeeper2、3中的设置做第二步至第四步修改。

zookeeper2:
myid内容为2
dataDir=/usr/local/solrcloud/zookeeper2/data
clientPort=2182
Zookeeper3:
的myid内容为3
dataDir=/usr/local/solrcloud/zookeeper3/data
clientPort=2183

第六步:启动三个zookeeper
可制作一个脚本一起启动:
solrcloud目录下:vim start-zoo-all.sh

/usr/local/solrcloud/zookeeper1/bin/zkServer.sh start
/usr/local/solrcloud/zookeeper2/bin/zkServer.sh start
/usr/local/solrcloud/zookeeper3/bin/zkServer.sh start

保存,执行命令:chmod u+x start-zoo-all.sh
启动脚本:./start-zoo-all.sh

查看集群状态(同理制作一个查看的脚本,这里就不做了):

/usr/local/solrcloud/zookeeper1/bin/zkServer.sh status
/usr/local/solrcloud/zookeeper2/bin/zkServer.sh status
/usr/local/solrcloud/zookeeper3/bin/zkServer.sh status

第七步:开启zookeeper用到的端口,或者直接
关闭防火墙:service iptables stop
永久管理防火墙:chkconf iptables off

tomcat安装

第一步:将apache-tomcat-7.0.47.tar.gz解压

tar -zxvf apache-tomcat-7.0.47.tar.gz

第二步:把解压后的tomcat复制到/usr/local/solrcloud/目录下复制四份。
在tomcat解压缩后所在目录:

 cp -r apache-tomcat-7.0.47 /usr/local/solrcloud/tomcat1
 cp -r apache-tomcat-7.0.47 /usr/local/solrcloud/tomcat2
 cp -r apache-tomcat-7.0.47 /usr/local/solrcloud/tomcat3
 cp -r apache-tomcat-7.0.47 /usr/local/solrcloud/tomcat4

第三步:修改tomcat的server.xml把其中的端口后都加一。保证两个tomcat可以正常运行不发生端口冲突。
在solrcloud目录下:vim tomcat1/conf/server.xml
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

solr单机部署

第一步:创建四个tomcat实例。每个tomcat运行在不同的端口。8180、8280、8380、8480。这个在tomcat部署已经搭建完成
第二步:部署solr的war包(solr服务器搭建)。把单机版的solr工程复制到集群中的tomcat中。

cp -r /usr/local/solr/tomcat/webapps/solr /usr/local/solrcloud/tomcat1/webapps

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

 cp -r /usr/local/solr/solrhome /usr/local/solrcloud/solrhome1
 cp -r /usr/local/solr/solrhome /usr/local/solrcloud/solrhome2
 cp -r /usr/local/solr/solrhome /usr/local/solrcloud/solrhome3
 cp -r /usr/local/solr/solrhome /usr/local/solrcloud/solrhome4

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

 cd /usr/local/solrcloud/tomcat1/webapps/solr/WEB-INF
 vim web.xml
 修改:
 <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/usr/local/solrcloud/solrhome1</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
  </env-entry>

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

vim /usr/local/solrcloud/solrhome1/solr.xml

 <solrcloud>
    <str name="host">192.168.25.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>

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

 cd /solr-4.10.3/example/scripts/cloud-scripts
 
 ./zkcli.sh -zkhost 192.168.25.129:2181,192.168.25.129:2182,192.168.25.129:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf
查看zookeeper上的配置文件:
使用zookeeper目录下的bin/zkCli.sh命令查看zookeeper上的配置文件:
[root@localhost bin]# ./zkCli.sh 
[zk: localhost:2181(CONNECTED) 0] ls /
[configs, zookeeper]
[zk: localhost:2181(CONNECTED) 1] ls /configs
[myconf]
[zk: localhost:2181(CONNECTED) 2] ls /configs/myconf
[admin-extra.menu-top.html, currency.xml, protwords.txt, mapping-FoldToASCII.txt, _schema_analysis_synonyms_english.json, _rest_managed.json, solrconfig.xml, _schema_analysis_stopwords_english.json, stopwords.txt, lang, spellings.txt, mapping-ISOLatin1Accent.txt, admin-extra.html, xslt, synonyms.txt, scripts.conf, update-script.js, velocity, elevate.xml, admin-extra.menu-bottom.html, clustering, schema.xml]
[zk: localhost:2181(CONNECTED) 3] 
退出:
[zk: localhost:2181(CONNECTED) 3] quit

第七步:修改tomcat/bin目录下的catalina.sh 文件,关联solr和zookeeper。
把此配置添加到配置文件中:

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

第八步:启动每个tomcat实例。要包装zookeeper集群是启动状态。
直接启动solrcloud目录下的脚本:
./start-tomcat=all.sh
第九步:访问集群http://192.168.25.129:8180/solr

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

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

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

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

启动solrCloud注意
启动solrCloud需要先启动solrCloud依赖的所有zookeeper服务器,再启动每台solr服务器。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值