您好,欢迎来到榕意旅游网。
搜索
您的当前位置:首页一文看懂Zookeeper的Leader选举

一文看懂Zookeeper的Leader选举

来源:榕意旅游网

三个核心选举原则:

在讲解Leader选举前先了解一下Zookeeper节点4种可能状态和事务ID概念。

1、Zookeeper节点状态

LOOKING:寻找Leader状态,处于该状态需要进入选举流程
LEADING:领导者状态,处于该状态的节点说明是角色已经是Leader
FOLLOWING:跟随者状态,表示Leader已经选举出来,当前节点角色是follower
OBSERVER:观察者状态,表明当前节点角色是observer

2、事务ID

ZooKeeper状态的每次变化都接收一个ZXID(ZooKeeper事务id)形式的标记。ZXID是一个64位的数字,由Leader统一分配,全局唯一,不断递增。
ZXID展示了所有的ZooKeeper的变更顺序。每次变更会有一个唯一的zxid,如果zxid1小于zxid2说明zxid1在zxid2之前发生。

3、Zookeeper集群初始化启动时Leader选举

若进行Leader选举,则至少需要两台机器,这里选取3台机器组成的服务器集群为例。
初始化启动期间Leader选举流程如下图所示。

4、Zookeeper集群运行期间Leader重新选

在Zookeeper运行期间,如果Leader节点挂了,那么整个Zookeeper集群将暂停对外服务,进入新一轮Leader选举。
假设正在运行的有ZK1、ZK2、ZK3三台服务器,当前Leader是ZK2,若某一时刻Leader挂了,此时便开始Leader选举。选举过程如下图所示。

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- nryq.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务