一、环境准备:

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. 如何管理安卓android手机下google(谷歌)的通讯录联系人账户

    andorid手机都自带通讯录备份功能,但是如何管理,一直是一些人头疼的问题.经常在手机备份还原之后发现很多联系人都有重复. 1.打开 :https://mail.google.com/ 用你的谷歌账 ...

  2. ECMAScript 5中新增的数组方法

    ECMAScript 5中定义了9个新的数组方法,用于遍历.映射.过滤.检测.简化和搜索数组. 在开始介绍之前,很有必要对这几个新增的数组方法做一个概述.首先,大多数方法的第一个参数接收一个函数,并且 ...

  3. Qt实战之开发CSDN下载助手 (2)

    现在,我们正式开工啦.这一篇主要学习下基本的抓包分析.学会协议登录CSDN并制作登陆界面. 准备工具: 一款http抓包工具. 可以是FireBug或者fiddler.这里我们用httpWatch. ...

  4. MapReduce调度与执行原理之任务调度

    前言 :本文旨在理清在Hadoop中一个MapReduce作业(Job)在提交到框架后的整个生命周期过程,权作总结和日后参考,如有问题,请不吝赐教.本文不涉及Hadoop的架构设计,如有兴趣请参考相关 ...

  5. Dojo baseurl

    dojo.baseUrl baseUrl用来存储dojo.js存放 的跟目录,例如dojo.js的路径是“/web/scripts/dojo-1.3/dojo/dojo.js”则baseUrl为“/w ...

  6. [dfs+水] hdu 4462 Scaring the Birds

    题意: N*N的矩阵中有M个点能够放稻草人.且给覆盖距离R 每一个稻草人能覆曼哈顿距离R以内的点 问最少须要多少个稻草人 思路: 由于范围非常小,直接能够暴力 注意稻草人所在的位置是不须要被覆盖的 代 ...

  7. C#中Cache用法

    C#中Cache用法     Cache 是分配在服务器上的一个公共的内存片,所谓公共指的cache只要一创建是任何一个客户端浏览器都可以通过后台代码访问到它,它面向的是所有用户,相对而言sessio ...

  8. HttpWebRequest和WebClient的区别

     HttpWebRequest和WebClient的区别(From Linzheng): 1,HttpWebRequest是个抽象类,所以无法new的,需要调用HttpWebRequest.Creat ...

  9. [置顶] cocos2d-x 植物大战僵尸(13)类似酷跑的【同一角色不同动画间的切换的实现】

          有几天没和大家分享博客了,原因很简单,就是我在运行第12章所写的代码时:(开始一切正常,不过没多久就出现了内存泄露!.可能求成心切吧,当时没多加考虑就把代码发上去了.我在此对看过第12章得 ...

  10. Nginx 之二: nginx.conf 配置及基本优化

    一:常用功能优化: 1:网络连接的优化: 只能在events模块设置,用于防止在同一一个时刻只有一个请求的情况下,出现多个睡眠进程会被唤醒但只能有一个进程可获得请求的尴尬,如果不优化,在多进程的ngi ...