搭建solr集群整个架构:
前提:
(1)zookeeper集群
(2)最好做系统间拷贝免密码(频繁复制东西输密码太麻烦)
(3)软件solr.*.zip  zookerper.*.tar.gz  ik.*.zip  tomcat.*.tar.gz(tomcat7以上版本)
 
搭建思想:
3台服务器:
192.168.20.101
192.168.20.102
192.168.20.103
 
目录结构:
 
先搭建好一台192.168.20.101然后scp到102和103整个文件夹
搭建101:
1.把解压的solr.zip中war包复制到tomcat的webapps下
2.#jar -xvf solr.war    解压war包
3.解压IK.zip,复制里面jar包到webapps/solr/WEB-INF/lib下,配置文件到webapps/solr/WEB-INF/classes下
4.修改webapps/solr/WEB-INF/web.xml,放开注释,配置第二行的solrhome的位置(绝对路径)
5.建solrhome1和solrhome2(名字随意),复制solr.zip解压目录(solr-4.10.3/example/solr)下的所有文件到4步骤的两个solrhome中.(solr-4.10.3/example/solr这是示例中的solr家的标准目录)
6.进入solrhome1/collection1/conf,修改schema.xml,在最后加入如下内容,引用IK分词器.
7.启动tomcat看分词器和solr单机版可以用了吗.访问http://ip:port/solr
8.如果上一步好使了,停tomcat开始配置集群,修改solrhome1/solr.xml把端口改成和tomcat端口一致.
9.把solr家solrhome1/collection1下刚产生的data目录删掉,上传配置文件信息给zookeeper集群
#sh /opt/solr/solr-4.10.3/example/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.20.101:2181,192.168.20.102:2181,192.168.20.103:2181 -cmd upconfig -confdir /opt/solr/solrhome1/collection1/conf -confname myconf -solrhome1 /opt/solr/solrhome1
上传完了用zookeeper客户端连接zookeeper集群看这些内容是否上传上去
进入zookeeper集群安装目录 #./zkCli.sh    然后输入命令ls /configs/myconf    可以查看刚才上传的配置文件名
 
10.配置每个solrhome中的solrhome1/collection1/core.properties;明确指定自己是哪根葱....
#solrhome1下的
numShards=2    #分多少片
name=collection1    #属于哪个索引库
shard=shard1    #属于索引库哪一片
coreNodeName=core_node1    #数据这一片第几个节点
##solrhome2下的
numShards=2
name=collection1
shard=shard1
coreNodeName=core_node2
 
11.修改tomcat/bin/catalina.sh,加一行内容指定zookeeper集群地址(在哪加,我选择方便直接在头行后空白处)
JAVA_OPTS="-DzkHost=192.168.20.101:2181,192.168.20.102:2181,192.168.20.103:2181"
12.所有的操作就完了,整个文件夹拷贝到其他机器然后修改10不走的core.properties文件指定自己是哪根葱就行了
一切做完了挨个启动tomcat,然后随便找一个tomcat用浏览器访问solr页面.此时会出现cloud这个选项,点一下就看到集群结构了
 
 
13.此时的zookeeper下面会多一些集群节点信息
overseer, aliases.json, live_nodes, collections, overseer_elect, clusterstate.json
 
 
 
 
 
附录:
#sh /opt/solr/solr-4.10.3/example/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.20.101:2181,192.168.20.102:2181,192.168.20.103:2181 -cmd upconfig -confdir /opt/solr/solrhome1/collection1/conf -confname myconf -solrhome1 /opt/solr/solrhome1
 
JAVA_OPTS="-DzkHost=192.168.20.101:2181,192.168.20.102:2181,192.168.20.103:2181"
 
numShards=2
name=collection1
shard=shard1
coreNodeName=core_node1
 
numShards=2
name=collection1
shard=shard1
coreNodeName=core_node2
 
numShards=2
name=collection1
shard=shard2
coreNodeName=core_node1
 
 
numShards=2
name=collection1
shard=shard2
coreNodeName=core_node2
 
numShards=1
name=collection2
shard=shard1
coreNodeName=core_node1
 
numShards=1
name=collection2
shard=shard1
coreNodeName=core_node2
 
 

27.solr集群的更多相关文章

  1. Solr 11 - Solr集群模式的部署(基于Solr 4.10.4搭建SolrCloud)

    目录 1 SolrCloud结构说明 2 环境的安装 2.1 环境说明 2.2 部署并启动ZooKeeper集群 2.3 部署Solr单机服务 2.4 添加Solr的索引库 3 部署Solr集群服务( ...

  2. solr集群搭建(复制)

    Solr集群的搭建以及使用(内涵zookeeper集群的搭建指南) 1   什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引 ...

  3. 在Linux上使用Nginx为Solr集群做负载均衡

    在Linux上使用Nginx为Solr集群做负载均衡 在Linux上搭建solr集群时需要用到负载均衡,但测试环境下没有F5 Big-IP负载均衡交换机可以用,于是先后试了weblogic的proxy ...

  4. Solr集群更新配置的方式

    solr集群中配置文件是经常更新的,频率最高的也就是schema.xml和solrconfig.xml这两个配置文件了,对于更新配置文件之前,我们先了解一下集群项目结构 由于在集群模式下,solrco ...

  5. Solr集群常用的操作总结

    之前搭建过SolrCloud和Solr单机版本,另外还有很多对Solr配置文件以及核心的操作,以下主要总结Solr集群中的常用操作,即在配置文件中正确设置ZK_HOST参数并且Zookeeper正确启 ...

  6. 搭建Solr集群的推荐方案

    之前介绍过2篇SolrCloud的部署流程,第一个是使用安装脚本的方式进行抽取安装,启动比较方便,但是会创建多个目录,感觉比较乱:第二个是官方教程上提供的方法,使用比较简单,直接释放压缩包即可,并且启 ...

  7. Solr集群的搭建以及使用(内涵zookeeper集群的搭建指南)

    1   什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候 ...

  8. solr集群solrCloud的搭建

    上一章讲了solr单机版的搭建,本章将讲解sole集群的搭建.solr集群的搭建需要使用到zookeeper,搭建参见zookeeper集群的安装 一.solr实例的搭建 1. tomcat安装 这里 ...

  9. Solr集群、KI分词、项目实战

    Solr是一个高性能,采用Java开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善 ...

随机推荐

  1. ASP.NET corrupt assembly “Could not load file or assembly App_Web_*

    以下是从overFlow 复制过来的问题 I've read through many of the other questions posted on the same issue, but I s ...

  2. Centos7下配置node.js环境

    1.软件环境: Centos7.VMware 10.0.NodeJS v0.10.24 2.安装过程 1>安装过程中需要管理员权限,及root权限,可以敲入如下命令. [sharing@loca ...

  3. CSS中LI圆点样式li {list-style-type:符号名称}

    css中用list-style-type指定列表(lists)前面符号,如下: li {list-style-type:符号名称} 符号名称可用的值为: disc : CSS1 实心圆 circle ...

  4. vbs让电脑发音说话

    Dim vbs1 'set vbs1 = WScript.CreateObject("WScript.Shell") set vbs1 = WScript.CreateObject ...

  5. UEFI引导在GPT分区下安装win2008——抓住那只傲娇的win2008

    上周遇到个客户DELL R520的服务器新采购了8块3T硬盘做备份服务器,raid配置5+1,一个磁21.8T.先用普通的装desktop OS的方法发现进去没raid盘,然后就按照官方的文档进入Li ...

  6. 在Page_Loaded下删除PivotItem出错的解决方案

    之前我一个例子中出现无法再页面Loaded事件中删除PivotItem的情况,页面会报错 Value does not fall within the expected range. 附图 原因是因为 ...

  7. NLog输出目标及类型

    targets:输出目标节点 target:配置一个输出目标 Type输出类型: Console        输出到控制台 Debugger     输出到VS输出窗口 File        输出 ...

  8. 纯html、css3、js的时钟

    之前在网上看了一些使用js写的时钟,但感觉实现的方法有点麻烦,所以就自己重新写了一个例子,样子有点丑,但方法比较简单,大家就凑合看吧 其中采用的主要方法是原生js里面的Data(时期)对象,以及它的. ...

  9. 怎么在js中,访问viewbag,viewdata等等的值

    在js中要访问viewbag,viewdata存储的值, var ss='@ViewBag.name'; 一定要加引号,单双随便,还有, ViewBag一定要写规范,不然会编译错误! 成功者的秘诀就是 ...

  10. android 命令编译

    引用:http://jojol-zhou.iteye.com/blog/729254 Android 命令行手动编译打包过程图  [详细步骤]: 1使用aapt生成R.java类文件: 例: F:\e ...