问题描述:
使用kafka-topics命令执行--delete操作删除topic无效,集群环境的kafka配置项delete.topic.enable=true,执行完删除操作后topic仍然存在,但是该topic分区的leader却会改变,并且zk的admin/delete_topics节点下并没有创建与该topic同名的子节点,通常执行删除操作后,kafka会在zk的admin/delete_topics节点下创建一个与删除topic同名的子节点以标记该topic已经删除。
解决:在zk的admin/delete_topics节点下创建与要删除的topic同名的子节点,kafka便会监听到该删除动作,然后它会自动删除该topic,zk创建节点示例如下:
create /admin/delete_topics/my-topic ""
注意:我们在最后加上“”是为了给这个新建子节点赋予一个空值,以便能够正常创建。