以下是Ubuntu Hadoop集群故障排查的核心技巧,涵盖从基础检查到进阶分析的步骤:
jps命令查看NameNode、DataNode、ResourceManager等关键进程是否正常运行。$HADOOP_HOME/logs目录下的日志文件,通过tail -f或grep "ERROR"定位异常信息,重点关注权限、端口冲突、配置错误等问题。ping测试节点间网络连通性,确保IP配置正确且无丢包。hdfs dfsadmin -report查看DataNode状态,确认节点是否存活、磁盘空间是否充足。VERSION文件中clusterID是否一致,不一致时需手动同步或重新格式化。yarn node -list查看NodeManager列表及状态,确认资源分配是否正常。top、htop或vmstat监控CPU、内存、磁盘I/O使用情况,识别性能瓶颈。core-site.xml、hdfs-site.xml、yarn-site.xml等配置文件的参数正确性,重点关注路径、权限、端口等配置。/tmp/hadoop-<user>/dfs)权限正确,通常需为hadoop用户所有。clusterID不一致,需删除DataNode数据目录并重新格式化NameNode(注意:会丢失数据)。| 场景 | 命令 |
|---|---|
| 查看进程 | jps |
| 查看日志 | tail -f $HADOOP_HOME/logs/*.log |
| 检查网络连通性 | ping <节点IP>、nc -zv <节点IP> <端口> |
| 格式化NameNode | hdfs namenode -format |
| 重启服务 | ./sbin/stop-all.sh + ./sbin/start-all.sh |
参考来源: