![](/img/trans.png)
[英]Assign leader to partitions of kafka topic while creating topics in nodeJS
[英]Kafka topic partitions with leader -1
我注意到我的卡夫卡主题中很少有人表现得我无法解释清楚。
例如:
./kafka-topics.sh --describe --zookeeper ${ip}:2181 --topic test
Topic:test PartitionCount:3 ReplicationFactor:1 Configs:retention.ms=1209600000
Topic: test Partition: 0 Leader: 1 Replicas: 1 Isr: 1
Topic: test Partition: 1 Leader: -1 Replicas: 2 Isr: 2
Topic: test Partition: 2 Leader: 3 Replicas: 3 Isr: 3
我特别关注Partition:1显示Leader'-1'。
我还注意到,由于“超时”,大约1/3的消息产生了这个主题。 我认为这是一个分区没有领导者的结果。
我想知道是否有人深入了解为什么会出现此问题以及如何在不丢失数据的情况下从生产方案中恢复?
编辑 :我正在使用基于librdkafka的python生成器; 我看到的错误消息是Message failed delivery: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}
很可能你的第二个卡夫卡经纪人倒闭了。 要检查有效的Kafka经纪商,您需要运行
./zookeeper-shell.sh localhost:2181 <<< "ls /brokers/ids"
输出应类似于下面的输出:
Connecting to localhost:2181
Welcome to ZooKeeper!
JLine support is enabled
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0] ls /brokers/ids
[0, 1, 2]
[zk: localhost:2181(CONNECTED) 1]
如果第二个代理未在活动代理中列出,那么您需要弄清楚为什么没有启动并运行(日志应该告诉您是否出现问题)。 我还建议增加复制因子,因为您有多代理配置。
这通常表示引导该分区的代理处于脱机状态。 我会检查脱机分区指标以确认这一点,但也要检查代理2当前是否正常运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.