SolrCloud-5.2.1 集群部署及测试

 

一. 说明

  Solr5内置了Jetty服务,所以不用安装部署到Tomcat了,网上部署Tomcat的资料太泛滥了。

  部署前的准备工作:

  1. 将各主机IP配置为静态IP(保证各主机可以正常通信,为避免过多的网络传输,建议在同一网段)。

  2. 修改主机名,配置各主机映射;修改hosts文件,加入各主机IP和主机名的映射。

  3. 开放相应端口或者直接关闭防火墙。

  4. 保证Zookeeper集群服务正常运行。Zookeeper的部署参考:http://www.cnblogs.com/wxisme/p/5178211.html

  5. root权限

  6.相关参数和组件的说明:

  Collection:在SolrCloud集群中逻辑意义上的完整的索引。它常常被划分为一个或多个Shard,它们使用相同的Config Set。如果Shard数超过一个,它就是分布式索引,SolrCloud让你通过Collection名称引用它,而不需要关心分布式检索时需要使用的和Shard相关参数。

  Core:也就是Solr Core,一个Solr中包含一个或者多个Solr Core,每个Solr Core可以独立提供索引和查询功能,每个Solr Core对应一个索引或者Collection的Shard,Solr Core的提出是为了增加管理灵活性和共用资源。在SolrCloud中有个不同点是它使用的配置是在Zookeeper中的,传统的Solr core的配置文件是在磁盘上的配置目录中。

  Leader:赢得选举的Shard replicas。每个Shard有多个Replicas,这几个Replicas需要选举来确定一个Leader。选举可以发生在任何时间,但是通常他们仅在某个Solr实例发生故障时才会触发。当索引documents时,SolrCloud会传递它们到此Shard对应的leader,leader再分发它们到全部Shard的replicas。

  Replica:Shard的一个拷贝。每个Replica存在于Solr的一个Core中。一个命名为“test”的collection以numShards=1创建,并且指定replicationFactor设置为2,这会产生2个replicas,也就是对应会有2个Core,每个在不同的机器或者Solr实例。一个会被命名为test_shard1_replica1,另一个命名为test_shard1_replica2。它们中的一个会被选举为Leader。

  Shard:Collection的逻辑分片。每个Shard被化成一个或者多个replicas,通过选举确定哪个是Leader。

二. 安装过程

  1. 到Apache官网下载Solr-5.2.1安装包

  2. 进入到Solr文件的目录,执行以下命令从压缩包中抽出安装脚本:

tar -xvzf solr-5.2.1.tgz solr-5.2.1/bin/install_solr_service.sh --strip-components=2

  3. 运行安装脚本

  执行以下命令安装Solr:

./install_solr_service.sh solr-5.2.1.tgz -i /usr/solr/solr5 -d /usr/solr/solr5 -u solr -s solr -p 8983

  或者执行以下命令按照默认值安装:

./install_solr_service.sh solr-5.2.1.tgz

  其实也可以直接解压安装包,然后自定义配置即可。

  4.修改配置

  执行以下命令编辑solr.in.sh文件:

vim /usr/solr5/solr.in.sh

  参照如下进行修改:

SOLR_JAVA_MEM="-Xms1G -Xmx1G"
ZK_HOST="node1:2181,node2:2181,node3:2181/solr"

  内存限制可以按照需要设定。

  5.按照上述步骤在其他节点执行安装

三. 启动Solr服务并验证

  1. 在Solr集群中各节点执行以下命令启动Solr服务:

service solr start

  

  2.查看Solr状态

service solr status

  

  3.登录Solr UI

http://node1:8983/solr

四. 测试Solr

  Solr提供了几种常用的方式来操作,Shell命令、REST API、SolrJ接口等等,根据实际情况选择。下面的操作为了简单方便的演示使用Shell命令的方式。

  1. 打开并编辑server/solr/configsets/sample_techproducts_configs/conf下的schema.xml文件,在文件末尾随便添加一个field。

  2. 创建一个collection并上传关联配置文件至Zookeeper。

./bin/solr create_collection -c students -d server/solr/configsets/sample_techproducts_configs/conf -shards 3 -replicationFactor 3

  如果以后要更新配置文件到Zookeeper,可以使用以下命令更新全部配置:

./server/scripts/cloud-scripts/zkcli.sh -zkhost node2:2181,node1:2181,node3:2181 -cmd upconfig -confname students -confdir server/solr/configsets/sample_techproducts_configs/conf

  如果只更新单个文件使用putfile命令:

./server/scripts/cloud-scripts/zkcli.sh -zkhost node2:2181,node1:2181,node3:2181 -cmd putfile /solr/configs/students/schema.xml /usr/tempfiles/schema.xml

  路径的前者为配置文件在Zookeeper中的存储路径,后者是配置文件的本地路径。需要注意的是如果Zookeeper中的这个文件存在需要先删除之,然后在上传更新。可以登录Zookeeper中操作:

ZK_HOME/./bin/zkCli.sh -timeout 5000 -server node3:2181

  登录到Zookeeper之后可以使用命令来对配置文件删除以及其他的操作,如果不清楚配置文件在Zookeeper中的位置也可以查看。

  3.检测collection是否成功创建,在Solr UI中刷新页面,点击Cloud如果成功创建了Collection会显示出Solr的集群拓扑。

  还可以查看定义的schema.xml是否生效

  4.添加索引,查询数据

  1.添加索引数据可以使用上述的几种方式,为简单起见使用Solr UI添加简单的索引数据进行测试

  点击提交会返回成功的信息:

  2.查询测试

  测试完之后可以删除Collection

http://node1:8983/solr/admin/collections?action=DELETE&name=students

  到此Solr的部署和简单的测试就完成了,接下来就可以深入学习Solr的工作原理、数据结构的定义、配置和查询了。

  参考资料:Solr官方文档

集群部署及测试SolrCloud-5的更多相关文章

  1. 消息中间件kafka+zookeeper集群部署、测试与应用

    业务系统中,通常会遇到这些场景:A系统向B系统主动推送一个处理请求:A系统向B系统发送一个业务处理请求,因为某些原因(断电.宕机..),B业务系统挂机了,A系统发起的请求处理失败:前端应用并发量过大, ...

  2. redis3.0集群部署和测试

    redis3.0集群部署和测试 环境介绍 两台Centos7的虚拟机模拟6个节点,A台3个master节点,B台3个slave节点A地址:172.16.81.140B地址:172.16.81.141r ...

  3. SolrCloud-5.2.1 集群部署及测试

    一. 说明 Solr5内置了Jetty服务,所以不用安装部署到Tomcat了,网上部署Tomcat的资料太泛滥了. 部署前的准备工作: 1. 将各主机IP配置为静态IP(保证各主机可以正常通信,为避免 ...

  4. redis3.2.11多机多实例集群部署及测试连接情况

    机器配置 redis3.2.11安装配置规划 机器 192.168.169.136(本机虚拟机1) 192.168.169.137(本机虚拟机2) 系统 Red Hat Enterprise Linu ...

  5. redis3.2.11单机多实例集群部署并测试连接情况

    配置准备: redis3.2.11安装配置规划 机器 192.168.169.135(本机虚拟机) 系统 Red Hat Enterprise Linux Server release 6.4 (Sa ...

  6. SolrCloud 分布式集群部署步骤

    https://segmentfault.com/a/1190000000595712 SolrCloud 分布式集群部署步骤 solr solrcloud zookeeper apache-tomc ...

  7. Hadoop系列之(二):Hadoop集群部署

    1. Hadoop集群介绍 Hadoop集群部署,就是以Cluster mode方式进行部署. Hadoop的节点构成如下: HDFS daemon:  NameNode, SecondaryName ...

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

    SolrCloud 分布式集群部署步骤 安装软件包准备 apache-tomcat-7.0.54 jdk1.7 solr-4.8.1 zookeeper-3.4.5 注:以上软件都是基于 Linux ...

  9. Openfire 集群部署和负载均衡方案

    Openfire 集群部署和负载均衡方案 一.   概述 Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Hapro ...

随机推荐

  1. linux 下opensplice的简易安装

    http://www.prismtech.com/opensplice/opensplice-dds-community/software-downloads 下载对应我选择的是: OpenSplic ...

  2. sql plus 抢救数据(測)

    有索引 --运行plsql脚本 DECLARE  TYPE RowIDTab ISTABLE OF ROWID INDEXBY BINARY_INTEGER;    CURSORc1 IS selec ...

  3. poj 3450 Corporate Identity

    题目链接:http://poj.org/problem?id=3450 题目分类:后缀数组 题意:求n个串的最长公共字串(输出字串) //#include<bits/stdc++.h> # ...

  4. php使用http请求头实现文件下载

    众所周知php对http协议的依赖特别强,像java或者asp.net在某些情况下可以不依赖http例如asp.net的winform,对php来说文件下载可以使用http的请求头加上php的IO就可 ...

  5. hdu1824(two-sat)

    传送门:Let's go home 题意:有n个队伍要回家,但是每队必须留下一人,而且m个限制,a留下,b必须回家,问能否在限制条件下每队留下一人. 分析:将每个队的队长和两个队员当成i和i':然后对 ...

  6. hdu1690 Bus System (dijkstra)

    Problem Description Because of the huge population of China, public transportation is very important ...

  7. Android拖动和缩放图片

    Android拖动和缩放图片 2014年5月9日 我们在使用应用其中常常须要浏览图片.比方在微信其中.点击图片之后能够对图片进行缩放. 本博客介绍怎样对图片进行拖拽和缩放.这首先要了解Android中 ...

  8. 安装了VS2010 sp1 后再安装ASP.NET MVC 3.0的问题(Final Result: Installation failed with error code: (0x80070643), "安装时发生严重错误 " (Ela)

    原文:安装了VS2010 sp1 后再安装ASP.NET MVC 3.0的问题(Final Result: Installation failed with error code: (0x800706 ...

  9. UVA12304 2D Geometry 110 in 1! 计算几何

    计算几何: 堆几何模版就能够了. . .. Description Problem E 2D Geometry 110 in 1! This is a collection of 110 (in bi ...

  10. Eclipse常用设置汇总

    设置编码: . 设置字体: 依次展开 Window->Preferences->Java->Code Style->Formatter  在右边窗口中找到Edit ·找到Lin ...