SolrCloud

SolrCloud的搭建

本次安装是单台虚拟机安装,所以采用伪集群的方式进行安装,如果是真正的生产环境,将伪集群的ip改下就可以了,步骤是一样的。

SolrCloud结构图如下:

环境准备:

CentOS-6.4-i386-bin-DVD1.iso

jdk-7u72-linux-i586.tar.gz

apache-tomcat-7.0.47.tar.gz

zookeeper-3.4.6.tar.gz

solr-4.10.3.tgz

1.1. 环境安装

概念了解:一、Solr的相关概念了解

1.1.1. CentOs 6.4安装

1.1.2. jdk7安装

1.2. zookeeper集群安装

第一步:解压zookeeper

tar -zxvf zookeeper-3.4.6.tar.gz

第二步:在/usr/local/目录下创建一个solrcloud目录。把zookeeper解压后的文件夹复制到此目录下三份。分别命名为zookeeper1、2、3

[[email protected] ~]# mkdir /usr/local/solrcloud
[[email protected] ~]# mv zookeeper-3.4.6 /usr/local/solrcloud/zookeeper1
[[email protected] ~]# cd /usr/local/solrcloud
[[email protected] solrcloud]# ll
total 4
drwxr-xr-x. 10 1000 1000 4096 Feb 20  2014 zookeeper1
[[email protected] solrcloud]# cp -r zookeeper1/ zookeeper2
[[email protected] solrcloud]# cp -r zookeeper1/ zookeeper3
[ro[email protected] solrcloud]# 

进入zookeeper1文件夹,创建data目录。并在data目录中创建一个myid文件内容为“1”(echo 1 >> data/myid)。

第三步:配置zookeeper。

1、在每个zookeeper文件夹下创建一个data目录。

2、在data文件夹下创建一个文件名称为myid,文件的内容就是此zookeeper的编号1、2、3

[[email protected] data]# echo 1 >> myid
[[email protected] data]# ll
total 4
-rw-r--r--. 1 root root 2 Sep 17 23:43 myid
[[email protected] data]# cat myid
1

在zookeeper2、3文件夹下分别创建data目录和myid文件,做法同上

3、把zookeeper1下conf目录下的zoo_sample.cfg文件复制一份改名为zoo.cfg

4、修改zoo.cfg的配置

修改:
dataDir=/usr/local/solrcloud/zookeeper1/data #创建的data目录全路径
clientPort=2181  #客户端连接的端口(zookeeper2中为2182、zookeeper3中为2183)
添加:
server.1=192.168.25.154:2881:3881  #集群中节点的信息,包括IP地址及投票选举的端口
server.2=192.168.25.154:2882:3882
server.3=192.168.25.154:2883:3883

在zookeeper2、3文件夹下分别做上述配置

第四步:启动zookeeper。进入zookeeper1/bin目录下。

启动zookeeper:./zkServer.sh start

关闭:./zkServer.sh stop

查看状态:./zkServer.sh status

[[email protected] solrcloud]# zookeeper1/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/solrcloud/zookeeper1/bin/../conf/zoo.cfg
Mode: follower
[[email protected] solrcloud]# zookeeper2/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/solrcloud/zookeeper2/bin/../conf/zoo.cfg
Mode: leader
[[email protected] solrcloud]# zookeeper3/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/solrcloud/zookeeper3/bin/../conf/zoo.cfg
Mode: follower
[[email protected] solrcloud]# 

注意:开启zookeeper用到的端口,或者直接关闭防火墙。

service iptables stop

1.3 Solr实例的搭建

注:此步详细步骤可参考:二、Solr单机版的搭建

第一步:创建4个tomcat实例,修改其端口。8080-8083

第二步:解压solr-4.10.3.tar.gz压缩包。从压缩包中复制solr.war到tomcat。

第三步:启动tomcat解压war包。把solr-4.10.3目录下example目录下的关于日志相关的jar包添加到solr工程中。

第四步:创建solrhome。修改web.xml指定solrhome的位置。

1.4 solr集群的搭建

第一步:把solrhome中的配置文件上传到zookeeper集群。使用zookeeper的客户端上传。

客户端命令位置:/root/solr-4.10.3/example/scripts/cloud-scripts

./zkcli.sh -zkhost 192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183 -cmd upconfig -confdir /usr/local/solrcloud/solrhome1/collection1/conf -confname myconf

注:-zkhost后跟zookeeper集群的IP地址+端口号,需要改为自己的地址。

查看配置文件是否上传成功:

cd /usr/local/solrcloud/solrhome1/bin

[[email protected] bin]# ./zkCli.sh

Connecting to localhost:2181

[zk: localhost:2181(CONNECTED) 0] ls /

[configs, zookeeper]

[zk: localhost:2181(CONNECTED) 1] ls /configs

[myconf]

[zk: localhost:2181(CONNECTED) 2] ls /configs/myconf

[admin-extra.menu-top.html, currency.xml, protwords.txt, mapping-FoldToASCII.txt, _schema_analysis_synonyms_english.json, _rest_managed.json, solrconfig.xml, _schema_analysis_stopwords_english.json, stopwords.txt, lang, spellings.txt, mapping-ISOLatin1Accent.txt, admin-extra.html, xslt, synonyms.txt, scripts.conf, update-script.js, velocity, elevate.xml, admin-extra.menu-bottom.html, clustering, schema.xml]

[zk: localhost:2181(CONNECTED) 3]

第二步:修改solrhome1、2、3、4下的solr.xml文件,指定当前实例运行的ip地址及端口号。

第三步:修改每一台solr的tomcat 的 bin目录下catalina.sh文件中加入DzkHost指定zookeeper服务器地址:

JAVA_OPTS="-DzkHost=192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183"

(可以使用vim的查找功能查找到JAVA_OPTS的定义的位置,然后添加)

第四步:重新启动tomcat。

访问任意一台solr,左侧菜单出现Cloud:

一个主节点多个备份节点,集群只有一片。

第五步:创建一个两片的collection,每片是一主一备。

如果集群中有四个solr节点创建新集群collection2,将集群分为两片,每片两个副本。

http://192.168.25.154:8080/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2

第六步:删除collection1.

http://192.168.25.154:8080/solr/admin/collections?action=DELETE&name=collection1

1.5. 启动solrCloud注意

启动solrCloud需要先启动solrCloud依赖的所有zookeeper服务器,再启动每台solr服务器。

时间: 2025-01-06 21:05:57

SolrCloud的相关文章

Solrcloud(Solr集群)

Solrcloud(Solr集群) Solrcloud介绍: SolrCloud(solr集群)是Solr提供的分布式搜索方案. 当你需要大规模,容错,分布式索引和检索能力时使用SolrCloud. 当索引量很大,搜索请求并发很高时,同样需要使用SolrCloud来满足这些需求. 不过当一个系统的索引数据量少的时候是没有必要使用SolrCloud的. SolrCloud是基于Solr和Zookeeper的分布式搜索方案.它的主要思想是使用Zookeeper作为SolrCloud集群的配置信息中心

Solr4.8.0源码分析(22)之 SolrCloud的Recovery策略(三)

Solr4.8.0源码分析(22)之 SolrCloud的Recovery策略(三) 本文是SolrCloud的Recovery策略系列的第三篇文章,前面两篇主要介绍了Recovery的总体流程,以及PeerSync策略.本文以及后续的文章将重点介绍Replication策略.Replication策略不但可以在SolrCloud中起到leader到replica的数据同步,也可以在用多个单独的Solr来实现主从同步.本文先介绍在SolrCloud的leader到replica的数据同步,下一篇

SolrCloud今日大纲

SolrCloud今日大纲(了解) ●    分布式集群系统基本概念 ●    SolrCloud入门 ●    SolrCloud搭建 ***************************************************************************************************** 1.    分布式集群系统基本概念介绍 1.1    单台服务器存在的问题 URL: http://localhost:8080/xxx localhost其

SolrCloud应用简介

1.windows下启动实例工程 官网下载solr后解压到本地硬盘,在sol/bin目录下打开命令行窗口,然后测试以下命令: solr -e cloud 启动例子中的solrcould,进入交互界面,会让你输入创建的node数(默认2个),要绑定的端口,以及创建collection名称等,基本都默认即可.若想直接用默认的值创建这个工程实例直接输入命令:solr -e cloud -noprompt:solr start -cloud -s example/cloud/node1/solr -p

solrcloud sample

在solrcloud出来之前,如果通过solrj连接solrserver,需要程序自己实现一致性hash.新版本的solr支持cloud的部署方式,可以自动实现lb和sharding的功能(通过CloudSolrServer类连接cloud),可以用下面代码做测试需要的jar包如下: apache-solr-solrj.jar apache-solr-core.jar zookeeper.jar    commons-logging.jar  apache-logging-log4j.jar 

11.SolrCloud集群环境搭建

转载请出自出处:http://www.cnblogs.com/hd3013779515/ 我们基于Solr4.10.3版本进行安装配置SolrCloud集群,通过实践来实现索引数据的分布存储和检索. 一.准备工作 1.服务器 solrcloud01 192.168.137.171 solrcloud02 192.168.137.172 solrcloud03 192.168.137.173 2.资源文件 上传到/home/test apache-solr-dataimportscheduler.

solr 集群(SolrCloud 分布式集群部署步骤)

SolrCloud 分布式集群部署步骤 安装软件包准备 apache-tomcat-7.0.54 jdk1.7 solr-4.8.1 zookeeper-3.4.5 注:以上软件都是基于 Linux 环境的 64位 软件,以上软件请到各自的官网下载. 服务器准备 为搭建这个集群,准备三台服务器,分别为 192.168.0.2 -- master 角色192.168.0.3 -- slave 角色192.168.0.4 -- slave 角色 搭建基础环境 安装 jdk1.7 - 这个大家都会安装

13.SolrCloud架构图

SolrCloud集群架构图 对Solr集群的理解 zookeeper集中保存Solr的配置文件 zookeeper做索引请求的分发,SolrJ不需要知道Solr集群细节 Solr集群内部做数据一致性保证 一个索引库可以有多个分块 每一个分块由一部分的Solr服务器维护 每一个分块的服务器中会选出一个leader

Solr in action学习笔记 第十三章 SolrCloud

13.1 Getting started with SolrCloud 13.1.1Starting Solr in cloud mode 单机建立一个集群应用,一个端口模拟一个solr cd $SOLR_INSTALL/cp -r example/ shard1/ 13.1.2 Motivation behind the SolrCloud architecture ■ Scalability■ High availability■ Consistency■ Simplicity■ Elast

Solr 官方文档----SolrCloud

注:按5.2的官方文档 Zookeeper服务器用于管理Solr的分布式. *SolrCloud Example 按ref说明启动一个cloud的example add a node to a cluster P499开启一个node(服务器),并未开启core Taking Solr to Production值得阅读!! How SolrCloud Works basic SolrCloud Concepts collection:多个cores组成的一个逻辑上完整的index成为一个col