kafka彻底删除topic

如果只是用kafka-topics.sh的delete命令删除topic,会有两种情况:

  1. 如果当前topic没有使用过即没有传输过信息:可以彻底删除
  2. 如果当前topic有使用过即有过传输过信息:并没有真正删除topic只是把这个topic标记为删除(marked for deletion)。

要彻底把情况2中的topic删除必须把kafka中与当前topic相关的数据目录和zookeeper与当前topic相关的路径一并删除。

相关组件的版本

zookeeper: 3.4.6

kafka: 0.9.0.0

 

这里假设要删除的topic是test,kafka的zookeeper root为/kafka

删除kafka相关的数据目录

数据目录请参考目标机器上的kafka配置:server.properties -> log.dirs=/var/kafka/log/tmp

su rm -r /var/kafka/log/tmp/test*

 

删除kafka topic

/home/kafka/bin/kafka-topics.sh --delete --zookeeper HadoopMaster:2181/kafka --topic test

 

删除zookeeper相关的路径

  • 打开zookeeper client
/home/ZooKeeper/bin/zkCli.sh
  • 执行下面的命令

把test替换成你要删除的topic

#删除topic test的consumer group,如果有消费记录的话
rmr /kafka/consumers/test-group
rmr
/kafka/config/topics/test rmr /kafka/brokers/topics/test rmr /kafka/admin/delete_topics/test

 

完成

重启zookeeper和kafka可以用下面命令查看相关的topic还在不在:

/home/kafka/bin/kafka-topics.sh --list --zookeeper HadoopMaster:2181/kafka

 

转载请注明出处:http://www.cnblogs.com/keitsi/p/5580686.html

posted @   keitsi  阅读(9780)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示