Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十六)Structured Streaming:WARN clients.NetworkClient: Error while fetching metadata with correlation id 1 : {my-topic=LEADER_NOT_AVAILABLE}

问题描述:

我之前使用kafka的命令删除了改topic:
./kafka-topics.sh --delete --zookeeper 【zookeeper server】  --topic 【topic name】

kafka是启用了自动创建topic功能的(之气那测试过可以使用),发布消息到该topic上,此时报错,感觉没删除干净,只是标记为删除状态。

抛出异常信息为:

WARN clients.NetworkClient: Error while fetching metadata with correlation id 1 : {my-topic=LEADER_NOT_AVAILABLE}

解决方法:

kafka在zookeeper上存储结构:

Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十六)Structured Streaming:WARN clients.NetworkClient: Error while fetching metadata with correlation id 1 : {my-topic=LEADER_NOT_AVAILABLE}

启动zookeeper的客户工具,删除zookeeper根目录下的brokers目录下的topic目录下的所有东西(这样会把之前建的所有topic都删除)

1)jps查看zk的进程

 QuorumPeerMain

2)查找zk的运行目录:

 ps -ef|grep QuorumPeerMain

3)进入zk的安装目录找打bin/zkClient.sh,并运行它:

4)查看/brokers/topics和/admin/delete_topics下面有什么东西

ls /brokers/topics
ls /admin/delete_topics

此时发现删除的topic在zk的/brokers/topics节点下依然存在。

5)强制删除该topic节点。

rmr /brokers/topics/my-topic
rmr /admin/delete_topics/my-topic

验证程序可以正常运行。

同事说造成整个问题的原因,有可能是默认kafka topic的partition不是brokers的倍数的问题,但暂时未验证。

上一篇:node.js 抓取


下一篇:解决cell循环利用造成的重复勾选