学习 Debian 上部署和使用 Kafka,可以按下面这条路线来,从环境准备到实战一步步来,不绕弯。
在 Debian 上“学 Kafka”通常分三层:
如果你是初学者,重点先放在前两层。
sudoKafka 需要 JVM:
sudo apt update
sudo apt install -y default-jdk
java -version
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
cd /opt/kafka
生成集群 ID:
KAFKA_CLUSTER_ID=$(bin/kafka-storage.sh random-uuid)
格式化存储:
bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties
启动:
bin/kafka-server-start.sh config/kraft/server.properties
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 \
--bootstrap-server localhost:9092 \
--from-beginning
✅ 能看到消息,说明 Kafka 跑通了。
可以写 systemd 服务,避免手动启动。
示例(/etc/systemd/system/kafka.service):
[Unit]
Description=Apache Kafka
After=network.target
[Service]
Type=simple
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/kraft/server.properties
User=root
Restart=on-failure
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable kafka
sudo systemctl start kafka
你可以直接告诉我:
我可以给你更针对性的学习计划和命令示例。