Kafka 零基础实操命令大全

前面我们吃透了 Kafka 主题、分区、副本 的核心底层原理,理论落地必须依靠实操命令。Kafka 日常开发、测试、集群运维的核心操作,全部依赖自带的 shell 命令。

本文整理 全网最常用、最高频、零基础可直接复用 的 Kafka 命令,按「主题管理、消息生产消费、集群运维、分区副本、偏移量查询」分类,搭配详细参数解析、实操场景、避坑说明,新手直接复制即用,完美搭配上篇原理博文,做到懂原理、会实操。

前置说明 :本文命令基于 Kafka 2.x/3.x 新版本,统一使用 --bootstrap-server(废弃旧版 --zookeeper 方式),适配所有新版集群。

一、前置环境:基础连接地址

基于我们搭建的双节点 Kafka 集群,统一基础连接地址,所有命令通用:

172.17.0.7:9092

后续所有命令,只需替换对应主题名称即可直接执行。

二、核心高频:Topic 主题管理命令

主题是 Kafka 业务入口,主题的创建、查看、修改、删除是日常最高频操作,也是新手必掌握命令。

1. 创建主题(核心重点)

命令语法
复制代码
kafka-topics.sh --create \ 
    --bootstrap-server 集群地址 \ 
    --topic 主题名 \ 
    --partitions 分区数 \ 
    --replication-factor 副本数
实操案例(生产常用配置)
复制代码
kafka-topics.sh 
    --create 
    --bootstrap-server 172.17.0.7:9092 
    --topic test-topic 
    --partitions 3 
    --replication-factor 2
核心参数详解
  • --partitions :分区数,决定集群并发读写能力,只能增大不能减小

  • --replication-factor :副本数,硬性规则:副本数 ≤ 集群Broker节点数,否则创建失败

2. 查看所有主题

复制代码
kafka-topics.sh --list --bootstrap-server 172.17.0.7:9092

作用:快速罗列集群中所有已创建的主题,排查主题是否存在、重复创建等问题。

3. 查看主题详细信息(分区/副本/Leader)

复制代码
kafka-topics.sh --describe --topic test-topic --bootstrap-server 172.17.0.7:9092

实操核心作用:查看每个分区的 Leader 主节点、Follower 副本节点、ISR同步节点,验证分区副本分配是否均衡、集群是否正常。

字段解读:

  • Leader:当前分区读写主节点

  • Replicas:所有副本存放节点

  • Isr:正常同步的副本节点(集群健康核心指标)

4. 修改主题分区(仅扩容,不可缩容)

复制代码
# 将主题分区扩容为5个 
kafka-topics.sh 
    --alter 
    --topic test-topic 
    --partitions 5 
    --bootstrap-server 172.17.0.7:9092

重要避坑 :Kafka 不支持减少分区数,只能新增扩容,分区缩减只能删除主题重建。

5. 删除主题

复制代码
kafka-topics.sh --delete --topic test-topic --bootstrap-server 172.17.0.7:9092

注意:生产环境谨慎删除,删除后数据和元数据全部清空,无法恢复。

三、核心实操:消息生产与消费命令

创建主题后,必须掌握消息发送和消费命令,用于测试主题可用性、集群读写状态。

1. 控制台生产者(手动发送消息)

复制代码
kafka-console-producer.sh --broker-list 172.17.0.7:9092 --topic test-topic

执行命令后,直接输入内容回车,即可向主题发送消息,适合快速测试。

示例输入:hello kafka、测试集群消息发送

2. 控制台消费者(监听消费消息)

基础消费(只消费新消息)
复制代码
kafka-console-consumer.sh --bootstrap-server 172.17.0.7:9092 --topic test-topic
全量消费(从主题起始位置消费所有历史消息)
复制代码
kafka-console-consumer.sh 
    --bootstrap-server 172.17.0.7:9092 
    --topic test-topic 
    --from-beginning

常用场景:排查历史消息、验证主题数据是否正常存储。

四、集群运维:状态查看常用命令

用于日常集群巡检、故障排查,快速确认 Broker 节点、集群运行状态。

1. 查看集群所有 Broker 节点

复制代码
kafka-broker-api-versions.sh --bootstrap-server 172.17.0.7:9092

作用:查看集群在线 Broker 节点、版本信息,确认集群节点是否全部存活。

2. 查看集群主题总数

结合 wc -l 统计集群主题数量:

复制代码
kafka-topics.sh --list --bootstrap-server 172.17.0.7:9092 | wc -l

3. 查看分区分布概况

复制代码
kafka-topics.sh --describe --bootstrap-server 172.17.0.7:9092

不指定主题,默认查看集群所有主题的分区、副本、Leader 状态,适合全局巡检。

五、进阶常用:偏移量与消费组命令

消费组和偏移量是 Kafka 消息消费、断点续传的核心,是开发和面试高频重点。

1. 查看所有消费组

复制代码
kafka-consumer-groups.sh --list --bootstrap-server 172.17.0.7:9092

2. 查看消费组详细状态(偏移量、堆积量)

复制代码
kafka-consumer-groups.sh --describe --group 消费组名 --bootstrap-server 172.17.0.7:9092

核心字段:

  • Current Offset:当前消费偏移量

  • Log End Offset:分区最大消息偏移量

  • Lag:消息堆积量(核心排查指标,Lag>0 代表有消息堆积)

3. 重置消费偏移量(运维常用)

复制代码
# 重置偏移量,从头消费 
kafka-consumer-groups.sh 
 --reset-offsets
 --group 消费组名
 --topic test-topic 
 --to-earliest --execute 
 --bootstrap-server 172.17.0.7:9092 
# 重置偏移量,消费最新消息 
kafka-consumer-groups.sh 
    --reset-offsets --group 消费组名
    --topic test-topic 
    --to-latest 
    --execute --bootstrap-server 172.17.0.7:9092
相关推荐
宸津-代码粉碎机4 小时前
OpenAI 连夜迎战 Grok Bot 和 Muse:AI 智能体从 “会聊天” 到 “能办事”,现在入场还来得及吗
java·大数据·人工智能·分布式·python
程序猿乐锅6 小时前
【黑马点评 | 第八篇】Redisson分布式锁
java·数据库·spring boot·redis·分布式·spring·缓存
灯澜忆梦7 小时前
【RabbitMQ #7】 | 消息转换器
分布式·rabbitmq·ruby
需要8267 小时前
分布式事务:Seata AT/TCC/SAGA 的取舍与踩坑
java·spring boot·分布式·spring·spring cloud
CS创新实验室10 小时前
为什么三台机器就能选出一个“带头大哥“?——Raft 一致性算法,一次讲透
分布式·操作系统
本人手速666+12 小时前
企微开发API如何设计客户冻结状态?WeComApi 在删除、投诉和异常客户场景中的自动化边界
运维·分布式·自动化·企业微信·企微外部群开发·wecomapi·企业微信二次开发
灯澜忆梦13 小时前
【RabbitMQ #4】 | Work 任务模型
分布式·rabbitmq
程序猿乐锅13 小时前
【黑马点评 | 第七篇】Redis 分布式锁的两种实现
java·数据库·redis·分布式·spring·缓存
千里码aicood15 小时前
基于Hadoop的机票价格波动分析系统的设计与实现
大数据·hadoop·分布式
今年下半年20 小时前
记录一次IBMS物联网项目的架构设计及技术栈应用
物联网·websocket·网络协议·tcp/ip·微服务·udp·kafka