0

当当前的领导者死亡时,控制器从 ISR 中为一个分区选择一个新的领导者。我的理解是这些数据保存在 Zookeeper 中。当 Zookeeper 节点在此写入期间死亡时会发生什么?这是否意味着一些经纪人可能仍然是新领导者选举分区的不同领导者?

我尝试挖掘文档,但找不到任何令人满意的东西。

4

1 回答 1

1

我的理解是这些数据是持久化在 Zookeeper 中的

是的,只要这个 ISR 集发生变化,它就会被持久化到 ZooKeeper。(参考

当 Zookeeper 节点在此写入期间死亡时会发生什么?

Zookeeper 在 quorum 上工作,这意味着集群中的大多数服务器。(见这个答案)(下面的片段)

  1. 对于 3 节点集群,大多数是 2 个节点。因此,您只能容忍 1 个节点同时不同步。

  2. 对于 5 个节点的集群,大多数是 3 个节点。因此,您只能容忍 2 个节点同时不同步。

只要有多数,就会做出决定,因此领导人选举将继续进行。

于 2020-05-09T07:29:22.720 回答