kafka日志保留时间设置无效问题

背景

看了网上很多文档,说是要设置log.retention.hour等等参数。
默认是保留7天,但我实测下来发现日志根本没有任何变化。
目前我们的kafka,一天就有400多个G,保留七天大大增加了我们的服务器成本。

不生效的设置

#设置日志只保留一个小时的
  "log.retention.hours": 1
#设置大于500M就自动删除
  "log.retention.bytes": "536870912"
#设置日志被标记删除后,保留多久彻底删除,1分钟
  "log.segment.delete.delay.ms": 60000
#设置多久扫描一次要清理的日志
  "log.cleanup.interval.mins": 3

kafka回收原理

kafka只会回收上个分片的数据

配置没有生效的原因就是,数据并没有分片,所以没有回收

kafka什么时候分片?有个参数log.roll.hours

log.roll.hours 设置多久滚动一次,滚动也就是之前的数据就会分片分出去
segment.bytes 设置日志文件到了多大就会自动分片

总结

  "log.retention.hours": 1
  "log.cleanup.policy": "delete"
  "log.retention.bytes": "536870912"
  "log.segment.delete.delay.ms": 60000
  "log.cleanup.interval.mins": 3
  "log.roll.hours": 1
  "segment.bytes": "536870913"
  "log.retention.check.interval.ms": 120000
  "retention.ms": "3600000"
  "retention.bytes": "536870912"

建议
log.roll.hours
retention.ms
log.retention.hours
设置的时间相同

参考文档

https://www.cnblogs.com/skycandy/p/11402214.html
https://kafka.apache.org/documentation/#brokerconfigs

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值