Solr集群搭建
SolrCloud需要solr基于zookeeper部署,zookeeper是一个集群管理软件,由于SolrCloud需要由多台服务器组成.由zookeeper来进行协调管理.Zookeeper是一个注册中心,把公共资源注册到Zookeeper,是服务的协调者
Zookeeper集群搭建
1)在/usr/local目录下创建文件夹solrCloud

2)使用FTP工具导入zookeeper压缩包到solrCloud文件夹下,解压后改名为zookeeper1

3)拷贝两份zookeeper服务在当前目录下

4)重命名每一台zookeeper服务的配置文件,(zookeeper1/conf/zoo_sample.cfg): mv zoo_sample.cfg zoo.cfg
5)编辑zoo.cfg,修改这三台zookeeper端口号分别为:2182/2183/2184

6)修改数据存储目录
在每一台zookeeper目录下创建data,log目录


编辑zoo.cfg,将下列路径修改

7)配置心跳检测
在每一台zookeeper的zoo.cfg内配置如下信息

8)创建选举ID
在每一台zookeeper的data目录下创建文件:myid,zookeeper1编辑myid,填入1, Zookeeper2(myid= 2),zookeeper3(myid=3)

9)zookeeper集群测试
开启这三个zookeeper服务

并查看这三个服务的状态,成功..

单机版solr搭建
1)使用ftp工具上传apache-tomcat-7.0.47.tar.gz/solr-4.10.3.tgz.tgz压缩包到/usr/local/solrCloud,解压它们
2)进入solr-4.10.3/example/webapps目录下,找到solr.war,拷贝它一份到apache-tomcat-7.0.47/webapps中,启动tomcat,war包自动解压得到solr文件夹,然后删除solr.war包

3)拷贝solr-4.10.3/example/lib/ext下的jar包到apache-tomcat-7.0.47/webapps/solr/WEB-INF/lib中

4)拷贝solr-4.10.3/example/resource/log4j.properties文件到apache-tomcat-7.0.47/webapps/solr/WEB-INF/classes下,如果classes文件夹没有那么就自己创建

5)在/usr/local/solrCloud文件夹下创建solrhome文件夹,并将solr-4.10.3/example/solr中的数据拷贝一份到solrhome文件夹中

6)进入solr-4.10.3/文件夹下找到contrib和dist文件夹,拷贝到solrhome文件夹下

7)进入solrCloud/solrhome/collection1/conf文件夹下

编辑solrconfig.xml文件,修改lib路径为绝对路径

8)编辑/usr/local/solrCloud/ apache-tomcat-7.0.47/webapps/solr/WEB-INF/web.xml文件,指定solr仓库地址

9)重启tomcat,浏览器访问http://39.108.3.131:8080/solr,成功如下

solr集群搭建
1)修改solrCloud/apache-tomcat-7.0.47文件夹名为tomcat1,并拷贝三份分别改名为tomcat2/3/4

2)重命名solrCloud目录下的solrhome文件夹名为solrhome1,并另拷贝三份分别改名为solrhome2/3/4

3)指定每一台tomcat的仓库地址和zookeeper注册中心
配置每台tomcat的catalina.sh配置文件

在如下图位置添加内容(tomcat1为solrhome1,tomcat2为solrhome2..)

4)找到/usr/local/solrCloud/tomcat1/conf/server.xml,编辑这个xml文件,修改每一台tomcat端口(每个tomcat都有三个端口需要更改):
tomcat1:8061/8050/8062;tomcat2:8063/8051/8064;tomcat3:8065/8052/8066;tomcat4:8067/8053/8068



5)修改每个solr仓库的集群监控端口,文件地址为/usr/local/solrCloud/solrhome1/solr.xml,监控端口和tomcat运行端口一致即可(solrhome1和tomcat1一致…)

6)指定各个solr应用的仓库地址
编辑/usr/local/solrCloud/tomcat1/webapps/solr/WEB-INF/web.xml文件(solr应用和solr仓库一一对应即可)

7)将solr集群配置文件交给zookeeper注册中心管理,当solr集群需要加载配置文件,只需要从zookeeper中获取配置文件就行了
命令位置: /solr-4.10.3/example/scripts/cloud-scripts/zkCli.sh
上传命令: ./zkcli.sh -zkhost 172.18.103.142:2182, 172.18.103.142:2183, 172.18.103.142:2184 -cmd upconfig -confdir /usr/local/solrCloud/solrhome1/solr/collection1/conf -confname myconf

8)登录zookeeper查看
./zkCli.sh -server 172.18.103.142:2182

9)启动4台tomcat服务
sh tomcat1/bin/startup.sh
sh tomcat2/bin/startup.sh
sh tomcat3/bin/startup.sh
sh tomcat4/bin/startup.sh
10)访问http://39.108.3.131:8050/solr/,点击cloud,成功..

Solr集群搭建的更多相关文章
- Solr集群搭建详细教程(一)
一.Solr集群的系统架构 注:欢迎大家转载,非商业用途请在醒目位置注明本文链接和作者名dijia478,商业用途请联系本人dijia478@163.com. SolrCloud(solr 云)是So ...
- Solr集群搭建详细教程(二)
注:欢迎大家转载,非商业用途请在醒目位置注明本文链接和作者名dijia478,商业用途请联系本人dijia478@163.com. 之前步骤:Solr集群搭建详细教程(一) 三.solr集群搭建 注意 ...
- (转)淘淘商城系列——Solr集群搭建
http://blog.csdn.net/yerenyuan_pku/article/details/72957201 我们之前做的搜索使用的是Solr的单机版来实现的,正是由于我们现在商品数据量不多 ...
- centos solr 集群搭建
一.什么是 SolrCloud SolrCloud(solr 云)是 Solr 提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时 ...
- 搜索服务Solr集群搭建 使用ZooKeeper作为代理层
上篇文章搭建了zookeeper集群 那好,今天就可以搭建solr搜服服务的集群了,这个和redis 集群不同,是需要zk管理的,作为一个代理层 安装四个tomcat,修改其端口号不能冲突.8080~ ...
- solr集群搭建(复制)
Solr集群的搭建以及使用(内涵zookeeper集群的搭建指南) 1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引 ...
- solr集群搭建(4.10.2)
配置环境为centos6.8 下载tomcat程序到服务器,并解压启动服务测试 [root@hadoop01 ~]# wget http://apache.claz.org/tomcat/tomcat ...
- Linux下solr集群搭建
第一步:创建四个tomcat实例.每个tomcat运行在不同的端口.8180.8280.8380.8480 第二步:部署solr的war包.把单机版的solr工程复制到集群中的tomcat中. 第三步 ...
- solr集群搭建(SolrCloud)
SolrCloud(solr 云)是 Solr 提供的分布式搜索方案,当你需要大规模,容错,索引量很大,搜索请求并发很高时可以使用SolrCloud.它是基于 Solr 和Zookeeper的分布式搜 ...
随机推荐
- PHP 手册
http://www.php.net/manual/zh/index.php 感谢中文翻译工作者. PHP 手册¶ by:Mehdi Achour Friedhelm Betz Antony Dovg ...
- hibernate 多对多关系总结
hibernate中,对对象关系的映射处理估计是最让人迷惑和头疼的,特别是cascade和inverse属性的使用,不知已经杀死了我多少个脑细胞了,好记性永远比不上烂笔头,为了能节省自己的脑细胞,降低 ...
- javascript中的apply,call,bind详解
apply.call 在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向. Jav ...
- hdu1269强连通分量入门题
https://vjudge.net/contest/156688#problem 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N<=10000)和M条通道(M<= ...
- Java scheduled executor
A typical usage of java scheduled executor looks like this ScheduledExecutorService executor = Execu ...
- 【BZOJ1001】[BeiJing2006]狼抓兔子
挺简单一个题,最小割模板 我的感觉就是可能建图的时候会比较麻烦吧,毕竟三个方向. #include <cctype> #include <climits> #include & ...
- 跨域问题解决方案(HttpClient安全跨域 & jsonp跨域)
1 错误场景 今天要把项目部署到外网的时候,出现了这样的问题, 我把两个项目放到自己本机的tomcat下, 进行代码调试, 运行 都没有问题的, 一旦把我需要调用接口的项目B放到其他的服务器上, 就会 ...
- angularjs ng-class
ng-class指令可以设置一个键值对,用于决定是否添加一个特定的类名,键为class名,值为bool类型表示是否添加该类名 <style> .red { color: red; } .g ...
- 关于“foreach循环”中遇到的几个问题总结
1.列表页面用"foreach循环"的时候数据没有显示,此时需要检查你对象模型中属性的首字母是否大写,切记不能大写(本人在做一个项目的时候,对象模型是别人建立的,属性首字母大写了, ...
- OC中Foundation框架之NSArray、NSMutableArray
NSArray概述 NSArray是OC中的数组类 NSArray特点 )只能存放任意OC对象,并且是有顺序的 )不能存放非OC对象,比如int/float/double/char/enum/stru ...