0

我们有3卡夫卡经纪人和主题与40个分区和复制因子设置为1.在一些分区失控的卡夫卡经纪人关闭后,我们看到,它是不可能选出新的领导者(请参阅下面的日志)。最终我们无法读到这个话题。 请注意,如果可以在不改变复制因子大于1的情况下幸存这种类型的崩溃。卡夫卡分区领导人选举失败后,不受控制的经纪人关机

我们希望我们的目标数据库具有一致的状态(基于kafka主题的事件创建),所以我们还将参数unclean.leader.election.enable设置为false。撞车后

分区信息:

extenr-topic:1:882091242 
extenr-topic:19:882091615 
extenr-topic:28:882092273 
Error: partition 18 does not have a leader. Skip getting offsets 
Error: partition 27 does not have a leader. Skip getting offsets 
Error: partition 36 does not have a leader. Skip getting offsets 

从卡夫卡经纪人例外:

2017-10-09 05:56:50,302 ERROR state.change.logger: Controller 236 epoch 267 initiated state change for partition [extenr-topic,15] from OfflinePartition to OnlinePartition failed 
kafka.common.NoReplicaOnlineException: No broker in ISR for partition [extenr-topic,15] is alive. Live brokers are: [Set(236, 237)], ISR brokers are: [235] 
at kafka.controller.OfflinePartitionLeaderSelector.selectLeader(PartitionLeaderSelector.scala:66) 
at kafka.controller.PartitionStateMachine.electLeaderForPartition(PartitionStateMachine.scala:342) 
at kafka.controller.PartitionStateMachine.kafka$controller$PartitionStateMachine$$handleStateChange(PartitionStateMachine.scala:203) 
at kafka.controller.PartitionStateMachine$$anonfun$triggerOnlinePartitionStateChange$3.apply(PartitionStateMachine.scala:118) 
at kafka.controller.PartitionStateMachine$$anonfun$triggerOnlinePartitionStateChange$3.apply(PartitionStateMachine.scala:115) 
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) 
at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:99) 
at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:99) 

有也是继日志

2017-10-09 04:11:25,509 ERROR state.change.logger: Broker 235 received LeaderAndIsrRequest with correlation id 1 from controller 236 epoch 267 for partition [extenr-topic,36] but cannot become follower since the new leader -1 is unavailable. 

回答

0

分区有1为replication.factor将成为错误当他们的领导者崩溃/关闭时离线,因为没有其他人r可用副本接管。

如果可用性对您很重要,我建议增加复制因子。推荐CONFIGS [1]高可用性replication.factor设置为3,min.insync.replicas设置为2

1:http://kafka.apache.org/documentation/#brokerconfigs

+0

谢谢你的答案。我们增加了replication.factor,我们正在观察这个集群。 – andrzej

相关问题