温馨提示×

Kafka主题Ubuntu如何建

小樊
33
2026-07-07 12:40:17
栏目: 智能运维

Ubuntu 上创建 Kafka 主题(Topic),前提是你已经安装并启动了 Kafka 和 Zookeeper(或 KRaft 模式)。下面按最常见场景一步步说明。


一、前提条件

确保以下服务已启动:

1️⃣ 启动 Zookeeper(老版本 Kafka)

# 进入 Kafka 目录
cd ~/kafka

# 启动 Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties

2️⃣ 启动 Kafka Broker

bin/kafka-server-start.sh config/server.properties

✅ Kafka 2.8+ 支持 KRaft 模式(无 Zookeeper),如果你用的是 KRaft,可以跳过 Zookeeper。


二、创建 Kafka 主题(最常用)

假设:

  • Kafka 安装在 ~/kafka
  • Broker 端口:9092
  • 主题名:test-topic

✅ 创建主题命令

cd ~/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

五、KRaft 模式(无 Zookeeper)创建主题

如果你使用的是 Kafka 3.x+ KRaft 模式

bin/kafka-topics.sh \
--create \
--topic test-topic \
--bootstrap-server localhost:9093 \
--partitions 3 \
--replication-factor 1

六、常见问题

❌ 报错:java.net.ConnectException

  • Kafka 没启动
  • bootstrap-server 地址不对

❌ 副本数大于 broker 数

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

如果你愿意,可以告诉我:

  • ✅ Kafka 版本
  • ✅ 是否使用 Docker
  • ✅ 单机还是集群

我可以给你完全对应你环境的命令

0