设为首页 收藏本站
查看: 1524|回复: 0

[经验分享] 分布式搜索之搭建Solrcloud(Solr集群)

[复制链接]

尚未签到

发表于 2017-12-19 11:34:21 | 显示全部楼层 |阅读模式
  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来进行协调管理。
DSC0000.png

  由于solrcloud一般都是解决大数据量、大并发的搜索服务,所以搭建solrcloud之前,首先需要搭建zookeeper注册中心集群。
  1)、搭建zookeeper集群步骤:需要三台zookeeper、分别是zk1、zk2、zk3,对应的端口分别为2281、2282、2283。
  第一步:安装jdk环境,因为zookeeper是使用Java语言编写的;
  第二步:准备zookeeper-3.4.6.tar.gz压缩包,解压并修改目录名称为zk1
DSC0001.png

  第三步:进入zk1/conf目录,将zoo_sample.cfg文件名称改为zoo.cfg
  第四步:修改zoo.cfg文件,配置集群信息(俩个截图信息都是配置在zoo.cfg文件中)
DSC0002.png

DSC0003.png

  第五步:在dataDir(对应zoo.cfg配置文件中的目录结构)目录下创建myid文件,文件内容为1,对应server.1中的1。
  第六步:拷贝zk1,复制两个目录zk2、zk3。并修改zoo.cfg和myid两个文件。
   DSC0004.png
  第七步:编写俩个脚本文件,分别启动zookeeper集群和查看集群中各个服务的状态。
   DSC0005.png
DSC0006.png

DSC0007.png

  2)、搭建solrcloud集群步骤:
  第一步:复制4个单机版solr服务对应的tomcat,并分别修改端口为:8280、8380、8480、8580。
   DSC0008.png
  第二步:复制4个solrhome,分别为solrhome8280、solrhome8380、solrhome8480、solrhome8580。一个solr实例对应一个solrhome。
DSC0009.png

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

  第四步:修改每个solrhome下的solr.xml,指定对应solr服务的tomcatip和端口。
   DSC00011.png
  第五步:设置tomcat的启动参数,在每个tomcat目录下的bin/catalina.sh,添加以下内容:
   DSC00012.png
  第六步:将solr配置文件上传到zookeeper中,进行统一管理,进入到/root/soft/solr-4.10.3/example/scripts/cloud-scripts目录中执行zkcli.sh命令
   DSC00013.png
  ./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服务
   DSC00014.png
  第八步:访问部署的solr集群中任意的端口服务
   DSC00015.png 第九步:solrcloud搭建完毕。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-425675-1-1.html 上篇帖子: solr 的 field, copyfield ,dynamic field 下篇帖子: solr添加分词器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表