Linux下搭建Zookeeper分布式集群(详细图解演示)

一:实验环境搭建.

      1.1 Linux使用的是CentOS7.3的发行版,Zookeeper的版本是3.4.12.搭建三个节点的集群,是分别在三台虚拟机上配置Zookeeper节点,不是在一台虚拟机上搭建的三个Zookeeper节点的伪集群.分布式集群配置奇数个节点.

      1.2 使用VMware的克隆技术,完成了三个节点的搭建.IP分别是:

          ①:192.168.199.133.

          ②:192.168.199.136.

          ③:192.168.199.137.

     1.3 Java环境检查.(由于是从192.168.199.133这台虚拟机上克隆的,只检查其它两台即可).

           ① 192.168.199.136.

          ② 192.168.199.137.

   1.4 Zookeeper下载.

     ① 192.168.199.133上面下载然后scp至其他两台即可.

     wget    http://mirrors.shu.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz

   ②:分别将压缩包复制到其他两台虚拟机上.(可以提前配置一下免密登录)

   scp /usr/local/zookeeper-3.4.12.tar.gz root@192.168.199.136:/usr/local

  scp /usr/local/zookeeper-3.4.12.tar.gz root@192.168.199.137:/usr/local

   192.168.199.136下/usr/local查看.

   192.168.199.137下/usr/local查看.

  1.5 Zookeeper的解压.

        ①:192.168.199.133下解压.

               tar zxvf zookeeper-3.4.12.tar.gz

               rm -rf zookeeper-3.4.12.tar.gz

      ②:192.168.199.136下解压.

             tar zxvf zookeeper-3.4.12.tar.gz

              rm -rf zookeeper-3.4.12.tar.gz

       ③:192.168.199.137下解压.

              tar zxvf zookeeper-3.4.12.tar.gz

              rm -rf zookeeper-3.4.12.tar.gz

二:Zookeeper集群配置.

     2.1 完成Zookeeper的解压,然后在每个节点Zookeeper目录下创建数据目录zkData.不使用/tmp目录.创建myid.

然后在zkData目录下创建一下myid文件.(指定Server的编号).

          cd zkData

          touch myid

三台机器分别指定为1,2,3.在搭建集群的时候,Zookeeper在启动的时候,会读取里面的数据与zoo.cfg中配置信息进行比较进而判断是哪个Server.

2.2 修改配置文件.(关键)

     ①.修改conf目录下的zoo_sample.cfg为zoo.cfg.(三个都修改).

         mv zoo_sample.cfg zoo.cfg

     ②.修改zoo.cfg文件.

          配置通式:serevr.A=B:C:D.解释如下.

     A:表示这是第几号机器.

     B:表示这台服务器的IP地址.

     C:表示这台机器与集群Leader服务器交换信息的端口.常用2888端口.

     D:如果集群中的Leader服务器挂了,选出一个新的Leader时,这个端口用来和其他服务器进行通信的端口.常用3888端口.

因为是分布式集群搭建,所以可以配置一样的端口,如果是伪集群,在一台机器上搭建时,B就配置为127.0.0.1或localhost.C和D配置均为不同的端口.分布式集群中的每个节点都分布在不同的机器上,每个机器都有自己玩的IP地址,端口也不会被其他节点所占用.

     ③.vim zoo.cfg.(三个节点配置一样的).

          tickTime=2000

          initLimit=10

         syncLimit=5

         dataDir=/usr/local/zookeeper-3.4.12/zkData

         clientPort=1281

        server.1=192.168.199.133:2888:3888
        server.2=192.168.199.136:2888:3888
        server.3=192.168.199.137:2888:3888

三: Zookeeper集群启动.

     3.1 三台机器分别采用后台启动方式启动.一次在相应的bin目录下启动,在启动的过程中也完成了Leader的选举.启动顺序如下

      分别在bin目录下使用sh zkServer.sh start

      ① :192.168.199.133.

    ② 192.168.199.136.

   ③ 192.168.217.137

3.2 查看Zookeeper集群状态.

    分别在启动目录下使用sh zkServer.sh status.

    ①:192.168.199.133

   ②:192.168.199.136

  ③:192.168.199.137.

一次启动三台Zookeeper服务节点,根据leader票选算法,server2为leader.依据各自的投票.(myid,ZXID).半数以上即可.

三 Zookeeper的leader选举算法介绍.

    Leader选举是分布式数据一致性额关键所在.分为服务器启动时选举和服务无法和leader保持连接.

   3.1 推荐这篇文章,写的非常清楚.Leader选举.

   至此完成了Zookeeper的分布式集群搭建,伪分布式就不演示了,比较简单.整个过程还是比较顺利的.

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大道之简

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值