前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分布式搜索之搭建Solrcloud(Solr集群)

分布式搜索之搭建Solrcloud(Solr集群)

作者头像
赵小忠
发布2018-01-24 19:05:33
1.3K0
发布2018-01-24 19:05:33
举报
文章被收录于专栏:禁心尽力

Solrcloud介绍:

  SolrCloud(solr集群)是Solr提供的分布式搜索方案

  当你需要大规模,容错,分布式索引和检索能力时使用SolrCloud。

  当索引量很大,搜索请求并发很高时,同样需要使用SolrCloud来满足这些需求。

  不过当一个系统的索引数据量少的时候是没有必要使用SolrCloud的。

  SolrCloud是基于Solr和Zookeeper的分布式搜索方案。它的主要思想是使用Zookeeper作为SolrCloud集群的配置信息中心,统一管理solrcloud的配置,比如solrconfig.xml和schema.xml。

Solrcloud特点功能:

1)集中式的配置信息

  2)自动容错

  3)近实时搜索

  4)查询时自动负载均衡

Solrcloud的结构:

solrcloud为了降低单机的处理压力,需要由多台服务器共同来完成索引和搜索任务。实现的思路是将索引数据进行Shard分片,每个分片由多台服务器共同完成,当一个索引或搜索请求过来时会分别从不同的Shard的服务器中操作索引。solrcloud是基于solr和zookeeper部署,zookeeper是一个集群管理软件,solrcloud需要由多台solr服务器组成,然后由zookeeper来进行协调管理。

由于solrcloud一般都是解决大数据量、大并发的搜索服务,所以搭建solrcloud之前,首先需要搭建zookeeper注册中心集群。

1)、搭建zookeeper集群步骤:需要三台zookeeper、分别是zk1、zk2、zk3,对应的端口分别为2281、2282、2283。

第一步:安装jdk环境,因为zookeeper是使用Java语言编写的;

第二步:准备zookeeper-3.4.6.tar.gz压缩包,解压并修改目录名称为zk1

第三步:进入zk1/conf目录,将zoo_sample.cfg文件名称改为zoo.cfg

第四步:修改zoo.cfg文件,配置集群信息(俩个截图信息都是配置在zoo.cfg文件中)

第五步:在dataDir(对应zoo.cfg配置文件中的目录结构)目录下创建myid文件,文件内容为1,对应server.1中的1。

第六步:拷贝zk1,复制两个目录zk2、zk3。并修改zoo.cfg和myid两个文件。

第七步:编写俩个脚本文件,分别启动zookeeper集群和查看集群中各个服务的状态。

 2)、搭建solrcloud集群步骤:

第一步:复制4个单机版solr服务对应的tomcat,并分别修改端口为:8280、8380、8480、8580。

第二步:复制4个solrhome,分别为solrhome8280、solrhome8380、solrhome8480、solrhome8580。一个solr实例对应一个solrhome。

第三步:修改每个solr服务对应的Tomcat容器中solr项目的web.xml文件中的内容(目录结构为/usr/local/solrcloud/tomcat8280/webapps/solr/WEB-INF)

第四步:修改每个solrhome下的solr.xml,指定对应solr服务的tomcat的ip和端口。

第五步:设置tomcat的启动参数,在每个tomcat目录下的bin/catalina.sh,添加以下内容:

第六步:将solr配置文件上传到zookeeper中,进行统一管理,进入到/root/soft/solr-4.10.3/example/scripts/cloud-scripts目录中执行zkcli.sh命令:

./zkcli.sh   -zkhost   192.168.136.135:2281,192.168.136.135:2282,192.168.136.135:2283   -cmd   upconfig   -confdir   /usr/local/solrcloud/solrhome8280/collection1/conf   -confname   myconf(每个ip地址之间用逗号分隔)

第七步:编写脚本文件启动所有的solr服务

第八步:访问部署的solr集群中任意的端口服务

第九步:solrcloud搭建完毕。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-02-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档