从文档中看,这是一个代理配置,但是细节很薄。
( 1)将此设置为无限期的正确方法是什么?如果我这样做了,我还能手动删除消费者组及其相关的抵消吗?
( 2)我可否将个别的消费者团体设定为不同的保留?
3)我如何看待全球范围内的保留,或某一特定消费者群体的保留?即使我以前没有设置这个,我也可以查看这个并得到一个数字吗?
发布于 2019-06-21 14:53:17
1) 卡夫卡博士提到offsets.retention.minutes的有效值是
1,..。
这意味着您不能设置offsets.retention.minutes=-1,但可以将其设置为相当大的整数,以使偏移量保持较长时间。
2)我假设您是在询问是否可以在主题级别上为offsets.retention.minutes设置不同的值;据我所知,这是不可能的。您只能在代理级别(即在server.properties文件中)修改此配置。
编辑:我担心您无法避免滚动重新启动,因为您不能使用kafka-configs.sh更改offsets.retention.minutes;
> bin/kafka-configs.sh --zookeeper localhost:2181 --entity-type brokers --entity-name 0 --alter --add-config offsets.retention.minutes=200800
Error while executing config command requirement failed: Unknown Dynamic Configuration 'retention.minutes'.
java.lang.IllegalArgumentException: requirement failed: Unknown Dynamic Configuration 'retention.minutes'.
at scala.Predef$.require(Predef.scala:224)
at kafka.server.DynamicConfig$$anonfun$kafka$server$DynamicConfig$$validate$1.apply(DynamicConfig.scala:101)
at kafka.server.DynamicConfig$$anonfun$kafka$server$DynamicConfig$$validate$1.apply(DynamicConfig.scala:100)
at scala.collection.Iterator$class.foreach(Iterator.scala:893)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1336)
at kafka.server.DynamicConfig$.kafka$server$DynamicConfig$$validate(DynamicConfig.scala:100)
at kafka.server.DynamicConfig$Broker$.validate(DynamicConfig.scala:59)
at kafka.admin.AdminUtils$.changeBrokerConfig(AdminUtils.scala:555)
at kafka.admin.ConfigCommand$.alterConfig(ConfigCommand.scala:105)
at kafka.admin.ConfigCommand$.main(ConfigCommand.scala:68)
at kafka.admin.ConfigCommand.main(ConfigCommand.scala)3)因为这是代理级别上的配置,所以可以在server.properties文件中或从代理的日志文件中查看值。例如,
grep offsets.retention.minutes /path/to/your/kafka-broker.log注意,即使您没有配置offsets.retention.minutes,它的值也默认为10080。
https://stackoverflow.com/questions/56705408
复制相似问题