Kafka日常开发用的命令
2025-08-24 本文已影响0人
flyjar
以下是 Kafka 常用的命令,涵盖了主题管理、生产者消费者操作、集群信息查看等常见场景:
1. 主题(Topic)管理
创建主题
# 创建一个名为test-topic的主题,分区数3,副本数1
kafka-topics.sh --bootstrap-server localhost:9092 \
--create \
--topic test-topic \
--partitions 3 \
--replication-factor 1
查看所有主题
kafka-topics.sh --bootstrap-server localhost:9092 --list
查看主题详情
kafka-topics.sh --bootstrap-server localhost:9092 \
--describe \
--topic test-topic
修改主题分区数(只能增加,不能减少)
kafka-topics.sh --bootstrap-server localhost:9092 \
--alter \
--topic test-topic \
--partitions 5
删除主题
kafka-topics.sh --bootstrap-server localhost:9092 \
--delete \
--topic test-topic
2. 生产者(Producer)操作
启动控制台生产者发送消息
kafka-console-producer.sh --bootstrap-server localhost:9092 \
--topic test-topic
进入交互模式后,输入消息并回车即可发送。
3. 消费者(Consumer)操作
启动控制台消费者消费消息(从最新位置开始)
kafka-console-consumer.sh --bootstrap-server localhost:9092 \
--topic test-topic
从最早位置开始消费
kafka-console-consumer.sh --bootstrap-server localhost:9092 \
--topic test-topic \
--from-beginning
指定消费组消费
kafka-console-consumer.sh --bootstrap-server localhost:9092 \
--topic test-topic \
--group test-group
4. 消费组(Consumer Group)管理
查看所有消费组
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
--list
查看消费组详情
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
--describe \
--group test-group
重置消费组的偏移量(从最早开始)
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
--group test-group \
--reset-offsets \
--to-earliest \
--execute \
--topic test-topic
删除消费组
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
--delete \
--group test-group
5. 集群信息查看
查看 brokers 列表
kafka-brokers.sh --bootstrap-server localhost:9092 \
--describe
查看控制器(Controller)信息
kafka-topics.sh --bootstrap-server localhost:9092 \
--describe \
--topic __controller
注意事项:
- 上述命令基于 Kafka 2.0+ 版本,不同版本可能略有差异。
-
--bootstrap-server后需指定 Kafka 集群的 broker 地址(如host1:9092,host2:9092)。 - 若 Kafka 配置了 SASL 认证或 SSL 加密,需在命令中添加相应的认证参数(如
--consumer.config consumer.properties)。