kafka消费组添加消费者

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka消费组添加消费者相关的知识,希望对你有一定的参考价值。

参考技术A 本文案例基于 kafka 2.8

消费组是kafka的一种可扩展的消息机制, 可以消费负载均衡, 横向扩展消费者的消费能力. 同一个消费组的消费者共享group id.

通过添加多个消费者一样可以增加消费能力, 为什么要有消费组这种机制呢? 比无群组通过直接添加消费者扩展消费能力好在哪里?

消费组添加消费者是动态添加的, 在客户端创建消费组, 起一个消费者客户端, 需要上传订阅的主题, 当前消费者订阅当前主题. 当需要添加多个消费者的时候, 同样的创建消费组, 起一个消费者客户端, 主题和群组名相同, 就能添加第二个消费者. 以此类推添加多个消费者.

服务端查看群组以及消费者信息

由上可见, 创建了一个ReduxConsumerGroup的消费组, 主题分区[0, 1]两个分区被分配给同一个消费者.

服务端查看群组以及消费者信息

同一个主题, 两个分区被分配给两个不同的消费者.

只需要将消费者客户端退出即可.

服务端查看群组以及消费者信息

可见, 第一个消费者消失, 主题分区被分配给第二个消费者

服务端查看群组以及消费者信息

消费者全部去除.

系统运维系列 之Kafka查询不到正在消费的的消费组信息

1 问题背景
【怪怪怪】
目前消费者组正常消费,但是通过kafka manager监测不到consumer组的消费信息;前期出现的问题是一台Kafka的服务器down掉,连接不上集群,是不是和这个现象有关系呢?

2 排查思路
【期待解决】
2.1 详细解析 kafka manager 的使用
在添加Clusters时需要注意几个参数问题:
Enable JMX Polling:
是否开启 JMX 轮训,该部分直接影响部分 kafka broker 和 topic 监控指标指标的获取,例如每秒流入的消息数,每秒流入的字节数等。
Poll consumer information:
是否开启获取消费信息,直接影响能够在消费者页面和 topic 页面查看消费信息。
Enable Active OffsetCache:
是否开启 offset 缓存,决定 kafka-manager 是否缓存住 topic 的相关偏移量。

2.2 kafka 从zookeeper查询不到要的消费组信息原因解答
查看消费组信息使用如下命令:

./kafka-consumer-groups.sh --zookeeper ip:2181 --list

问题:查询不到消费组的信息;原因分析:从kafka-0.9版本及以后,kafka的消费者组和offset信息就不存zookeeper了,而是存到broker服务器上。
使用下面的命令查询消费组的信息:

/bin/kafka-consumer-groups.sh --bootstrap-server ip:9092 --list

参考资料:
https://www.cnblogs.com/kebibuluan/p/13857895.html 详细解析 kafka manager 的使用
https://blog.csdn.net/yuzuyi2006/article/details/80819104?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0.essearch_pc_relevant&spm=1001.2101.3001.4242.1 kafka 从zookeeper查询不到要的消费组信息原因解答

以上是关于kafka消费组添加消费者的主要内容,如果未能解决你的问题,请参考以下文章

五 通过命令行了解 Kafka消费者组

kafka的消费者组该怎么删除

Kafka快速入门(Kafka消费者)

kafka的消费者组该怎么删除

绍圣--kafka之消费者(八)

kafka——消费者原理解析