kafka删除topic消息的三种方式
方法一:快速配置删除法(确保topic数据不要了)
1.kafka启动之前,在server.properties配置delete.topic.enable=true
2.执行命令bin/kafka-topics.sh --delete --topic test --zookeeper zk:2181或者使用kafka-manager集群管理工具删除
注意:如果kafka启动之前没有配置delete.topic.enable=true,topic只会标记为marked for deletion,加上配置,重启kafka,之前的topick就真正删除了。
方法二:设置删除策略(确保topic数据不要了)
1.kafka启动之前,在server.properties配置
#日志清理策略选择有:delete和compact主要针对过期数据的处理,或是日志文件达到限制的额度,会被 topic创建时的指定参数覆盖
log.cleanup.policy = delete
#注意:下面有两种配置,一种是基于时间的策略,另种是基于日志文件大小的策略,两种策略同是配置的话,只要满足其中种策略,则触发Log删除的操作。删除操作总是先删除最旧的日志消息在Kafka中保存的时间,4小时之前的1og, 可以被删除掉,根据policy处理数据。
log.retention.hours=4
#当剩余空间低于log.retention.bytes字节,则开始删除
log.retention.bytes=37580963840
#每隔1000ms, logcleaner线程将检查一次,看是否符合上述保留策略的消息可以被删除
log.retention.check.interval.ms=1000
方法三:手动删除法(不推荐)(确保topic数据不要了)
前提:不允许更改server.properties配置
1.删除zk下面topic(test)
启动bin/zkCli.sh
ls /brokers/topics
rmr /brokers/topics/test
ls /brokers/topics
查topic是否删除:bin/kafka-topics.sh --list --zookeeper zk:2181
2.删除各broker下topic数据,默认目录为/tmp/kafka-logs
原文链接:https://blog.csdn.net/yiyihuazi/article/details/113103290
版权归原作者 爱折腾的小土豆 所有, 如有侵权,请联系我们删除。