solrcloud6.1.0真机tomcat部署

solrcloud6.1.0真机tomcat部署

声明:
1. 部署环境为7台centos6.5虚拟机(其中三台为zookeeper,另外四台为solr)
2. 此文档所用软件均为目前最新版(低版本会不兼容),如下:
zookeeper3.4.8 solr6.1.0 tomcat8.0 jdk1.8
3. jdk1.8和tomcat8的安装不在此文档教程内,请自行百度完成
4. zookeeper集群的部署在另一博文zookeeper3.4.8伪集群的搭建中已有详细阐述,在此不再赘述。
5. 三台zookeeper的地址为:
zookeeper1:192.168.1.110:2181
zookeeper2:192.168.1.111:2181
Zookeeper3:192.168.1.112:2181
6. 四台solr的地址:
Solr1:192.168.1.113:8080(主:作用是上传一次配置文件到zookeeper,与其他三台的区别是catalina.sh的配置不同)
Solr2:192.168.1.114:8080
Solr3:192.168.1.115:8080
Solr4:192.168.1.116:8080
7. 思路:安装solrCloud非常的简单,就是先安装zookeeper然后安装solr 最后将zookeeper和tomcat进行关联就ok了。
现在开始安装
1. 首先在四台solr上分别安装solr单机版本,以192.168.1.113:8080为例;
a) 解压solr ,把 solr-6.1.0\server 下的solr-webapp 文件夹拷贝到tomcat 的webapps下,重命名为solr,也可以是其他名字;
solrcloud6.1.0真机tomcat部署_第1张图片
b) 拷贝solr-6.1.0\server\lib\ext 下的jar包到 tomcat\webapps\下solr 项目的WEB-INF\lib下;拷贝solr-6.1.0\dist 下solr-dataimporthandler jar 包,solr-dataimporthandler-extras-6.1.0.jar 包 到 tomcat\webapps\ 下solr 项目的WEB-INF\lib下
solrcloud6.1.0真机tomcat部署_第2张图片
c) 拷贝solr-6.1.0\server 下的solr到/home下,并重命名为solrhome
这里写图片描述
d) 修改tomcat\webapps\ solr(solr的项目名)\WEB-INF\web.xml, 找到如下代码,去掉注释,/put/your/solr/home/here 改为你自己的solrhome的路径,如:/home/solrhome

<env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/put/your/solr/home/here</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
</env-entry>

这里写图片描述
e) 拷贝solr-6.1.0\server\resources下的log4j.properties到tomcat\webapps\solr\WEB-INF\classes,如果WEB-INF下没有classes文件,那么就创建一个classes文件夹。
这里写图片描述
这里写图片描述
f) 启动tomcat,至此单机版搭建完成
solrcloud6.1.0真机tomcat部署_第3张图片
solrcloud6.1.0真机tomcat部署_第4张图片
2. 配置zookeeper和各个tomcat进行关联
修改solr的所在tomcat所在服务器,在${tomcat_home}/bin/目录下修改catalina.sh
在第一行添加:
tomcat1(192.168.1.113:8080):配置如下:

JAVA_OPTS="$JAVA_OPTS -DzkHost=192.168.1.110:2181,192.168.1.111:2181,192.168.1.112:2181 -Dbootstrap_confdir=/home/solrhome/configsets/basic_configs/conf -Dcollection.configName=myconf"

其他的三个tomcat(tomcat2,tomcat3,tomcat4)配置如下:
JAVA_OPTS="$JAVA_OPTS -DzkHost=192.168.1.110:2181,192.168.1.111:2181,192.168.1.112:2181"
3. 修改solr.xml下的中jetty的监听端口:

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

默认是8983,如果在catalina.sh中指定了,会覆盖上面solr.xml中配置的
4. 依次启动各个tomcat(主的先启动)
你会发现四个solr启动后都像这样
solrcloud6.1.0真机tomcat部署_第5张图片
这是因为我们还没有添加collection,添加一个试试
solrcloud6.1.0真机tomcat部署_第6张图片

solrcloud6.1.0真机tomcat部署_第7张图片

solrcloud6.1.0真机tomcat部署_第8张图片

solrcloud6.1.0真机tomcat部署_第9张图片

你可能感兴趣的:(java,solr)