温馨提示×

Kafka服务Ubuntu怎么启

小樊
37
2026-07-07 11:56:07
栏目: 智能运维

Ubuntu 上启动 Kafka 服务,一般分两种情况:单机直接启动用 systemd 作为服务启动。下面按常见流程一步步来。


一、前置条件(必须)

Kafka 依赖 Zookeeper(Kafka 2.x 及以前)或 KRaft(Kafka 3.x+)。

1️⃣ 安装 Java(如果没有)

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

二、直接启动 Kafka(适合测试)

1️⃣ 下载并解压 Kafka

wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
tar -xzf kafka_2.13-3.6.1.tgz
cd kafka_2.13-3.6.1

版本号可自行替换


2️⃣ 启动 Zookeeper(Kafka 自带)

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

✅ 看到 binding to port 2181 表示成功


3️⃣ 启动 Kafka

打开 新终端 再执行:

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

✅ 看到类似:

[KafkaServer id=0] started

4️⃣ 验证

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

三、用 systemd 启动(推荐生产环境)

1️⃣ 创建 Zookeeper 服务

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

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

[Install]
WantedBy=multi-user.target

2️⃣ 创建 Kafka 服务

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

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

[Install]
WantedBy=multi-user.target

⚠️ 路径改成你自己的 Kafka 目录


3️⃣ 启动服务

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

4️⃣ 设置开机自启

sudo systemctl enable zookeeper
sudo systemctl enable kafka

5️⃣ 查看状态

sudo systemctl status kafka
sudo systemctl status zookeeper

四、常见问题

❌ Kafka 起不来

cat logs/server.log

常见原因:

  • Java 没装
  • 端口 9092 / 2181 被占用
  • server.properties 中 log.dirs 路径不存在

✅ 用 KRaft(无 Zookeeper)

如果你用的是 Kafka 3.x+,我可以给你 KRaft 模式 的启动方式。


五、快速总结

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

# 启动 Kafka
bin/kafka-server-start.sh config/server.properties

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

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

我可以按你的环境给你 精确配置

0