在使用 Kafka 进行分布式消息处理时,掌握命令行工具是日常运维和调试的基础。
本文基于 Kafka 3.6.0 版本,整理了最常用的三个脚本:主题管理、控制台消费和消费者组监控。以下命令均通过 --bootstrap-server 指定集群地址,这是较新版本推荐的方式,相比 Zookeeper 方式更稳定。
主题管理:kafka-topics.sh
该脚本用于创建、删除、描述或更改主题配置。
查看所有主题
列出当前集群中所有的 Topic 名称。
kafka-topics.sh --bootstrap-server centos701:9092,centos702:9092,centos704:9092 --list
描述主题详情
查看特定主题的分区、副本分布及 Leader 信息,常用于排查同步问题。
kafka-topics.sh --bootstrap-server centos701:9092,centos702:9092,centos704:9092 --describe --topic first
控制台消费:kafka-console-consumer.sh
这是一个临时消费工具,适合快速验证消息内容或测试生产环境数据流向。
消费最新数据
默认从最新的 Offset 开始消费,不读取历史消息。
kafka-console-consumer.sh --bootstrap-server centos701:9092,centos702:9092,centos704:9092 --topic first
从头开始消费
如果需要回溯历史数据,加上 --from-beginning 参数即可。
kafka-console-consumer.sh --bootstrap-server centos701:9092,centos702:9092,centos704:9092 --from-beginning --topic first
指定消费者组
在实际业务中,消费者通常需要加入某个 Group 来平衡负载。这里演示如何指定组 ID。
kafka-console-consumer.sh --bootstrap-server centos701:9092,centos702:9092,centos704: ---beginning --topic first -- first_group

