您的位置:首页 > 运维架构 > Tomcat

solrcloud5.2.1+tomcat环境搭建

2017-05-14 00:09 281 查看
一、solrcloud+tomcat环境搭建

zookeeper配置:

配置过程略

地址为:192.168.1.249:2181

tomcat+solrcloud配置:

假设tomcat对外提供的端口为8088

1、将tomcat的配置文件server.xml进行修改,在<Host>标签内部加入如下代码段:
<Context docBase="/opt/app/tomcat7/webapps/solr" path="/solr" reloadable="true" />

2、修改/opt/app/tomcat7/bin/catalina.sh文件 在第二行加上一句话,指明zookeeper的地址,如果zookeeper为集群,则以逗号分隔
JAVA_OPTS="$JAVA_OPTS -DzkHost=192.168.1.249:2181"

3、创建solrhome,如/opt/app/tomcat7/solrhome,也可以创建到其他文件夹

4、拷贝solr配置文件:/root/solr-5.2.1/server/solr/solr.xml拷贝到solrhome中

5、修改solrhome下的solr.xml:
<int name="hostPort">${jetty.port:8088}</int>#这里的8088表示本节点tomcat的访问端口。

6、把/root/solr-5.2.1/server/webapps中的solr.war拷贝到tomcat的webapps文件夹中,启动tomcat,然后再删除war包

7、将/root/solr-5.2.1/server/lib文件夹中的所有jar包(可以不用拷贝jetty相关的)拷贝到/opt/app/tomcat7/webapps/solr/WEB-INF/lib中
后期还会用到很多包,都拷贝到这个目录下

8、修改/opt/app/tomcat7/webapps/solr/WEB-INF/下的web.xml文件,加上如下一段:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/opt/app/tomcat7/solrhome</env-entry-value><!--这里必须和上面第三步建立的solrhome一致-->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>

9、将tomcat和solrhome拷贝到各个节点。
10、分别启动各个节点的tomcat。


二、创建collection

1、上传collection的配置文件

/root/solr-5.2.1/server/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.1.240:2181 -cmd upconfig -confdir /root/solr-5.2.1/server/solr/configsets/data_driven_schema_configs/conf -confname collection3

-zkhost:zookeeper访问地址,如果有多个则写多个,以逗号分隔
-cmd upconfig:表示上传配置文件
-confdir:上传文件所在路径,/root/solr-5.2.1/server/solr/configsets/data_driven_schema_configs/conf
-confname:在zookeeper中/configs目录下显示的名称,一般和collection名称一致


注意:

这个步骤只需要执行一次即可,不用在每个节点去执行。

2、 创建collection

http://192.168.1.240:8088/solr/admin/collections?action=CREATE&name=collection3&numShards=2&replicationFactor=1&maxShardsPerNode=2&collection.configName=collection3

name                    collection名称
numShards               分片数
replicationFactor       每片的副本数
maxShardsPerNode        每个tomcat节点最多有几个分片
collection.configName   和上面步骤的confname一致,即在
zookeeper中/configs目录下显示的名称,一般和
collection名称一致


三、其他collection操作

1、删除collection

在浏览器地址栏输入:http://192.168.1.240:8088/solr/admin/collections?action=DELETE&name=collection3

2、修改schema信息后更新(好像不用执行重新加载也可以?但最好还是执行下)

所有配置上传到zk:

/root/solr-5.2.1/server/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.1.240:2181 -cmd upconfig -collection collection3 -confdir /root/solr-5.2.1/server/solr/configsets/data_driven_schema_configs/conf -confname collection3


重新加载collection:

http://192.168.1.240:8088/solr/admin/collections?action=RELOAD&name=collection3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: