在 Debian 上检查 Kafka 配置,通常要从 Kafka 本身的配置、运行环境、系统资源和日志 几个方面入手。下面按常见场景给你一个完整检查清单。
ps -ef | grep kafka
或
pgrep -a java
Kafka 通常是 Java 进程,包含 kafka.Kafka。
systemctl status kafka
如果没用 systemd,而是手动启动:
jps
Kafka 的配置文件一般在:
/etc/kafka/
或
/opt/kafka/config/
| 文件 | 作用 |
|---|---|
server.properties |
Kafka Broker 主配置 |
producer.properties |
生产者配置 |
consumer.properties |
消费者配置 |
zookeeper.properties |
ZooKeeper 配置(旧版本) |
cat /etc/kafka/server.properties
常见关键项:
broker.id=0
listeners=PLAINTEXT://:9092
log.dirs=/var/lib/kafka/logs
zookeeper.connect=localhost:2181
num.partitions=1
offsets.topic.replication.factor=1
ss -lntp | grep 9092
或
netstat -lntp | grep 9092
telnet localhost 9092
常见位置:
/var/log/kafka/
或
/opt/kafka/logs/
tail -f /var/log/kafka/server.log
重点关注:
ERRORFATALConnection refusedBroker may not be availablecat /etc/kafka/server.properties | grep log.dirs
检查目录是否存在及权限:
ls -ld /var/lib/kafka/logs
确保 Kafka 用户有权限:
chown -R kafka:kafka /var/lib/kafka
systemctl status zookeeper
端口检查:
ss -lntp | grep 2181
检查配置:
process.roles=broker,controller
node.id=1
controller.quorum.voters=1@localhost:9093
kafka-topics.sh --create \
--topic test \
--bootstrap-server localhost:9092 \
--partitions 1 \
--replication-factor 1
kafka-topics.sh --list --bootstrap-server localhost:9092
kafka-console-producer.sh \
--topic test \
--bootstrap-server localhost:9092
kafka-console-consumer.sh \
--topic test \
--from-beginning \
--bootstrap-server localhost:9092
java -version
Kafka 推荐:
ulimit -n
建议:
ulimit -n 100000
df -h
✅ Kafka 进程是否运行
✅ server.properties 是否正确
✅ 端口 9092 是否监听
✅ 日志是否报错
✅ ZooKeeper / KRaft 是否正常
✅ 是否能创建和读写 Topic
如果你愿意,可以把以下信息贴出来,我可以帮你精确定位问题:
server.propertiesserver.log 报错内容我也可以给你一份 生产环境推荐配置。