• -------------------------------------------------------------
  • ====================================

Kafka查看topic、consumer group状态命令

kafka dewbay 5年前 (2019-04-12) 2615次浏览 已收录 0个评论 扫描二维码

最近工作中遇到需要使用kafka的场景,测试消费程序启动后,要莫名的过几十秒乃至几分钟才能成功获取到到topic的 partition 和 offset,而后开始消费数据,于是学习了一下查看 kafka broker 里topicconsumer group状态的相关命令,这里记录一下。

命令参考自《Kafka: The Definitive Guide》 Chapter 9 Administrating Kafka

以下命令中使用的 zookeeper 配置地址为 127.0.0.1:2181,bootstrap–server(即 broker)地址为: 127.0.0.1:9292

1,查看kafka topic列表,使用–list 参数

bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list
__consumer_offsets
lx_test_topic
test

2,查看kafka特定topic的详情,使用–topic 与–describe 参数

bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --topic lx_test_topic --describe
Topic:lx_test_topic     PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: lx_test_topic    Partition: 0    Leader: 0       Replicas: 0     Isr: 0

列出了 lx_test_topic 的 parition 数量、replica 因子以及每个 partition 的 leader、replica 信息

3,查看consumer group列表,使用–list 参数

查看consumer group 列表有新、旧两种命令,分别查看新版(信息保存在 broker 中)consumer列表和老版(信息保存在 zookeeper 中)consumer列表,因而需要区分指定 bootstrap–server 和 zookeeper 参数:

bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server 127.0.0.1:9292 --list
lx_test
bin/kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --list
console-consumer-86845
console-consumer-11967

4,查看特定 consumer group 详情,使用–group与–describe 参数

同样根据新/旧版本的 consumer,分别指定 bootstrap-server 与 zookeeper 参数:

bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server 127.0.0.1:9292 --group lx_test --describe
GROUP                          TOPIC                          PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             OWNER
lx_test                        lx_test_topic             0          465             465             0               kafka-python-1.3.1_/127.0.0.1
bin/kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --group console-consumer-11967 --describe
GROUP                          TOPIC                          PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             OWNER
Could not fetch offset from zookeeper for group console-consumer-11967 partition [lx_test_topic,0] due to missing offset data in zookeeper.
console-consumer-11967         lx_test_topic             0          unknown         465             unknown         console-consumer-11967_aws-lx-1513787888172-d3a91f05-0

其中依次展示 group 名称、消费的 topic 名称、partition id、consumer group 最后一次提交的 offset、最后提交的生产消息 offset、消费 offset 与生产 offset 之间的差值、当前消费 topic-partition 的 group 成员 id(不一定包含 hostname)

上面示例中 console-consumer-11967 是为了测试临时起的一个 console consumer,缺少在 zookeeper 中保存的 current_offset 信息。签名:新加入开源大部队的新手程序员,拥抱开源,拥抱自由


露水湾 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Kafka查看topic、consumer group状态命令
喜欢 (0)
[]
分享 (0)
关于作者:
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址