zoukankan      html  css  js  c++  java
  • zookeeper 在线扩容缩容

    目标:扩容过程中,zookeeper 集群对外提供服务正常

    当前集群状态

        集群由3个节点构成,每个节点的状态如下:

       节点1:角色=follower,myid=1,端口=2181

     
     

    节点2:角色=follower,myid=2,端口=2182

     
     

    节点3:角色=leader,myid=3,端口=2183

     
     

    集群在线扩展

    的节点数由3个扩展至5个,新增节点4 、节点5 ,对应的zoo.cfg文件如下:

     
     

    节点4:完成相关配置后,启动对应zk实例,确认启动ok,验证实例状态

     
     

    节点5:完成相关配置后,启动对应zk实例,确认启动ok,验证实例状态

     
     

    在leader节点上查看目前状态同步的follower数,确认新增节点已经成功加入集群

     
     

    确认新增节点加入集群后,滚动更新原有集群的配置,并重启,这里需要注意,在重启follwer节点的时候并无任何影响,不过在重启leader节点的时候,这个时候会触发一次新的leader选举,zxid最新的默认优先当选新的leader,当zxid相同,myid最大的优先当选新的leader

    滚动重启后,节点5的myid最大,荣升为新的集群leader。

    zookeeper集群缩容

       目标:缩容过程中,确保zookeeper集群对外提供服务正常。

    集群缩容

      将目前的5个节点缩小至3个,将节点1、节点2 下线,该两个节点都是follower

      更新节点3、4、5的配置,并重启,这里先处理follower角色的节点,follower节点的重启无任何影响;更新leader配置并重启会触发一次leader的重新选举



    作者:陈先生家的园丁
    链接:https://www.jianshu.com/p/26ddaf688a4f

  • 相关阅读:
    C++模板的声明与实现分离 编译错误详解
    C语言中数据类型的隐式转换
    UNIX 高手的 10 个习惯
    linux 信号量
    引用与数组
    Linux 的变量命名规则
    .bash_profile和.bashrc的区别(如何设置生效
    URAL 1053 Pinocchio
    URAL 1040 Airline Company
    URAL 1045 Funny Game
  • 原文地址:https://www.cnblogs.com/myf008/p/14462407.html
Copyright © 2011-2022 走看看