温馨提示×

debian怎么配置kafka

小樊
47
2026-09-12 18:57:54
栏目: 智能运维

下面给你一份**在 Debian 上安装和配置 Kafka(单机版)**的实用步骤,适用于 Debian 11 / 12,也基本适用于 Ubuntu。


一、环境准备

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 Java(Kafka 依赖 JVM)

Kafka 3.x 推荐 Java 8 / 11 / 17

sudo apt install -y openjdk-17-jdk

验证:

java -version

二、下载并安装 Kafka

1. 创建用户(可选但推荐)

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

2. 下载 Kafka

到官网复制最新版本地址:https://kafka.apache.org/downloads

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

设置权限:

sudo chown -R kafka:kafka /opt/kafka

三、配置 Kafka

1. Zookeeper 配置(Kafka 3.x 仍可用)

cd /opt/kafka
vi config/zookeeper.properties

常见配置:

dataDir=/opt/kafka/zookeeper-data
clientPort=2181

创建目录:

mkdir -p /opt/kafka/zookeeper-data

2. Kafka 服务配置

vi config/server.properties

基本配置(单机):

broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://localhost:9092
log.dirs=/opt/kafka/kafka-logs
num.partitions=1
zookeeper.connect=localhost:2181

创建日志目录:

mkdir -p /opt/kafka/kafka-logs

四、启动 Kafka

1. 启动 Zookeeper

/opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.properties

2. 启动 Kafka

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

查看进程:

jps

应看到:

  • QuorumPeerMain
  • Kafka

五、测试 Kafka

1. 创建 Topic

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

2. 发送消息

/opt/kafka/bin/kafka-console-producer.sh \
  --topic test \
  --bootstrap-server localhost:9092

输入:

hello kafka

3. 消费消息

/opt/kafka/bin/kafka-console-consumer.sh \
  --topic test \
  --from-beginning \
  --bootstrap-server localhost:9092

六、配置为 systemd 服务(推荐)

1. Zookeeper

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

[Service]
Type=simple
User=kafka
ExecStart=/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties
ExecStop=/opt/kafka/bin/zookeeper-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

2. Kafka

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

[Service]
Type=simple
User=kafka
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

3. 启用服务

sudo systemctl daemon-reload
sudo systemctl enable zookeeper
sudo systemctl enable kafka
sudo systemctl start zookeeper
sudo systemctl start kafka

七、可选(Kafka 3.x KRaft 模式)

如果你不想用 Zookeeper:

  • Kafka 3.3+ 支持 KRaft
  • 不需要 Zookeeper
  • 需要 kafka-storage.sh 初始化

需要的话我可以单独给你 KRaft 模式配置教程。


如果你告诉我:

  • Debian 版本
  • Kafka 版本
  • 是否集群
  • 是否外网访问

我可以给你更精确的配置。

0 踩