[Kafka基础]--命令行使用举例(CDH版本)

本文介绍了Kafka-2.1.1-CDH-5.10.1版本中常用的命令行工具,包括kafka-topics、kafka-console-producer、kafka-console-consumer和kafka-run-class等。通过具体实例演示了如何使用这些工具进行topic的创建、查看、修改、删除及消息的生产和消费等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Kafka命令行使用举例(Kafka-2.1.1-CDH-5.10.1版本)

一、命令行介绍

Kafka的命令行:共有10个命令,每个命令有各自的作用

常用的命令:kafka-console-consumer、kafka-console-producer、kafka-topics和kafka-run-class

二、以上4个常用命令举例

1、kafka-topics

(1)、创建topic
kafka-topics --create --topic yourTopic --zookeeper hadoop:2181 --partitions 2 --replication-factor 2

(2)、查看kafka所有的topic名称
kafka-topics --list --zookeeper  hadoop:2181

(3)、描述你的topic
kafka-topics --describe --zookeeper hadoop:2181  --topic yourTopic

(4)、暂时删除topic(如果要彻底删除topic,则需要到znode上把元数据删掉)
kafka-topics --delete --zookeeper hadoop:2181  --topic yourTopic

(5)、给Kafka的topic添加分区
kafka-topics   --zookeeper hadoop:2181 --alter --partitions 2  --topic  yourTopic

2、kafka-console-producer

生产(Pub):kafka-console-producer --topic yourTopic --broker-list hadoop3:9092


3、kafka-console-consumer

订阅消费(Sub):kafka-console-consumer --zookeeper hadoop3:2181  --topic yourTopic


4、kafka-run-class

(1)查看每个Partition的最新偏移量
kafka-run-class kafka.tools.GetOffsetShell --broker-list hadoop:9092 --topic yourTopic  --time -1

(2)查看每个Partition的最早的偏移量
kafka-run-class kafka.tools.GetOffsetShell --broker-list hadoop:9092 --topic yourTopic  --time -2

(3)查看consumer组内消费的offset
kafka-run-class  kafka.tools.ConsumerOffsetChecker --zookeeper hadoop:2181  --topic yourTopic

5、kafka-consumer-offset-checker

获取topic消费组的偏移量

kafka-consumer-offset-checker --zookeeper=localhost:2181 --topic=mytopic  --group=my_consumer_group


参考

  1. https://gist.github.com/ursuad/e5b8542024a15e4db601f34906b30bb5
  2. https://www.cloudera.com/documentation/kafka/latest/topics/kafka_command_line.html





<think>嗯,用户这次想了解在CDH平台上使用kafka-consumer-offset-checker工具检查消费者偏移量的方法。从对话历史看,用户应该是在CDH集群中管理Kafka服务时遇到了消费者延迟问题,之前我已经提供了多种监控积压的方法,但用户特别点名要了解这个特定工具。 用户引用的两个站内参考很有价值:引用[1]展示了CDHKafka命令行工具的标准路径和基础用法,引用[2]则提示了复制因子配置不匹配的常见错误。这让我意识到需要重点说明版本兼容性问题——毕竟在较新的CDH版本中这个工具已被弃用。 考虑到用户可能是运维人员,需要具体操作指引,我决定分三部分回应:首先是工具路径定位,强调CDH的特殊目录结构;然后是具体命令语法,包括必填参数和常见错误处理;最后补充替代方案,因为在新版本中必须迁移到kafka-consumer-groups命令。 特别要注意的是引用[2]提到的复制因子错误,这在执行检查命令时经常出现,需要单独说明解决方案。另外用户环境可能有Kerberos认证,这个难点也要提前预警。 最后生成的延伸问题都围绕实际运维场景:第一个是版本过渡问题,第二个针对监控集成,第三个则关联到之前讨论过的消费者延迟诊断。这样既能延续当前话题,又能串联起用户可能需要的知识链。</think>在 CDH 平台的 Kafka使用 `kafka-consumer-offset-checker` 工具检查消费者偏移量,需注意以下关键步骤和版本适配问题: --- ### 一、工具路径与基础命令 1. **定位工具路径** CDHKafka 命令行工具位于: ```bash /opt/cloudera/parcels/KAFKA/bin/kafka-consumer-offset-checker ``` 2. **基础命令格式** ```bash ./kafka-consumer-offset-checker \ --zookeeper bigdata001:2181 \ # Zookeeper地址 --group your_consumer_group \ # 消费者组名 --topic your_topic # 目标主题(可选) ``` --- ### 二、关键输出解读 执行后输出示例: ``` GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG OWNER test_group zyl_test 0 15200 15200 0 consumer-1 test_group zyl_test 1 14800 15000 200 consumer-2 ``` - **CURRENT-OFFSET**:消费者当前提交的位移 - **LOG-END-OFFSET**:分区最新消息位移 - **LAG**:积压消息数 = `LOG-END-OFFSET - CURRENT-OFFSET` --- ### 三、版本适配与注意事项 1. **CDH 版本限制** - 仅适用于 **CDH 5.x / Kafka 0.9.x 及更早版本** - CDH 6.x (Kafka 2.x+) 已弃用此工具,需改用 `kafka-consumer-groups`: ```bash /opt/cloudera/parcels/KAFKA/bin/kafka-consumer-groups \ --bootstrap-server bigdata001:9092 \ --group your_group \ --describe ``` 2. **常见错误处理** - **复制因子不匹配错误**(引用[2]问题): ```log Number of alive brokers does not meet the required replication factor ``` **解决方案**: 修改 `__consumer_offsets` 主题的复制因子(需先停止 Kafka 服务): ```bash ./kafka-topics --zookeeper bigdata001:2181 \ --topic __consumer_offsets \ --alter --config min.insync.replicas=2 # 调整为可用Broker数 ``` 3. **Kerberos 认证环境** 若集群启用 Kerberos,需先获取凭证: ```bash kinit -kt kafka.keytab kafka/bigdata001@YOUR.DOMAIN ``` --- ### 四、新版本替代方案(CDH 6.x+) 使用 `kafka-consumer-groups` 替代: ```bash # 查看所有消费者组 ./kafka-consumer-groups --bootstrap-server bigdata001:9092 --list # 查看特定组详情 ./kafka-consumer-groups --bootstrap-server bigdata001:9092 \ --group your_group \ --describe --members --verbose ``` 输出包含: - **分区级偏移量**(PARTITION, CURRENT-OFFSET, LOG-END-OFFSET, LAG) - **消费者成员分配情况**(MEMBER-ID, HOST) - **当前状态**(STABLE, REBALANCING) --- ### 五、操作验证流程 1. 创建测试主题(引用[1]方法): ```bash ./kafka-topics --create --zookeeper bigdata001:2181 \ --replication-factor 3 --partitions 3 --topic lag_test ``` 2. 启动控制台消费者: ```bash ./kafka-console-consumer --bootstrap-server bigdata001:9092 \ --topic lag_test --group lag_test_group ``` 3. **检查偏移量**: ```bash # CDH 5.x ./kafka-consumer-offset-checker --zookeeper bigdata001:2181 --group lag_test_group # CDH 6.x ./kafka-consumer-groups --bootstrap-server bigdata001:9092 --group lag_test_group --describe ``` --- > **关键提示**: > - 老工具 `kafka-consumer-offset-checker` 依赖 Zookeeper,新工具 `kafka-consumer-groups` 直连 Broker,更符合架构演进趋势[^1][^2] > - 生产环境建议通过 Cloudera Manager 配置自动化监控(参见前文方案),避免手动检查 --- **
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

oo寻梦in记

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值