🧭 Kafka 單機部署啟動教程(適用于 Spark + Hadoop 環境)
📦 一、Kafka 版本選擇
-
推薦使用 Kafka 2.13-2.8.1(Scala 2.13,穩定適配 Spark 3.1.2 和 Hadoop 3.1.1)
-
下載地址(Apache 官方歸檔):
wget https://archive.apache.org/dist/kafka/2.8.1/kafka_2.13-2.8.1.tgz
🗃 二、解壓并移動到安裝目錄
tar -zxvf kafka_2.13-2.8.1.tgz
mv kafka_2.13-2.8.1 /opt/module/kafka
? 三、配置環境變量
編輯 ~/.bashrc
:
# Kafka
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin
使其生效:
source ~/.bashrc
📝 四、配置 Kafka 和 Zookeeper(Kafka 自帶 ZK)
4.1 修改 Kafka 配置文件
vim $KAFKA_HOME/config/server.properties
重點配置如下(改為你的本機 IP):
# Kafka broker ID
broker.id=0# 日志目錄
log.dirs=/opt/module/kafka/logs# Kafka 監聽地址
listeners=PLAINTEXT://192.168.0.110:9092# Zookeeper 地址
zookeeper.connect=localhost:2181
🚀 五、啟動 Kafka 和 Zookeeper
5.1 啟動 Zookeeper
zookeeper-server-start.sh -daemon $KAFKA_HOME/config/zookeeper.properties
確認啟動成功:
netstat -tnlp | grep 2181
5.2 啟動 Kafka Server
kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
確認監聽 9092 端口:
netstat -tnlp | grep 9092
🧪 六、創建和測試 Topic
# 創建 test topic
kafka-topics.sh --create --topic test --bootstrap-server 192.168.0.110:9092 --partitions 1 --replication-factor 1# 查看已有 topic
kafka-topics.sh --list --bootstrap-server 192.168.0.110:9092
📬 七、生產者 & 消費者測試
啟動生產者:
kafka-console-producer.sh --topic test --bootstrap-server 192.168.0.110:9092
輸入消息:
hello kafka
啟動消費者(另開終端):
kafka-console-consumer.sh --topic test --bootstrap-server 192.168.0.110:9092 --from-beginning
看到生產者輸入的消息,說明通信正常。
🛑 八、停止 Kafka 和 Zookeeper
kafka-server-stop.sh
zookeeper-server-stop.sh
🌐 九、開放防火墻端口(可選)
sudo firewall-cmd --add-port=9092/tcp --permanent
sudo firewall-cmd --add-port=2181/tcp --permanent
sudo firewall-cmd --reload
? 十、總結
服務 | 端口 | 啟動命令 |
---|---|---|
Zookeeper | 2181 | zookeeper-server-start.sh -daemon config/zookeeper.properties |
Kafka Broker | 9092 | kafka-server-start.sh -daemon config/server.properties |
Kafka UI | 無 | 推薦后續部署 Kafka UI 如 Kafka Manager、Kowl 等 |