Kafka常用命令

如何进行到Docker容器中运行Kafka:
  • docker ps 找到CONTAINER ID 去前三位
  • 执行docker exec -it bbd bin/bash进入到docker中
  • 进入到/opt/bitnami/kafka/bin中执行kafka脚本

1.查看已经创建的所有topics
复制代码
bin/kafka-topics.sh --list --bootstrap-server kafka1:9093 --command-config ./config/scram_common.properties

注意:因为此kafka是加了认证的,必须先读取认证文件里的密码才能查看topics, 如下是认证文件的代码:--command-config ./config/scram_common.properties

该命令通过 Kafka CLI 工具连接到指定的 Kafka 集群(kafka1:9093),使用 SCRAM 认证配置文件(scram_common.properties),列出当前集群中的所有 Topic。

2. 创建topic
复制代码
bin/kafka-topics.sh --bootstrap-server kafka1:9093 --topic WJ-TEST --create --partitions 1 --replication-factor 3 --command-config ./config/scram_common.properties

该命令通过 Kafka CLI 工具在指定的 Kafka 集群(kafka1:9093)中创建一个名为 WJ-TEST 的 Topic,配置为 1 个分区、3 个副本,并使用 SCRAM 认证配置文件(scram_common.properties)进行安全认证。

3.查看已经创建的topic详情
复制代码
bin/kafka-topics.sh --bootstrap-server kafka1:9093 --topic KAFKA-DIM-TOPIC --command-config ./config/scram_common.properties --describe

或者describe放中间也可以:

复制代码
bin/kafka-topics.sh --bootstrap-server kafka1:9093 --topic WJ-TEST --describe --command-config ./config/scram_common.properties

该命令通过 Kafka CLI 工具连接到指定的 Kafka 集群(kafka1:9093),使用 SCRAM 认证配置文件(scram_common.properties),查看名为 WJ-TEST 的 Topic 的详细信息(如分区数、副本数、ISR 等)

4.修改已经建好的topic的分区数(注意这里只能新增,不能减少
复制代码
bin/kafka-topics.sh --bootstrap-server kafka1:9093 --topic WJ-TEST --alter --partitions 3  --command-config ./config/scram_common.properties

该命令通过 Kafka CLI 工具连接到指定的 Kafka 集群(kafka1:9093),使用 SCRAM 认证配置文件(scram_common.properties),将名为 WJ-TEST 的 Topic 的分区数从原来的分区数增加到 3**(只能增加,不能减少)**。

5. 向指定topic中生产消息
复制代码
bin/kafka-console-producer.sh --bootstrap-server kafka1:9093 --topic WJ-TEST --producer.config ./config/scram_common.properties

该命令通过 Kafka CLI 工具连接到指定的 Kafka 集群(kafka1:9093),使用 SCRAM 认证配置文件(scram_common.properties),向名为 WJ-TEST 的 Topic 中生产消息。

生产的消息:

复制代码
Hello, Kafka!
This is a test message.
Message 3
6. 向指定的topic消费消息
复制代码
bin/kafka-console-consumer.sh --bootstrap-server kafka1:9093 --topic WJ-TEST --consumer.config ./config/scram_common.properties --from-beginning

该命令通过 Kafka CLI 工具连接到指定的 Kafka 集群(kafka1:9093),使用 SCRAM 认证配置文件(scram_common.properties),从 WJ-TEST Topic 中从头开始(--from-beginning)消费消息,并将消费到的消息打印到控制台。

消费到的消息:

7.删除指定topic
复制代码
bin/kafka-topics.sh --bootstrap-server kafka1:9093 --delete --topic WJ-TEST --command-config ./config/scram_common.properties

该代码通过指定的 scram_common.properties 配置文件,连接到 Kafka1 的 9093 端口,并删除名为 WJ-TEST 的 Kafka 主题。

8. 查看操作主题命令参数

bin/kafka-topics.sh

|-----------------------------------------------------|--------------------------|
| 参数 | 描述 |
| --bootstrap-server <String: server toconnect to> | 连接的Kafka Broker主机名称和端口号。 |
| --topic <String: topic> | 操作的topic名称。 |
| --create | 创建主题。 |
| --delete | 删除主题。 |
| --alter | 修改主题。 |
| --list | 查看所有主题。 |
| --describe | 查看主题详细描述。 |
| --partitions <Integer: # of partitions> | 设置分区数。 |
| --replication-factor<Integer: replication factor> | 设置分区副本。 |
| --config <String: name=value> | 更新系统默认的配置。 |

9. 生产者命令行操作

bin/kafka-console-producer.sh

|----------------------------------------------------|--------------------------|
| 参数 | 描述 |
| --bootstrap-server <String: server toconnect to> | 连接的Kafka Broker主机名称和端口号。 |
| --topic <String: topic> | 操作的topic名称。 |

10. 消费者命令行操作

bin/kafka-console-consumer.sh

|----------------------------------------------------|--------------------------|
| 参数 | 描述 |
| --bootstrap-server <String: server toconnect to> | 连接的Kafka Broker主机名称和端口号。 |
| --topic <String: topic> | 操作的topic名称。 |
| --from-beginning | 从头开始消费。 |
| --group <String: consumer group id> | 指定消费者组名称。 |

相关推荐
向夏威夷 梦断明暄17 小时前
从架构特点到功能缺陷,重新认识分析型分布式数据库
数据库·分布式·架构
Wang's Blog18 小时前
Go-Zero 项目开发19:基于 Kafka 的异步消息存储与转发实战
golang·kafka
Devin~Y19 小时前
互联网大厂 Java 面试实录:Spring Boot、MyBatis、Redis、Kafka、Spring Security、RAG 与 MCP 全链路问答
java·redis·kafka·mybatis·spring security·spring mvc·sprint boot
AAA@峥19 小时前
Ceph 集群配置管理完整指南
运维·数据库·分布式·ceph
心如鉄补20 小时前
分布式链路追踪系统之docker-compose安装skywalking
分布式·docker·skywalking
努力努力再努力wz20 小时前
【分布式系统与 RPC 框架系列】从单机瓶颈到远程调用:一文理解分布式架构与 RPC 原理
linux·网络·c++·分布式·网络协议·rpc·架构
ACP广源盛139246256731 天前
此芯 P1 AI BOX / AI NAS@ACP#IX8008、IX8024 应用场景与市场机会
大数据·人工智能·分布式·单片机·嵌入式硬件
网络工程小王2 天前
【HCIE-AI】12.deepspeed分布式并行训练进阶版
人工智能·pytorch·分布式·学习·昇腾·deepspeed
ACP广源盛139246256732 天前
国产算力互联IX8024@ACP#Kimi K3 开源后的端侧部署硬件架构分析
大数据·人工智能·分布式·单片机·嵌入式硬件
花生了什么事o2 天前
分布式 ID 生成方案:从数据库自增到雪花算法
数据库·分布式·算法