前言
利用kafka命令删除topic不成功。
kafka-topics.sh --zookeeper hadoop111:2181 --delete --topic test
原因&解决方式
1. 配置文件未将delete.topic.enable=true,导致删除命令未及时生效;
解决方式:
第一种:
找到conf目录下server.properties配置文件,修改delete.topic.enable=true,代表删除立即生效;
[ssrs@hadoop111 config]$ pwd
/opt/module/kafka_2.11/config
[ssrs@hadoop111 config]$ vi server.properties
delete.topic.enable=true
修改配置后,需要重启kafka服务;
第二种:
不修改delete.topic.enable=true配置文件的情况下,删除命令执行后,重启kafka服务,也可以使主题删除成功;
2. 配置文件已经设置delete.topic.enable=true,删除命令执行后,还能看到topic名称;
原因:
生产者和消费者并未停止执行,导致虽然删除了topic,但是生产者或者消费者运行时,立刻重新创建了topic,视觉显示删除未成功,此时可以通过消费topic内的数据进行查看,如果之前是带有数据的topic,在执行删除命令后,发现topic内的数据已经消失了。
解决方式:
先停止生产者和消费者的运行,再执行kafka删除命令;