Controller 发生网络分区(Network Partitioning)时,Kafka 会怎么样?

無名 发表于: 2021-07-27   最后更新时间: 2021-07-27 16:20:07   1,185 游览

Controller 发生网络分区(Network Partitioning)时,Kafka 会怎么样?

发表于 2021-07-27
添加评论

一旦发生Controller网络分区,那么,第一要务就是查看集群是否出现“脑裂”,即同时出现两个甚至是多个Controller组件。这可以根据Broker端监控指标ActiveControllerCount来判断。
不过,通常而言,我们在设计整个部署架构时,为了避免这种网络分区的发生,一般会将broker节点尽可能的防止在一个机房或者可用区。
由于Controller会给Broker发送3类请求,LeaderAndIsrRequest,StopReplicaRequest,UpdateMetadataRequest,因此,一旦出现网络分区,这些请求将不能顺利到达Broker端。
这将影响主题的创建、修改、删除操作的信息同步,表现为集群仿佛僵住了一样,无法感知到后面的所有操作。因此,网络分区通常都是非常严重的问题,要赶快修复。

你的答案

查看kafka相关的其他问题或提一个您自己的问题