5-zookeeper集群搭建

1.集群是通过选举模式来选出主节点,其他节点是从节点。因此集群的节点数应该为奇数个。至少3个节点组成一个集群。dataDir目录下需要创建一个myid的文件,文件内容即为该节点的id值。conf目录下zoo.cfg配置最末端添加集群的配置server.id值=zk节点的IP地址:集群的通信端口:集群的选举端口。

2.这里演示一个伪分布式的集群,所谓伪分布式即3个ZK节点都在一台服务器上,真实环境可能节点分布在不同的服务器上。但是集群的原理是相同的,配置的方式也是相似的。

3.拷贝zookeeper文件夹2份,分别命名为zookeeper2和zookeeper3.

    cp -r zookeeper zookeeper2

    cp -r zookeeper zookeeper3

4.修改zookeeper的配置信息

    4.1在dataDir目录下创建一个myid的文件,并编辑内容为1。

    44a6ce10152039b0f3831545868dcfff8b2.jpg

    4.2在conf目录下编辑zoo.cfg文件,在最下方添加集群配置

    073f8c872941867075b1f0924596703b4a0.jpg

5.修改zookeeper2的配置信息

    5.1在zookeeper2对应的dataDir目录下,创建myid的文件并填写内容为2.

    fab985100aa9dee70247164edaec0af0f78.jpg

    5.2修改zookeeper2对应conf目录下的zoo.cfg文件,需要修改dataDir、dataLogDir的路径(此时配置为zookeeper2的目录),修改客户端连接的端口号(因为在同一台服务器上,所以必须改端口号,如果在不同的服务器上则可以保持一致。),并在末尾添加集群的配置信息。

    1293e83182d4a93d08d84cbe4e882b96fb3.jpg

6.修改zookeeper3的配置信息

    6.1在zookeeper3对应的dataDir目录下,创建myid的文件并填写内容为3.

    fb1010d01ee4f888f6a64e98bc913aed1a2.jpg

    6.2修改zookeeper3对应的conf目录下zoo.cfg文件,修改的地方同zookeepe2的修改方式一样,下图用红圈标注出来了。

    eb4c10974b2d9fdf1f4046dac472c4aa794.jpg

    上述的涉及3个指令: pwd(打印出当前路径);ll(显示当前文件列表);cat(打印出文件内容)

7.配置修改完毕,分别启动3个ZK节点(为了避免重新启动可以先stop,再start)。

    7.1启动节点一    

        cd  /usr/local/zookeeper/bin

         ./zkServer.sh stop

        ./zkServer.sh start

    7.2启动节点二  

        cd  /usr/local/zookeeper2/bin

         ./zkServer.sh stop

        ./zkServer.sh start

    7.3启动节点三

        cd  /usr/local/zookeeper3/bin

         ./zkServer.sh stop

        ./zkServer.sh start

8.查看当前节点的状态,进入各个节点的bin目录下,通过 ./zkServer.sh status 查看。

    3213041f05e6c6c22cabf294966c6f57e01.jpg

    9f9be4c92399d7ebcb427081793503c3440.jpg

    a695f6a3accd36dc91d41712ab0e34f959c.jpg

    Mode表示当前ZK节点的角色,leader为主节点,follower为从节点。从上述的3张图可以看出zookeeper2节点为主节点,其他为从节点。

9.测试数据的一致性

    9.1连接节点一,创建节点cluster并设置数据为cluster

    ./zkCli.sh -server localhost:2181   

    create /cluster cluster 

    9.2连接节点二并查看数据

    ./zkCli.sh -server localhost:2182

    ls  /

    get /cluster

    9.3连接节点三并查看数据

    ./zkCli.sh -server localhost:2183

    ls  /

    get /cluster

三个节点数据一致则说明集群数据同步成功,否则需要排查具体的报错信息。

转载于:https://my.oschina.net/yi16/blog/2245429

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值