Zookeeper--选举机制--第一次启动
2021-09-06 21:09:38 2 举报
Zookeeper
作者其他创作
大纲/内容
FOLLOWING
follower
0
HOST4启动
LOOKING
HOST1启动
服务器3启动: 发起一次选举。服务器1和服务器2和服务器3各自投自己一票。 各自投票之后交换选票信息。此时服务器1和2会发现服务器3的myid比自己目前投票推选的大(服务器1),更改选票为推举服务器3。 服务器1和服务器2改投之后服务器3之后,服务器1和2为零票,服务器3为3票。此时已经有选票数量过半,Leader产生,Leader为服务器3。 服务器1和服务器2的状态从LOOKING改为FOLLOWING 服务器3的状态为LEADING
1
Server1myid=1
Server4myid=4
HOST2启动
4
Server3myid=3
票数
Zookeeper Service
Server2myid=2
HOST3启动
服务器1启动: 发起一次选举。服务器1投自己一票。此时服务器1票数为一票,不够半数以上(3票)。 选举无法完成,服务器1状态为LOOKING
LEADING
3
假设有五台服务器
HOST5过程同上,省略。。。。
2
服务器2启动: 发起一次选举。服务器1和服务器2各自投自己一票。 各自投票之后交换选票信息。此时服务器1会发现服务器2的myid比自己目前投票推选的大(服务器1),更改选票为推举服务器2。 服务器1该投之后,服务器1零票。服务2两票。此时依旧不过半,没有Leader被选举出来。 服务器1和服务器2的状态为LOOKING
SID:服务器ID。用来唯一标识一台机器,Zookeeper集群中的机器,每台机器不能重复。与myid一致ZXID:事务ID。用来标识一次服务状态的变更。在某一时刻,集群中的每台机器的ZXID值不一定完全一致。与Zookeeper服务器对于客户端更新请求的处理逻辑有关Epoch:每个Ldader的任期代号。每投完一次票该数据就会增加。
0 条评论
下一页