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

时间:2022-02-07 22:50:32

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(Solr集群)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 2)、搭建solrcloud集群步骤:

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

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

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

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

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

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

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

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

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

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

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

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

./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服务

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

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

分布式搜索之搭建Solrcloud(Solr集群)第九步:solrcloud搭建完毕。

分布式搜索之搭建Solrcloud(Solr集群)的更多相关文章

  1. Solrcloud(Solr集群)

    Solrcloud(Solr集群) Solrcloud介绍: SolrCloud(solr集群)是Solr提供的分布式搜索方案. 当你需要大规模,容错,分布式索引和检索能力时使用SolrCloud. ...

  2. SolrCloud(solr集群+zookeeper集群)

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

  3. solr集群solrCloud的搭建

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

  4. solr集群的搭建

    solrCloud 昨天随手写了个solr单机版的搭建,今天准备写一个solr集群的搭建!1.solr集群只要环境配置正确还是比较简单的环境:CentOS-6.4-i386-bin-DVD1.isoj ...

  5. Solr集群(即SolrCloud)搭建与使用

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

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

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

  7. solr集群SolrCloud(solr+zookeeper)windows搭建

    SolrCloud是什么 参考 solrCloud官网介绍 http://lucene.apache.org/solr/guide/6_6/solrcloud.html Apache Solr 可以设 ...

  8. 搜索服务Solr集群搭建 使用ZooKeeper作为代理层

    上篇文章搭建了zookeeper集群 那好,今天就可以搭建solr搜服服务的集群了,这个和redis 集群不同,是需要zk管理的,作为一个代理层 安装四个tomcat,修改其端口号不能冲突.8080~ ...

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

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

随机推荐

  1. Html5浏览器缓存 sessionStorage 与 localStorage

    一.sessionStorage: 浏览关闭会话结束就被清除:(不能跨页面) localStorage:永久保存: 二.使用 var storage = window.sessionStorage; ...

  2. 使用SecureRandom类替代Random类

    java.util.Random 产生确定的值可能被恶意的程序预测到. java.security.SecureRandom 产生不确定的随机数不能被预测到. 所以优先使用java.security. ...

  3. java基础-注解Annotation原理和用法

    在很多java代码中都可以看到诸如@Override.@Deprecated.@SuppressWarnings这样的字符,这些就是注解Annotation.注解最早在jdk5中被引入,现在已经成为j ...

  4. MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具

      MySQL  Workbench是一款专为MySQL设计的ER/数据库建模工具.它是著名的数据库设计工具DBDesigner4的继任者.你可以用MySQL  Workbench设计和创建新的数据库 ...

  5. Yii前台后台登录混淆问题

    我们在用yii开发项目时候,如果前后台使用modules实现 那么 做登录时候用户名就会出现前后台登录混淆的事情 于是可以在adminModule.php文件中做个设置 public function ...

  6. PyCharm 服务器激活地址

    http://www.cnblogs.com/littlehb/p/7784517.html

  7. TCP编程的迷惑

    server : ip -- 192.168.96.132 client: ip--192.168.96.131 在服务端,accept函数的其中一个入参是listen-socket,会返回一个新的c ...

  8. MongoDb 物理位置应用实现

    1代码实现 官方驱动2.7版本 1.1范围查找 /// <summary> /// 半径范围查找位置信息 /// </summary> /// <param name=& ...

  9. 同一页面的两个Iframe获取数据

    首先页面: <td style="width: 50%" valign="top"> <iframe name="xxx" ...

  10. sql日志

    这个像线程输出一样,并不是顺序的,主要靠线程名称来看.比如我13线程执行了一条语句. 第一条:蓝字那条就是我执行的语句. 第二条:368,thread-13那条就是我的参数. 第三条:369,thre ...