温馨提示×

kafka集群debian咋配置

小樊
47
2026-09-03 18:48:16
栏目: 智能运维

下面给你一份**在 Debian 上配置 Kafka 集群(多 broker)**的实用步骤,基于 Kafka 3.x + Zookeeper(社区最常见方案)。如果你用的是 Kafka 3.3+ 且想用 KRaft 模式,我也可以单独说。


一、环境准备

假设你有 3 台 Debian 机器:

主机名 IP
kafka1 192.168.1.11
kafka2 192.168.1.12
kafka3 192.168.1.13

每台机器都做以下操作(除配置不同外)。


二、安装 Java

Kafka 需要 JDK 8 或 11(推荐 11)

sudo apt update
sudo apt install -y openjdk-11-jdk
java -version

三、创建用户(可选但推荐)

sudo useradd -m -s /bin/bash kafka
sudo su - kafka

四、下载并解压 Kafka

cd /opt
sudo wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
sudo tar -xzf kafka_2.13-3.6.1.tgz
sudo mv kafka_2.13-3.6.1 kafka
sudo chown -R kafka:kafka /opt/kafka

五、配置 Zookeeper(集群)

1️⃣ 编辑 zookeeper.properties

vim /opt/kafka/config/zookeeper.properties

内容示例:

dataDir=/opt/kafka/zookeeper
clientPort=2181
maxClientCnxns=0

server.1=192.168.1.11:2888:3888
server.2=192.168.1.12:2888:3888
server.3=192.168.1.13:2888:3888

2️⃣ 创建 myid

每台机器不同:

# kafka1
echo 1 > /opt/kafka/zookeeper/myid

# kafka2
echo 2 > /opt/kafka/zookeeper/myid

# kafka3
echo 3 > /opt/kafka/zookeeper/myid

六、配置 Kafka(重点)

编辑 server.properties

vim /opt/kafka/config/server.properties

公共配置(每台都一样的部分)

broker.id=1   # 每台不同
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://192.168.1.11:9092
num.partitions=3
default.replication.factor=3
min.insync.replicas=2

zookeeper.connect=192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181
log.dirs=/opt/kafka/kafka-logs

每台机器的 broker.id & advertised.listeners

机器 broker.id advertised.listeners
kafka1 1 192.168.1.11:9092
kafka2 2 192.168.1.12:9092
kafka3 3 192.168.1.13:9092

七、systemd 服务(推荐)

Zookeeper

sudo vim /etc/systemd/system/zookeeper.service
[Unit]
Description=Zookeeper
After=network.target

[Service]
User=kafka
ExecStart=/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties
Restart=on-failure

[Install]
WantedBy=multi-user.target

Kafka

sudo vim /etc/systemd/system/kafka.service
[Unit]
Description=Kafka
After=zookeeper.service

[Service]
User=kafka
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
Restart=on-failure

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable zookeeper kafka
sudo systemctl start zookeeper
sudo systemctl start kafka

八、验证集群

创建 topic

/opt/kafka/bin/kafka-topics.sh \
--create \
--topic test \
--bootstrap-server 192.168.1.11:9092 \
--partitions 3 \
--replication-factor 3

查看 topic 状态

/opt/kafka/bin/kafka-topics.sh \
--describe \
--topic test \
--bootstrap-server 192.168.1.11:9092

看到 Leader / Replicas / ISR 有 3 个节点即成功。


九、常见问题

✅ 防火墙

sudo ufw allow 2181
sudo ufw allow 9092

✅ 时间同步

sudo apt install ntp

✅ 磁盘建议单独挂载(log.dirs


十、如果你想要

我可以继续帮你:

  • ✅ Kafka KRaft 模式(无 Zookeeper)
  • ✅ SASL / SSL 安全配置
  • ✅ Debian + Docker Compose 集群
  • ✅ 生产环境参数调优

直接告诉我你现在用的是 Debian 几 + Kafka 版本 + 是否用 Docker 即可。

0