首页 > 解决方案 > 清除kafka主题后如何返回原始日志保留

问题描述

我们有 3 台 kafka 机器版本 - 0.10.0.2.6

我们要清除所有 kafka 主题中的所有数据文件(完全清除所有数据)

此操作的 CLI 应该是(应该从动物园服务器运行)

kafka-topics.sh --zookeeper localhost:2181 --alter --topic Topic1 --config retention.ms=1000
kafka-topics.sh --zookeeper localhost:2181 --alter --topic Topic2 --config retention.ms=1000
kafka-topics.sh --zookeeper localhost:2181 --alter --topic Topic3 --config retention.ms=1000
kafka-topics.sh --zookeeper localhost:2181 --alter --topic Topic4 --config retention.ms=1000
.

. .

由于我们暂时将主题的保留时间更新为一秒(1000 毫秒)

那么如何恢复之前的原始保留!

注意 - log.retention.hours = 168(来自 ambari GUI),这是原始值

那么如何在所有主题上返回原始值(168小时)?清除所有主题后?

主题清单

/usr/hdp/2.6.0.3-8/kafka/bin/kafka-topics.sh  --list --zookeeper localhost:2181
__consumer_offsets 
_schemas
hrtfsa.polr.mdr.initial
hrtfsa.polr.pri.content_analysis
hrtfsa.polr.pri.decoded
hrtfsa.polr.pri.enriched.suspected_relation
hrtfsa.polr.pri.id_correlation
hrtfsa.polr.pri.processed
hrtfsa.polr.suspected_relations
hrtfsa.monitoring.heartbeat

我发现了这个(https://gist.github.com/dmitz/47e230b35d84df900c2d57370f4e85b2

清除主题:

kafka-topics --zookeeper <zookeeper_address> --alter --topic <topic_name> --config retention.ms=1000

返回保留的原始值:

kafka-topics --zookeeper <zookeeper_address> --alter --topic <topic_name> --delete-config retention.ms

这对版本 0.10.0.2.6 是否正确?

标签: apache-kafkapurge

解决方案


推荐阅读