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

Win7下单机版的伪分布式solrCloud环境搭建Tomcat7+ solr-5.2.1+zookeeper3.4.6

2016-08-10 13:31 495 查看

1、软件环境配置

环境:Windows 7

tomcat-7.0.56 下载地址:http://tomcat.apache.org/download-70.cgi

Zookeepr v3.4.6 下载地址: http://apache.fayea.com/zookeeper/
solr-5.2.1 下载地址: http://mirrors.cnnic.cn/apache/lucene/solr/
 

2、部署过程

2.1 部署好单机版Tomcat7 +Solr5.2.1

第一步:在D盘根目录下建立solrCloud目录。并把apache-tomcat-7.0.56.zip解压到solrCloud目录下,复制apache-tomcat-7.0.56并重命名为tomcat7_ser1。把solr-5.2.1.tgz解压,并把solr-5.2.1\example\example-DIH\solr目录下的 solr文件夹 和 solr.xml  复制保存到solr_home_1\home 目录。如下图:

第一步:把apache-tomcat-7.0.56.zip解压到solrCloud目录下,复制apache-tomcat-7.0.56并重命名为tomcat7_ser1,

第二步,新建solr_home_1 文件夹如下图,并在目录下,创建 home  和 server 文件夹

 

第三步:把solr-5.2.1\example\example-DIH\solr指定文件复制到solr_home_1\home目录下,如下图

第四步:把solr-5.2.1\server\webapps\solr.war复制到solr_home_1\server目录下。 将solr.war解压,解压后将solr.war文件删除,如下图

 

第五步:修改D:/Java/solrCloud5/solr_home_1/server/solr/WEB-INF目录下的web.xml文件,里面修改solr/home的value值,如下图。

第六步:因为我们未将solr 服务放到tomcat webapps下面,所以需要修改D:\Java\ solrCloud5\ tomcat7_ser1\ conf\server.xml 指向solr服务路径。如下图。

第七步:将solr-5.2.1\dist和solr-5.2.1\server\lib\ext目录下的jar包复制到solr_home_1\server\solr\WEB-INF\lib 下(有这两个目录的jar大部分功能都是支持了,当然其它的jar肯定有用的,只是我们初学都暂时用不到)。

第八步:现在单机版本的就已经配置OK了。 启动tomcat, 访问http://localhost:8080/solr

2.2 配置多Tomcat+solr同时运行

第一步:

把tomcat7_ser1复制2份,分别命名tomcat7_ser2,tomcat7_ser3; 

把solr_home_1复制2份,分别命名solr_home_2,solr_home_3。

目录结构如下:

第二步:修改 D:\Java\solrCloud5\tomcat7_ser*\conf\server.xml配置。

1、 修改 tomcat7_ser* 分别对应 各自solrhome* 和 solr 服务 。

如下图:tomcat7_ser1对应solr_home_1、2对应2 、3对应3 是吧

2、  为了三个tomcat能够在一台机器上同时启动,需要在server.xml修改tomcat的端口信息。修改方案如下:

 
Tomcat Admin Port 
HTTP/1.1 Port 
AJP/1.3 Port 
tomcat7_ser1 
8005 
8080 
8009 
tomcat7_ser2 
8015 
8081 
8019 
tomcat7_ser3 
8025 
8082 
8029 
下图是tomcat7_ser1每个端口位置:

TomcatAdmin Port: 

HTTP/1.1Port 

AJP/1.3Port 

第三步:配置各个tomcat和solr 之间的关系,修改D:\Java\solrCloud5\solr_home_*\server\solr\WEB-INF目录下的web.xml文件(对应关系)

第四步:验证修改是否成功,依次启动三个Tomcat。并在浏览器输入如下的URL: 

http://localhost:8080/solr/

http://localhost:8081/solr/

http://localhost:8082/solr/

如果都能正常访问到solr的admin页面,那么说明配置是成功的。否则就需要检查哪里错了或者遗漏了。

2.3 配置ZooKeeper集群

这部分的内容与前面tomcat+solr是没有关联的,所以配置这里,可以跟忘记前面的内容。

 

第一步:解压zookeeper-3.4.6.tar.gz到D:\Java\solrCloud5目录,重命名为zookeeper-1。

 

第二步:把D:\Java\solrCloud5\zookeeper-1\conf\目录下的zoo_sample.cfg修改为zoo.cfg。并写入如下的配置参数:

并且按照配置创建相应的data和datalog目录。如果不不创建目录是无法正常启动的。

 

在data目录中创建文件myid(不需要后缀名),在myid文件中写入数字1并保存退出。

 

第三步:把zookeeper-1复制2份,分别命名为zookeeper-2、zookeeper-3。然后修改各个zookeeper-*的conf目录下zoo.cfg的dataDir和dataLogDir和clientPort。修改方案如下: 
 
dataDir
dataLogDir
clientPort
zookeeper-1
D:/Java/solrCloud5/ zookeeper-1/data
D:/Java/solrCloud5/zookeeper-1/datalog
2181
zookeeper-2
D:/Java/solrCloud5/ zookeeper-2/data
D:/Java/solrCloud5/zookeeper-2/datalog
2182
zookeeper-3
D:/Java/solrCloud5/ zookeeper-3/data
D:/Java/solrCloud5/zookeeper-3/datalog
2183
 
 
并且修改每个data目录下的myid文件中的内容。zookeeper-1是1, zookeeper-2是2,zookeeper-3是3 。

第四步:启动三个zookeeper。并验证是否配置成功。目录结构以及启动目录如下图:

注意:连接第一台时有异常信息,不用管,等都连接起来就没有异常了。
进入cmd 命令,输入:netstat-ano|findstr 2181 查看端口是否启用

2.4 配置Tomcat+solr+zookeeper集群

前面tomcat+solr能够启动和访问了,而且zookeeper也能启动成功了。接下来就需要把他们关联起来。大家看那么多贴子应该知道(当然不知道也要记住这个知识点):solrcloud的所有配置 需要zookeeper统一管理
第一步: 将需要的配置库 集中放到一个目录中。
在D:\Java\solrCloud5 下创建cloud_conf文件夹作为配置库,将solr-5.2.1\server\solr\configsets\sample_techproducts_configs\conf 下配置文件复制到cloud_conf文件夹中。(也可以使用solr-5.2.1\example\example-DIH\solr\solr\conf中的配置文件)

第二步: 配置zookeeper路径
在D:\Java\solrCloud5\tomcat7_ser1\bin\catalina.bat文件中, 我是在 setlocal 上一行添加:

如下图:

setJAVA_OPTS=-Dbootstrap_confdir=D:/Java/solrCloud5/cloud-config-Dcollection.configName=myconf -DzkHost=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183-DnumShards=3
配置参数解释:
-DzkHost是用来指定zookeeper服务器的ip和端口。
-Dnumshareds=3 用来指定当前集群中分片数为3
-Dcollection.configName   是在指定你的配置文件上传到zookeeper后的名字,省略这个参数将导致配置名字为默认的“configuration1”
-Dbootstrap_confdir :zooKeeper需要准备一份集群配置的副本,所以这个参数是告诉SolrCloud这些 配置是放在哪里。同时作为整个集群共用的配置文件。可以看作是第一份solr配置。因为后续我们可以通过上传,来实现多collection。
 
其余tomcat7_ser* catalina.bat设置
set JAVA_OPTS=-DzkHost=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

 
第三步:  因为配置由zookeeper统一管理了,所以home下面的solr配置就不起使用了。删除solr_home_*\home\solr文件夹, 修改配置solr.xml,如下图

hostPort 修改为对应的tomcat端口号 8080 80818082

 

第四步:重启tomcat。访问任务一个端口都成,比如:http://localhost:8081, 能正常访问,且菜单中,出现了Cloud说明我们已经部署成功了。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zookeeper solr