在 Ubuntu 上创建 Kafka 主题(Topic),前提是你已经安装并启动了 Kafka 和 Zookeeper(或 KRaft 模式)。下面按最常见场景一步步说明。
确保以下服务已启动:
# 进入 Kafka 目录
cd ~/kafka
# 启动 Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties
bin/kafka-server-start.sh config/server.properties
✅ Kafka 2.8+ 支持 KRaft 模式(无 Zookeeper),如果你用的是 KRaft,可以跳过 Zookeeper。
假设:
~/kafka9092test-topiccd ~/kafka
bin/kafka-topics.sh \
--create \
--topic test-topic \
--bootstrap-server localhost:9092 \
--partitions 3 \
--replication-factor 1
| 参数 | 说明 |
|---|---|
--create |
创建主题 |
--topic |
主题名称 |
--bootstrap-server |
Kafka 地址 |
--partitions |
分区数 |
--replication-factor |
副本数 |
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
bin/kafka-topics.sh --describe --topic test-topic --bootstrap-server localhost:9092
bin/kafka-topics.sh --delete --topic test-topic --bootstrap-server localhost:9092
⚠️ 需要配置:
delete.topic.enable=true
如果你使用的是 Kafka 3.x+ KRaft 模式:
bin/kafka-topics.sh \
--create \
--topic test-topic \
--bootstrap-server localhost:9093 \
--partitions 3 \
--replication-factor 1
java.net.ConnectExceptionbootstrap-server 地址不对replication factor: 3 larger than available brokers: 1
✅ 解决方案:
--replication-factor 1
bin/kafka-console-producer.sh \
--topic test-topic \
--bootstrap-server localhost:9092
bin/kafka-console-consumer.sh \
--topic test-topic \
--from-beginning \
--bootstrap-server localhost:9092
如果你愿意,可以告诉我:
我可以给你完全对应你环境的命令。