温馨提示×

Debian怎么启动Kafka

小樊
47
2026-08-06 18:52:22
栏目: 智能运维

Debian 上启动 Apache Kafka,一般流程如下(以 Kafka 3.x + 自带 Zookeeper 为例,这是最常见、最简单的方式)。


一、前置条件

1. 安装 Java

Kafka 需要 Java 8 或以上(推荐 Java 11 或 17)。

sudo apt update
sudo apt install openjdk-17-jdk -y

验证:

java -version

二、下载并解压 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

版本号可按需替换


三、启动 Zookeeper(Kafka 依赖)

Kafka 自带 Zookeeper,先启动它。

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

✅ 看到 binding to port 2181 表示成功

如果想后台运行:

nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper.log 2>&1 &

四、启动 Kafka

新开一个终端,执行:

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

✅ 看到 started (kafka.server.KafkaServer) 表示启动成功

后台运行:

nohup bin/kafka-server-start.sh config/server.properties > kafka.log 2>&1 &

五、验证 Kafka 是否启动成功

1. 查看进程

jps

应看到:

QuorumPeerMain   # Zookeeper
Kafka

2. 创建测试 Topic

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

3. 发送消息

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

4. 消费消息

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

六、常见问题

1. 端口被占用

sudo netstat -tulnp | grep 9092

2. 内存不足

修改:

bin/kafka-server-start.sh

config/server.properties 中的 JVM 参数。


七、系统服务方式(可选)

如果你希望 开机自启,我可以帮你写:

  • systemdzookeeper.service
  • systemdkafka.service

八、Kafka 3.x(无 Zookeeper,KRaft 模式)

如果你用的是 新版 Kafka(KRaft),启动方式不同,不需要 Zookeeper
需要的话告诉我你用的 Kafka 版本,我可以单独给你 KRaft 启动教程。


总结一句话

Debian 启动 Kafka = 先启动 Zookeeper → 再启动 Kafka

如果你告诉我:

  • Kafka 版本
  • 是否生产环境
  • 是否单机 / 集群

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

0