Kafka每个主题retention.bytes和全局log.retention.bytes不起作用

时间:2017-12-22 23:20:11

标签: apache-kafka

我们正在运行kafka 0.11.0的6节点集群。我们设置了一个全局和每个主题的保留字节数,但都没有应用。我没有在日志中看到任何错误,只是没有删除任何错误(按大小;时间保留确实有效)

见下面的相关配置:

./ config / server.properties

# global retention 75GB or 60 days, segment size 512MB
log.retention.bytes=75000000000

log.retention.check.interval.ms=60000

log.retention.hours=1440

log.cleanup.policy=delete

log.segment.bytes=536870912

主题配置(30GB):

[tstumpges@kafka-02 kafka]$ bin/kafka-topics.sh  --zookeeper zk-01:2181/kafka --describe --topic stg_logtopic
Topic:stg_logtopic    PartitionCount:12       ReplicationFactor:3     Configs:retention.bytes=30000000000
        Topic: stg_logtopic   Partition: 0    Leader: 4       Replicas: 4,5,6 Isr: 4,5,6
        Topic: stg_logtopic   Partition: 1    Leader: 5       Replicas: 5,6,1 Isr: 5,1,6
        ...

并且,磁盘使用情况显示一个分区的使用量为910GB!

[tstumpges@kafka-02 kafka]$ sudo du -s -h /data1/kafka-data/*
82G     /data1/kafka-data/stg_logother3-2
155G    /data1/kafka-data/stg_logother2-9
169G    /data1/kafka-data/stg_logother1-6
910G    /data1/kafka-data/stg_logtopic-4

我可以看到分区目录中有很多段日志文件(每个512MB)...发生了什么?!

提前致谢, 雷

1 个答案:

答案 0 :(得分:3)

通过kafka用户邮件列表找到答案。我们显然是在击中kafka bug KAFKA-6030(Integer overflow in log cleaner cleanable ratio computation

升级到v1.0.0已经为我们解决了这个问题!