服务器(4)--搭建Solr集群+搭建Zookeeper集群(上篇)

来源:互联网 发布:张艺兴网络剧 编辑:程序博客网 时间:2024/06/05 09:42


背景:上一篇文章重点介绍了一下单机版的Solr搭建过程以及中文分析器的配置,这篇文章则重点介绍一下Solr集群的搭建步骤,以及Zookeeper集群的搭建步骤。由于搭建过程比较繁琐,所以分为两篇介绍,上篇介绍Zookeeper集群的搭建,下篇介绍Solr集群的搭建。


一、整体集群结构




二、Zookeeper


    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
    ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
    ZooKeeper包含一个简单的原语集,提供Java和C的接口。
    ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。


三、Zookeeper基本运转流程


1、选举Leader。
2、同步数据。
3、选举Leader过程中算法有很多,但要达到的选举标准是一致的。
4、Leader要具有最高的执行ID,类似root权限。
5、集群中大多数的机器得到响应并follow选出的Leader。


四、Zookeeper作用


http://blog.csdn.net/tycoon1988/article/details/38866395

1、集群管理与Master选举
    主从的管理、负载均衡、高可用的管理。集群的入口。Zookeeper必须是集群才能保证高可用。Zookeeper有选举和投票的机制。集群中至少应该有三个节点。
2、配置文件的集中管理,负载均衡
    搭建solr集群时,需要把Solr的配置文件上传zookeeper,让zookeeper统一管理。每个节点都到zookeeper上取配置文件。
3、分布式锁,分布式队列
4、命名服务


四、Zookeeper集群搭建


第一步:需要把zookeeper的安装包上传到服务器。


第二步:把zookeeper解压。


第三步:新建solr-cloud目录,把zookeeper向/usr/local/solr-cloud目录下复制三份。


第四步:配置zookeeper。
       1、在zookeeper01目录下创建一个data文件夹。

       2、在data目录下创建一个myid的文件
       3、Myid的内容为1(02对应“2”,03对应“3”)

       4、Zookeeper02、03以此类推。
       5、进入conf文件,把zoo_sample.cfg文件改名为zoo.cfg

       6、修改zoo.cfg,把dataDir=属性指定为刚创建的data文件夹。

       7、修改zoo.cfg,把clientPort指定为不冲突的端口号(01:2181、02:2182、03:2183)

       8、在zoo.cfg中添加如下内容:
           server.1=192.168.25.132:2881:3881
           server.2=192.168.25.132:2882:3882
           server.3=192.168.25.132:2883:3883



第五步:启动zookeeper。
Zookeeper的目录下有一个bin目录。使用zkServer.sh启动zookeeper服务。
启动:./zkServer.sh start
关闭:./zkServer.sh stop
查看服务状态:./zkServer.sh status



五、友情链接


《服务器(5)--搭建Solr集群+搭建Zookeeper集群(下篇)》