温馨提示×

怎样设debian kafka主题

小樊
43
2026-08-31 23:09:03
栏目: 智能运维

在 Debian 上“设置 Kafka 主题”通常指在已经安装并运行 Kafka 的 Debian 系统中,创建 / 配置 / 查看主题(topic)。下面按常见步骤说明。


一、前提条件(Debian 上)

确保你已经:

  • 安装并启动了 Zookeeper(老版本 Kafka)或 Kafka 自带的 KRaft(新版本)
  • 启动 Kafka Broker

常见路径示例(以官方二进制包为例):

/opt/kafka

二、使用 kafka-topics.sh 创建主题

1️⃣ 进入 Kafka 目录

cd /opt/kafka/bin

2️⃣ 创建主题(最常用)

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

说明:

  • --topic:主题名
  • --partitions:分区数
  • --replication-factor:副本数(不能超过 broker 数量)

✅ Kafka 2.8+ 推荐用 --bootstrap-server
❌ 老版本可用 --zookeeper localhost:2181


三、查看主题

查看所有主题

./kafka-topics.sh --list --bootstrap-server localhost:9092

查看某个主题详情

./kafka-topics.sh --describe --topic test-topic --bootstrap-server localhost:9092

四、修改主题配置(Debian 常用)

增加分区数(不能减少)

./kafka-topics.sh \
  --alter \
  --topic test-topic \
  --partitions 6 \
  --bootstrap-server localhost:9092

修改主题参数(如保留时间)

./kafka-configs.sh \
  --alter \
  --topic test-topic \
  --add-config retention.ms=604800000 \
  --bootstrap-server localhost:9092

五、删除主题

./kafka-topics.sh \
  --delete \
  --topic test-topic \
  --bootstrap-server localhost:9092

⚠ 前提:

delete.topic.enable=true

(Kafka 新版默认开启)


六、Debian systemd 示例(可选)

如果你用 systemd 管理 Kafka:

sudo systemctl status kafka
sudo systemctl start kafka

七、常见问题

  • 副本数大于 broker 数 → 创建失败
  • 端口不对 → 检查 server.properties
  • 主题已存在 → 加 --if-not-exists

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

  • Kafka 版本
  • 是否用 Zookeeper 还是 KRaft
  • 单机还是集群

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

0