移除zookeeper中的kafka消费群

g0czyy6m  于 2021-06-08  发布在  Kafka
关注(0)|答案(4)|浏览(482)

我正在使用Kafka2.9.2-0.8.1.1和zookeeper 3.4.6。
有没有一个实用程序可以自动从zookeeper中删除用户组?或者我可以删除zookeeper中/consumers/[group\u id]下的所有内容吗?如果是后者,我还有什么遗漏吗&这可以用一个实时系统来完成吗?
更新:从kafka 2.3.0版开始,有一个新的实用程序: > bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --delete --group my-group 相关文件:http://kafka.apache.org/documentation/#basic_ops_consumer_lag
详见下文

qq24tv8q

qq24tv8q1#

从v0.9.0开始,kafka在 /bin 其中之一就是 kafka-consumer-groups.sh 工具。这将删除消费者组。 ./kafka-consumer-groups.sh --zookeeper <zookeeper_url> --delete --group <group-name>

qybjjes1

qybjjes12#

目前,据我所知,删除kafka消费群的唯一方法是手动删除zookeeper路径 /consumers/[group_id] .
如果您只想删除一个使用者组,则不必担心手动删除zookeeper路径,但是如果您这样做是为了回放偏移量,下面的内容将很有帮助。
首先,在删除zookeeper路径之前,应该停止属于该使用者组的所有使用者。如果不这样做,这些使用者将不会使用新生成的消息,并将很快关闭到zookeeper集群的连接。
重新启动消费者时,如果希望消费者从头开始,请给出 auto.offset.reset 属性到 smallest (或 earliest 在Kafka的新版本中)。属性的默认值为 largest (或 latest 在新的kafka版本中),它使重新启动的用户在最大偏移量之后读取,而最大偏移量又只消耗新生成的消息。有关属性的更多信息,请参阅kafka文档中的consumer config。
仅供参考,有一个问题,我如何才能倒带消费者的抵消?在Kafka常见问题,但它给我没有太多的帮助。

lyr7nygr

lyr7nygr3#

对于新使用者(使用kafka主题来管理偏移,而不是zookeeper),不能使用kafka的内置工具删除组信息。
下面是一个尝试使用 kafka-consumer-groups.sh 脚本:

bin/kafka-consumer-groups.sh --bootstrap-server "kafka:9092" --delete --group "indexer" --topic "cleaned-logs"
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.

以下是这一回应的重要部分:
请注意,无需删除新使用者的组元数据,因为当该组的最后一个提交的偏移量过期时,该组将被删除。
从监控的Angular 来看,这有点烦人(尤其是通过burrow之类的方法跟踪偏移量时),因为这意味着如果在代码中更改使用者组名称,您将一直看到旧组在偏移量上落后,直到这些偏移量过期。
假设您可以手动为该主题编写一个墓碑(这是在偏移过期期间发生的事情),但我还没有找到任何工具可以简化这一过程。

hgqdbh6s

hgqdbh6s4#

您可以通过cli从kafka中删除组

kafka-consumer-groups --bootstrap-server localhost:9092 --delete --group group_name

相关问题