假设我有一个由3个经纪人和3个动物园管理员组成的卡夫卡集群。
我有一个主题accountsTopic
,它设置为replication factor of 3
和ISR of 2
。
如果Leader
去世,卡夫卡将选举ISR
担任领导,但第三任(出于争论的缘故,它不是ISR),它将用作当前的ISR。 2节点故障转移设置的领导者?
答案 0 :(得分:3)
领导者去世时会发生什么情况取决于您的配置。
默认情况下,since 0.11仅可以将同步中的一个副本选举为领导者。如果没有副本处于同步状态,则分区将脱机。相比于可用性,这更倾向于一致性。
您可以在代理上设置unclean.leader.election.enable=true
,在这种情况下,如果没有同步副本,则将选择一个不同步副本。这可能导致数据丢失,但有利于可用性。当然,如果某些副本是同步的,它将仍然选择其中之一。