kafka主题(topic)数据保留时间设置

kafka主题(topic)消息清理记录

服务器磁盘试用率超出80%,通过巡检查看是由于kafka的log目录下占用较多,命令查看当前目录下的磁盘试用情况。这样我们就列出当前目录下占用最多的10个文件或目录。

cpp 复制代码
du -ah --max-depth=1 . | sort -hr | head -n 10

比较明显的看出,是kafka主题占用较多,通过去topic中查看发现数据文件保存时间已经超出3个月的时间,但是在kafka下的config/server.properties配置文件中

c 复制代码
log.retention.hours=168

已经配置为了7天。但是没有生效。

怀疑可能是主题在创建是进行过独立设置,于是我们进行排查。

cpp 复制代码
bin/kafka-configs.sh --zookeeper 172.0.0.1:2181 --describe --entity-type topics --entity-name iot_monitor

查看主题保留数据时间,输出内容为。

c 复制代码
Configs for topic 'iot_monitor' are max.message.bytes=5242880,retention.ms=15552000000`

可以看到主题实际的数据过期时间为180 天(≈6 个月) 。

于是我们开始手动设置

c 复制代码
./kafka-configs.sh --zookeeper 172.0.0.1:2181(这里要修改为你实际的zk地址) --alter --entity-type topics --entity-name iot_monitor --add-config retention.ms=604800000

设置完成之后,可以再通过上次执行的命令进行查看。2-3分钟之后,我们再进行查看磁盘空间的大小,以及主题的数据保留时间发现生效了。不过这里的生效只是零时,当重启kafka之后就会失效。

相关推荐
闪电悠米9 小时前
黑马点评-Redis 消息队列-03_stream_consumer_group
开发语言·数据库·redis·分布式·缓存·junit·lua
折哥的程序人生 · 物流技术专研11 小时前
《Java 100 天进阶之路》第95篇:消息队列基础(RocketMQ/Kafka)(2026版)
java·面试·kafka·rocketmq·java-rocketmq·求职招聘
z落落13 小时前
C# 事件(Event)+自定义带参数事件例子
开发语言·分布式·c#
彼岸星光ぐ>13 小时前
Windows系统下Kafka KRaft模式配置与启动教程
kafka
我是一颗柠檬14 小时前
【Java项目技术亮点】分库分表+数据路由策略:单表5000万后的架构升级方案
java·开发语言·分布式·架构
半夜修仙15 小时前
RabbitMQ中如何保证消息的可靠性传输
java·分布式·中间件·rabbitmq·github·java-rabbitmq
小二·18 小时前
Redis 7 分布式缓存架构实战
redis·分布式·缓存
zhuhai_xigedian18 小时前
源网荷储一体化 vs 传统供用电模式:差异、优势与转型路径
大数据·人工智能·分布式·系统架构·能源
凯源智能19 小时前
屋顶分布式光伏箱变远程测控实战:宝鸡法士特项目高效交付解析
分布式
Amy1870211182321 小时前
东南亚智慧物流园区的“隐形守护者”:有源滤波柜如何驯服变频器5/7次谐波
分布式·能源