大数据集群环境:CM 5.12.0
现象:由于集群磁盘满了,删除部分数据后导致HDFS的数据不一致,重新启动HDFS后进入safemode
解决:
1.检查hdfs是否处于safemode,正常是off
# hdfs dfsadmin -safemode get
2.使用命令强制离开
# hadoop dfsadmin -safemode leave
3.恢复后不再报金丝雀,但是报块损失
检查缺失块
# hdfs fsck -list-corruptfileblocks
# hdfs fsck / | egrep -v '^\.+$' | grep -v eplica
查看节点、hdfs、丢失的数据块
# hadoop dfsadmin -report
4.删除缺失块
# hdfs fsck -delete
参考文章: