🧭 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 等 |