在经纪人kafka中标记为删除消息

时间:2018-04-17 08:27:26

标签: apache-kafka confluent-kafka

为什么在使用此命令删除Kafka中的一个主题时:

/opt/kafka/confluent-4.0.0/bin/kafka-topics --zookeeper 109.169.xxx.xx:2181  --delete --topic test

再次看到主题列表,出现此消息?

test - marked for deletion

2 个答案:

答案 0 :(得分:2)

在Kafka中,主题删除是异步的。当您使用kafka-topics运行--delete工具时,您只是将主题标记为要删除。

实际删除在大多数情况下不久发生,但取决于群集的状态,可能会延迟。

如果卡住,弹跳控制器通常会有所帮助。

答案 1 :(得分:0)

如果很长一段时间后您的主题未被删除,请确保delete.topic.enable中的server.properties设置为true(尽管汇总4.0.0附带此配置)。如果您仍然面临同样的问题,可以通过使用

登录Zookeeper来手动删除主题
zookeeper-shell localhost:2181

现在您可以使用

删除主题
rmr /brokers/topics/{topic_name}
rmr /admin/delete_topics/{topic_name}

请注意,在登录ZK之前,您可能需要从Kafka代理机器中删除主题文件夹才能手动删除主题。