即使经纪人都忙了,Kafka首选领导者也会得到更新吗?

问题描述 投票:0回答:1

我正在尝试提供一种kafka监视服务,该服务需要在集群中的每个代理上至少具有一个主题的分区。我最初分配了分区。我已将复制因子设置为1,并且min.insync.replicas也为1,并且我正在使用acks = all的同步生产器进行生产。

分区代理分配最初看起来像这样

Partition 0 : Broker 0 (Leader) , Broker 0 (Preferred Leader) 
Partition 1 : Broker 1 (Leader) , Broker 1 (Preferred Leader) 
Partition 2 : Broker 2 (Leader) , Broker 2 (Preferred Leader) 

[当我尝试杀死代理(例如代理2)时,其领导者是该代理的分区应该并且正在报告“ No Leader”错误。现在,由于我有1个复制,并且只有领导者是同步副本,因此kafka不会重选任何其他代理作为领导者,这是可以预期的,直到这里一切都很好。

此时,分区代理的分配看起来像,

Partition 0 : Broker 0 (Leader) , Broker 0 (Preferred Leader)  
Partition 1 : Broker 1 (Leader) , Broker 1 (Preferred Leader)  
Partition 2 : -1                , Broker 2 (Preferred Leader) 

问题:但是当该代理恢复时,分区的领导者和首选领导者都被更新为其他代理。我不明白这一点,也没想到。那么,我是否缺少任何配置,还是有人遇到过此问题?

分区代理分配是这样的。为什么?

Partition 0 : Broker 0 (Leader) , Broker 0 (Preferred Leader) 
Partition 1 : Broker 0 (Leader) , Broker 0 (Preferred Leader) 
Partition 2 : Broker 0 (Leader) , Broker 0 (Preferred Leader) 
go apache-kafka kafka-producer-api sarama
1个回答
0
投票

[kafka没问题。我发现这是巡航控制系统自我修复,未达到预期的效果(不排除主题)。

© www.soinside.com 2019 - 2024. All rights reserved.