在Debian上排查Kafka故障可按以下步骤进行:
检查服务状态
sudo systemctl status kafka
若服务异常,尝试重启:
sudo systemctl restart kafka
查看日志文件
/var/log/kafka/server.log,分析错误信息。/var/log/syslog,排查系统级异常。hs_err_pid*.log(位于/tmp或日志目录)。验证配置文件
检查/etc/kafka/server.properties,重点关注:
listeners/advertised.listeners:确保监听地址和端口正确。zookeeper.connect:确认ZooKeeper连接字符串无误。log.dirs:确保日志目录存在且Kafka有写权限。监控系统资源
top/htop查看CPU、内存占用,df -h检查磁盘空间。测试网络连接
ping测试Broker间及客户端的网络连通性。telnet或nc验证端口是否可达(如ZooKeeper端口2181、Kafka端口9092)。使用Kafka自带工具
kafka-topics.sh:查看Topic状态、分区分布。kafka-console-producer.sh/consumer.sh:测试生产消费功能是否正常。JMX监控与分析
cmdline-jmxclient.jar获取Leader分区数、副本状态等指标。第三方工具辅助
处理常见问题
zkCli.sh验证节点连接。kafka-topics.sh调整副本数,触发分区重平衡。注意:操作前建议备份配置和数据,避免误操作导致数据丢失。若问题仍未解决,可参考Kafka官方文档或社区论坛(如Stack Overflow、Apache Kafka邮件列表)寻求进一步支持。