I 已执行
"kafka-consumer-groups --bootstrap-server localhost:9092 --list"
这会导致显示一组:控制台消费者-961
然后我尝试删除此组:
kafka-consumer-groups --bootstrap-server localhost:9092 --delete --group console-consumer-961
但这会导致一个异常:
Error: Deletion of some consumer groups failed:
* Group 'console-consumer-961' could not be deleted due to: java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.GroupNotEmptyException: The group is not empty.
我猜这个组是在我运行 kafka-console-consumer.bat
时创建的,但现在这个消费者没有运行。如何删除此消费组?
您可以使用kafka-consumer-groups
命令行工具验证使用者组的状态。
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group console-consumer-961 --state
这将向您显示消费者的状态。如果它不为空,Kafka 将不允许删除该组。如果它仍然显示您的控制台使用者正在运行,则需要确保正确关闭它(通常通过 CTRL+C(
删除主题时,偏移量信息现在可以正确重置。因此,当您创建具有相同名称的主题时,使用者将从新数据的开头开始。
您仍然无法使用 Kafka 消费者组工具删除新样式的使用者组,但您的根本问题已解决。
在 Kafka 0.10.2 之前,有黑客攻击,但没有解决这个问题的干净解决方案。