Kafka 在 CentOS 上的故障排查步骤
一 快速判定与最小复现
二 依赖与资源配置检查
三 网络连通性与防火墙
四 systemd 与服务管理专项
五 常见症状与修复对照表
| 症状 | 快速检查 | 修复建议 |
|---|---|---|
| systemctl 启动失败,提示 Failed to start Kafka Server | journalctl -u kafka;tail server.log | 按日志关键字定位:Zookeeper、log.dirs、端口、权限等,逐项修复后重启 |
| 启动即退或报 Fatal error | 前台启动观察输出;检查 server.properties | 修正配置错误(如 broker.id 冲突、listeners/advertised.listeners、zookeeper.connect)、确保目录可写 |
| 端口 9092 被占用 | netstat -tlnp | 结束占用进程或修改 listeners 端口 |
| 客户端连不上或超时 | 本机/远程 nc 测试;检查 advertised.listeners | 开放 firewalld/iptables/安全组;将 advertised.listeners 设为客户端可达地址 |
| 内存不足无法启动 | dmesg | grep -i oom;free -h |
| 磁盘满或不可写 | df -h;ls -ld log.dirs | 清理旧日志/扩容磁盘;修正 log.dirs 权限与路径 |
| Topic 元数据超时(TimeoutException) | 控制台 list/create 测试 | 确认 Broker 已起、网络可达、advertised.listeners 正确、Zookeeper 正常 |