删除KAFKA中的TOPIC方法
步骤一。删除topic,慎用,只会删除zookeeper中的元数据,消息文件须手动删除
(a)bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper node01:2181 --topic topicname(如命令如果报错,可能因为是版本的问题,也可以单独执行下面的命令(b)方法)
(b)bin/kafka-topics.sh --delete --zookeeper host:port --topic topicname
步骤二。消息文件手动删除 topic,
(1)删除日志目录下的topic相关文件 (2)删除zookeeper里的数据 登录zookeeper客户端: cd $ZOOKEEPER_HOME bin/zkCli.sh 删除 ls /config/topics/topicname 和 ls /brokers/topics/topicname 以上两步全执行才会彻底删除
如:删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs"),相关topic目录删除zookeeper (1)cd $ZOOKEEPER_HOME bin/zkCli.sh .(2)rmr /config/topics/topicname和rmr /brokers/topics/topicname 相关的topic
附:kafka 删除topic 提示marked for deletion
并没有真正删除,如果要真正删除
在每一台机器中的kafka安装目录/config/server.properties 文件加入 delete.topic.enable=true
最后所有机器重新启动kafka