一、环境准备:

Solr版本:4.7.0

下载地址:http://www.apache.org/dyn/closer.cgi/lucene/solr/4.7.0

Tomcat版本:6.0.39

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

ZooKeeer版本:3.4.6

下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper/

二、配置

实验环境:

Windows XP SP3、JDK 1.6.0_10-rc2

环境规划:

Solr:2个solr服务;单collection,2个shard。每个shard一个reception。

ZooKeeper:单个ZooKeeper服务。

1、  配置ZooKeeper

在D盘根目录建立一个ZooKeeper文件夹。

把下载的ZooKeeper发布包解压D:\ZooKeeper,重命名为server1。

在D:\ZooKeeper\server1目录下新建一个data文件夹。

D:\ZooKeeper\server1\conf下面的zoo_sample.cfg文件改名为zoo.cfg。

修改zoo.cfg配置文件dataDir=/tmp/zookeeper改为dataDir=D:\\ZooKeeper\\server1\\data。

完成上面操作,便完成了ZooKeeper的配置了。

进入D:\ZooKeeper\server1\bin,双击zkServer.cmd便可以启动ZooKeeper。

2、  配置solr+tomcat

在D盘新建一个tomcat文件夹。

在D盘新建一个solr_home文件夹。

在D:\solr_home新建solr1、solr2文件夹。

2.1配置第一个solr

把下载的tomcat发布包解压到D:\tomcat,重命名为tomcat6.0.39_solr_01。

把solr发布包下的solr-4.7.0\dist\solr-4.7.0.war

复制到D:\tomcat\tomcat6.0.39_solr_01\webapps下面。

把D:\tomcat\tomcat6.0.39_solr_01\webapps\solr-4.7.0.war解压到

D:\tomcat\tomcat6.0.39_solr_01\webapps下面,重命名solr-4.7.0为solr。

删除D:\tomcat\tomcat6.0.39_solr_01\webapps\solr-4.7.0.war。

在D:\tomcat\tomcat6.0.39_solr_01\webapps\solr\WEB-INF\lib中加入下面4个jar包。

1)  commons-logging-1.1.jar

2)  slf4j-log4j12-1.6.6.jar

3)  slf4j-api-1.6.6.jar

4)  dom4j-1.6.1.jar

修改D:\tomcat\tomcat6.0.39_solr_01\webapps\solr\WEB-INF\web.xml中

[html] view
plain
copy

  1. <!--
  2. <env-entry>
  3. <env-entry-name>solr/home</env-entry-name>
  4. <env-entry-value>/put/your/solr/home/here</env-entry-value>
  5. <env-entry-type>java.lang.String</env-entry-type>
  6. </env-entry>
  7. -->

改为:

[html] view
plain
copy

  1. <env-entry>
  2. <env-entry-name>solr/home</env-entry-name>
  3. <env-entry-value>D:\\solr_home\\solr1</env-entry-value>
  4. <env-entry-type>java.lang.String</env-entry-type>
  5. </env-entry>

修改D:\tomcat\tomcat6.0.39_solr_01\bin\catalina.bat,在第二行加入如下这段配置:

[html] view
plain
copy

  1. set "JAVA_OPTS=-server -Xmx1024m -Xms256m -DzkHost=127.0.0.1:2181 -Dbootstrap_conf=true  -DnumShards=2"

-DzkHost来指定zookeeper地址

zookeeper是集群,应该写成 -DzkHost=localhost:9983,localhost:8574,localhost:9900

bootstrap_conf=true将会上传你在web.xml里面solr/home里配置的数据目录下面solr.xml里面配置的所有的solrcore到zookeeper,也就是所有的core将被集群管理

-DnumShards=2是指定我的集群分为两个shard

把solr发布包\solr-4.7.0\example\solr下所有文件复制到D:\solr_home\solr1下面。

修改D:\solr_home\solr1\solr.xml中

[html] view
plain
copy

  1. <int name="hostPort">${jetty.port:8983}</int>

改为:

[html] view
plain
copy

  1. <int name="hostPort">${jetty.port:8080}</int>

修改D:\solr_home\solr1\collection1\conf\solrconfig.xml中

[html] view
plain
copy

  1. <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" />
  2. <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" />
  3. <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" />
  4. <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" />
  5. <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" />
  6. <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" />
  7. <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
  8. <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />

改为

[html] view
plain
copy

  1. <!--
  2. <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" />
  3. <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" />
  4. <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" />
  5. <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" />
  6. <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" />
  7. <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" />
  8. <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
  9. <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />
  10. -->

2.2配置第二个solr

把下载的tomcat发布包解压到D:\tomcat,重命名为tomcat6.0.39_solr_02。

把solr发布包下的solr-4.7.0\dist\solr-4.7.0.war

复制到D:\tomcat\tomcat6.0.39_solr_02\webapps下面。

把D:\tomcat\tomcat6.0.39_solr_02\webapps\solr-4.7.0.war解压到

D:\tomcat\tomcat6.0.39_solr_02\webapps下面,重命名solr-4.7.0为solr。

删除D:\tomcat\tomcat6.0.39_solr_02\webapps\solr-4.7.0.war。

在D:\tomcat\tomcat6.0.39_solr_02\webapps\solr\WEB-INF\lib中加入下面4个jar包。

1)  commons-logging-1.1.jar

2)  slf4j-log4j12-1.6.6.jar

3)  slf4j-api-1.6.6.jar

4)  dom4j-1.6.1.jar

修改D:\tomcat\tomcat6.0.39_solr_02\webapps\solr\WEB-INF\web.xml中

[html] view
plain
copy

  1. <!--
  2. <env-entry>
  3. <env-entry-name>solr/home</env-entry-name>
  4. <env-entry-value>/put/your/solr/home/here</env-entry-value>
  5. <env-entry-type>java.lang.String</env-entry-type>
  6. </env-entry>
  7. -->

改为:

[html] view
plain
copy

  1. <env-entry>
  2. <env-entry-name>solr/home</env-entry-name>
  3. <env-entry-value>D:\\solr_home\\solr2</env-entry-value>
  4. <env-entry-type>java.lang.String</env-entry-type>
  5. </env-entry>

修改D:\tomcat\tomcat6.0.39_solr_02\bin\catalina.bat,在第二行加入如下这段配置:

[html] view
plain
copy

  1. set "JAVA_OPTS=-server -Xmx1024m -Xms256m  -DzkHost=127.0.0.1:2181  -DnumShards=2"

把solr发布包\solr-4.7.0\example\solr下所有文件复制到D:\solr_home\solr2下面。

修改D:\solr_home\solr1\solr.xml中

[html] view
plain
copy

  1. <int name="hostPort">${jetty.port:8983}</int>

改为:

[html] view
plain
copy

  1. <int name="hostPort">${jetty.port:8180}</int>

修改D:\solr_home\solr1\collection1\conf\solrconfig.xml中

[html] view
plain
copy

  1. <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" />
  2. <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" />
  3. <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" />
  4. <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" />
  5. <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" />
  6. <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" />
  7. <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
  8. <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />

改为

[html] view
plain
copy

  1. <!--
  2. <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" />
  3. <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" />
  4. <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" />
  5. <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" />
  6. <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" />
  7. <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" />
  8. <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
  9. <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />
  10. -->

修改D:\tomcat\tomcat6.0.39_solr_02\conf\server.xml各端口,避免和solr1的tomcat端口冲突。

1)8005改为8105。

2)8080改为8180。

3)8443改为8583。

4)8009改为8109。

启动2个tomcat,在浏览器输入地址

http://localhost:8080/solr/#/~cloud

或者

http://localhost:8180/solr/#/~cloud

便可以看到如下图solr集群服务了。



参考文献:

http://my.oschina.net/132722/blog/142096

http://blog.csdn.net/shirdrn/article/details/9718387

solrCloud+tomcat+zookeeper配置的更多相关文章

  1. solrCloud+tomcat+zookeeper集群配置

    solrcolud安装solrCloud+tomcat+zookeeper部署  转载请出自出处:http://eksliang.iteye.com/blog/2107002 http://eksli ...

  2. Solrcloud+tomcat+zookeeper

    准备两台服务器,目录结构如下 主机名 IP地址 tomcat安装路径 zookeeper安装路径 solr安装路径 java安装路径 sht-sgmhadoopnn-01 172.16.101.55 ...

  3. Zookeeper、Solr和Tomcat安装配置实践

    Zookeeper.Solr和Tomcat安装配置实践

  4. zookeeper配置中心实战--solrcloud zookeeper配置中心原理及源码分析

    程序的发展,需要引入集中配置: 随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关.参数的配置.服务器的地址…… 并且对配置的期望也越来越高,配置修改后实时生效,灰度发布,分环境.分集群管理配 ...

  5. SolrCloud的官方配置方式

    前面写过生产过程中的SolrCloud集群配置,实际上官方给出的是免安装配置,启动时采用命令行参数的方式启动,这样相对简单,并且官方文档也给出了外部Zookeeper的配置,和前面说的基本一致,这个不 ...

  6. JDK+Tomcat+Zookeeper+DubboAdmin安装教程

    JDK+Tomcat+Zookeeper+DubboAdmin安装教程 1. 安装内容: JDK 1.8.131 Tomcat 7.0.77 Zookeeper 3.4.9 Dubbo admin 2 ...

  7. 基于CentOS6.5的Dubbo及Zookeeper配置

    基于CentOS的Dubbo及Zookeeper配置 需要提前准备好的资料: 1.首先配置java环境 步骤: 将jdk的包上传至centos服务器的/opt目录下,并且解压 tar -zxvf jd ...

  8. 关于tomcat文件下载配置

    前言 tomcat文件下载 关闭tomcat目录列表浏览功能 Tomcat 不能下载带中文文件名的附件的方法 在Java Web项目中文件下载是一个很常见的功能,最近在做项目中发现可以通过tomcat ...

  9. 在tomcat中配置jdk的不同版本

    在tomcat中配置jdk的不同版本---------------------------------------------------------------------------------- ...

随机推荐

  1. 转: css3: display:box详解

    示例见:  css3: flexbox (BTW: blog不能包含iframe script真不方便啊~~) display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决 ...

  2. Delphi程序自删除的几种方法

    program Project1; uses SysUtils, windows; var f:textfile; a:string; begin a:=paramstr(); assignfile( ...

  3. 阻止系统自动睡眠的小软件,附C#制作过程

    原文 http://www.cnblogs.com/h46incon/p/SleepPreventer.html 因为有时下载东西的时候,不想让电脑自动深入睡眠,所以就开启了离开模式.这样不但不节能环 ...

  4. Json.Net系列教程 3.Json.Net序列化和反序列化设置

    原文 Json.Net系列教程 3.Json.Net序列化和反序列化设置 上节补充 首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framewo ...

  5. perl5 第五章 文件读写

    第五章 文件读写 by flamephoenix 一.打开.关闭文件二.读文件三.写文件四.判断文件状态五.命令行参数六.打开管道 一.打开.关闭文件   语法为open (filevar, file ...

  6. hdu4336 Card Collector 状态压缩dp

    Card Collector Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...

  7. [译]Stairway to Integration Services Level 11 - 日志配置

    介绍 在前一个章节我们讨论了事先行为,分享了如何操作默认的行为和时间冒泡,并且介绍了父子模型. 本文中,我们会配置SSIS日志. 进行简单及高级日志配置,存储,和检索的实验.并且生成自定义日志信息. ...

  8. Redis初始化配置及增删改查

    package com.calc.tools import redis.clients.jedis.JedisPool import redis.clients.jedis.Jedis import ...

  9. Java学习02

    Java学习02 1.导入内部的包 一.在包的下面加入下面一句话: import    java.util.Scanner; 二.在类中 Scanner input=new     Sanner(Sy ...

  10. [C#参考]字符编码

    微软的那个臭屁的JOEL(就是写<JOEL说软件>的那个牛人)曾说:“每一位软件开发人员必须.绝对要至少具备UNICODE与字符集知识(没有任何例外)”,我也常常困扰于字符集的转换等很多问 ...