在 Debian 上排查 Kafka 配置错误,一般按日志 → 配置 → 环境 → 端口/权限的顺序来查。下面给你一套实用排查思路。
Kafka 默认日志位置取决于安装方式:
cd /opt/kafka/logs
ls
tail -n 200 server.log
journalctl -u kafka -xe
# 或
tail -n 200 /var/log/kafka/server.log
重点看这些关键字:
ERRORExceptionAddress already in useNo such file or directoryPermission deniedFailed to acquire lock常见配置文件位置:
/opt/kafka/config/server.properties
/etc/kafka/server.properties
broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://你的IP:9092
log.dirs=/var/lib/kafka/logs
zookeeper.connect=localhost:2181
❌ advertised.listeners 写成 localhost(远程连不上)
❌ log.dirs 目录不存在或没有权限
❌ listeners 和 advertised.listeners 不一致
java -version
Kafka 一般需要 JDK 8 / 11
systemctl status zookeeper
# 或
zkServer.sh status
Kafka 起不来,一半原因是 ZooKeeper 没起。
ss -ltnp | grep 9092
ls -ld /var/lib/kafka/logs
Kafka 用户(如 kafka)必须有写权限:
chown -R kafka:kafka /var/lib/kafka
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
前台启动能看到最直接报错,比后台日志更清楚。
# 测试是否能连
kafka-console-producer.sh --broker-list localhost:9092 --topic test
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test
你可以贴出:
server.properties 关键配置我可以直接告诉你是哪一行配置错了。