Hadoop在Linux上的故障恢复可按以下步骤操作,涵盖组件故障、数据异常等场景:
查看日志
tail -f $HADOOP_HOME/logs/*.log | grep "ERROR"
检查进程状态
jps确认关键进程是否运行:jps # 正常有NameNode、DataNode、ResourceManager等进程
验证网络与配置
ping <节点IP>,检查防火墙端口(如NameNode的9000、ResourceManager的8088)。core-site.xml、hdfs-site.xml等)参数正确。$HADOOP_HOME/sbin/stop-dfs.shcp -r $HADOOP_HOME/dfs/name/current $HADOOP_HOME/dfs/name/current_backuphdfs namenode -format重新格式化(会清除数据,需谨慎)。$HADOOP_HOME/sbin/start-dfs.sh。yarn rmadmin -transitionToStandby <Active节点名> # 切换Active为Standby
yarn rmadmin -transitionToActive <Standby节点名> # 切换Standby为Active
$HADOOP_HOME/sbin/stop-datanode.sh + start-datanode.sh。$HADOOP_HOME/sbin/stop-yarn.sh + start-yarn.sh。数据块修复
hdfs fsck检查并修复损坏的数据块:hdfs fsck / -files -blocks -locations # 检查文件系统
hdfs fsck /path/to/corrupt/file -move # 移动损坏文件到/tmp
集群状态恢复
/tmp下的Hadoop文件),或从快照恢复。参考来源: