创建后,Kafka主题无法分配领导者

时间:2018-12-03 08:01:41

标签: apache-kafka

我使用的是kafka主题,在我的应用程序中也使用了元数据。通过删除与该主题相对应的目录,我从Zookeeper外壳程序中删除了该主题。再次创建主题之后,我描述了该主题,发现没有领导者被分配给这个新创建的主题。在使用者中,我可以看到重复的日志打印LEADER_NOT_AVAILABLE。关于我在做什么错的任何原因?或者也许有一种方法可以删除与我不知道的与kafka主题相关的元数据?预先感谢!

1 个答案:

答案 0 :(得分:0)

直到最近,在Kafka中删除主题并不是一件容易的事。通常,您不应尝试通过在Zookeeper中删除元数据来删除Kafka主题。您应该始终使用随附的命令行实用程序。

首先,您需要确保所有经纪人的server.properties文件中都启用了删除主题,并在需要时进行滚动重启:

delete.topic.enable=true

重新启动代理以启用主题删除后,应使用命令行实用程序发出delete命令:

./kafka-topics.sh —zookeeper <zookeeper_host>:2181 —delete —topic <topic_name>

如果此时仍然卡住,请尝试从zookeeper shell运行以下两个命令以确保并删除该特定主题的所有元数据:

rmr /brokers/topics/<topic_name>
rmr /admin/delete_topics/<topic_name>

此处有更多详细信息:

https://medium.com/@contactsunny/manually-delete-apache-kafka-topics-424c7e016ff3