如何删除Kafka Consumer Group以重置偏移?

cla*_*lay 10 apache-kafka apache-zookeeper

我想删除一个Kakfa使用者组,以便当应用程序创建使用者并订阅某个主题时,它可以从主题数据的开头开始.

这是使用当前最新的Confluent Platform 3.1.2使用Kafka 0.10.1.1的单节点开发vm.

我尝试了正常的语法:

sudo /usr/bin/kafka-consumer-groups --new-consumer --bootstrap-server localhost:9092 --delete --group my_consumer_group
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Option [delete] is only valid with [zookeeper]. Note that there's no need to delete group metadata for the new consumer as the group is deleted when the last committed offset for that group expires.
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用zookeeper变体:

sudo /usr/bin/kafka-consumer-groups --zookeeper localhost:2181 --delete --group my_consumer_group
Run Code Online (Sandbox Code Playgroud)

我明白了:

Delete for group my_consumer_group failed because group does not exist.
Run Code Online (Sandbox Code Playgroud)

如果我使用"旧"消费者列出,我看不到我的消费者群体(或任何其他消费者群体)

sudo /usr/bin/kafka-consumer-groups --zookeeper localhost:2181 --list
Run Code Online (Sandbox Code Playgroud)

如果我使用"新"消费者列出,我可以看到我的消费者组,但显然我无法删除它:

sudo /usr/bin/kafka-consumer-groups --new-consumer --bootstrap-server localhost:9092 --list
Run Code Online (Sandbox Code Playgroud)

Bit*_*sky 21

这可以通过 Kafka 1.1.x 完成。从文档:

bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --delete --group my-group --group my-other-group


Han*_*sen 7

在Kafka 0.11(或Confluent 3.3)中,您可以重置任何现有使用者组的偏移量,而不必删除主题。实际上,您也可以将偏移量更改为任何绝对偏移量值或时间戳或任何相对位置。

这些新功能都--reset-offsetskafka-consumer-groups命令行工具上添加了新标志。

在此处查看KIP-122详细信息https://cwiki.apache.org/confluence/display/KAFKA/KIP-122%3A+Add+Reset+Consumer+Group+Offsets+tooling


cla*_*lay 4

使用 Kafka 0.10.2 升级到刚刚发布的 Confluence Platform 3.2 解决了我的根本问题。当我删除主题时,偏移量信息现在可以正确重置。因此,当我创建同名主题时,消费者从新数据的开头开始。

我仍然无法使用该kafka-consumer-groups工具删除新型消费者组,但我的根本问题已经解决。

在 Kafka 0.10.2 之前,存在一些黑客攻击,但没有解决此问题的干净解决方案。