我一直面临一个问题,kafka集群上多个主题的一些分区在isr(in sync replica)集中没有前导,甚至没有副本。
对于特定代理id-5的所有分区都发生了这种情况。
topic: topic1 partition: 2 leader: -1 replicas: 5 isr:
topic: topic1 partition: 8 leader: -1 replicas: 5 isr:
topic: topic1 partition: 14 leader: -1 replicas: 5 isr:
topic: topic2 partition: 1 leader: -1 replicas: 5 isr:
topic: topic2 partition: 8 leader: -1 replicas: 5 isr:
topic: topic2 partition: 15 leader: -1 replicas: 5 isr:
topic: topic3 partition: 1 leader: -1 replicas: 5 isr:
topic: topic3 partition: 8 leader: -1 replicas: 5 isr:
topic: topic3 partition: 15 leader: -1 replicas: 5 isr:
我尝试了复制工具来手动将代理分配给这些分区,但没有起到任何作用。因为它们都不在isr集合中。
不幸的是,这些主题的复制因子是1。但对于复制因子较高的主题,问题仍然存在。在那里,前导已被分配给下一个首选副本,但即使经过很长时间(天),损坏的代理上的副本也不会移动到isr集,并且分区的日志大约为100。
topic: topic4 partition: 1 leader: 6 replicas: 5,6 isr: 6
对于同一主题,leader不是broker 5(损坏的broker)的分区broker 5仍然在isr集中。
topic: topic4 partition: 0 leader: 4 replicas: 4,5 isr: 4,5
另一个观察结果是,损坏的代理在其信息日志中有主题创建日志,每分钟都非常频繁地打印
[2014-12-09 13:07:27,878] INFO Topic creation { "partitions":{ "0":[ 4, 3 ], "1":[ 5, 4 ] }, "version":1 } (kafka.admin.AdminUtils$)
尽管集群上没有创建新主题。
有人遇到过类似的问题吗?我该怎么修?
Kafka版本0.8.1
暂无答案!
目前还没有任何答案,快来回答吧!