在 Debian 上启动 Apache Kafka,一般流程如下(以 Kafka 3.x + 自带 Zookeeper 为例,这是最常见、最简单的方式)。
Kafka 需要 Java 8 或以上(推荐 Java 11 或 17)。
sudo apt update
sudo apt install openjdk-17-jdk -y
验证:
java -version
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
版本号可按需替换
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 &
新开一个终端,执行:
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 &
jps
应看到:
QuorumPeerMain # Zookeeper
Kafka
bin/kafka-topics.sh --create \
--topic test \
--bootstrap-server localhost:9092 \
--partitions 1 \
--replication-factor 1
bin/kafka-console-producer.sh \
--topic test \
--bootstrap-server localhost:9092
bin/kafka-console-consumer.sh \
--topic test \
--from-beginning \
--bootstrap-server localhost:9092
sudo netstat -tulnp | grep 9092
修改:
bin/kafka-server-start.sh
或 config/server.properties 中的 JVM 参数。
如果你希望 开机自启,我可以帮你写:
systemd 的 zookeeper.servicesystemd 的 kafka.service如果你用的是 新版 Kafka(KRaft),启动方式不同,不需要 Zookeeper。
需要的话告诉我你用的 Kafka 版本,我可以单独给你 KRaft 启动教程。
✅ 总结一句话
Debian 启动 Kafka = 先启动 Zookeeper → 再启动 Kafka
如果你告诉我:
我可以给你更精确的配置方案。