如何识别和修复 Ambari 为 NameNode 报告的缺失块?

如何识别和修复 Ambari 为 NameNode 报告的缺失块?

Ambari 正在生成警报NameNode Blocks Health: Total Blocks:[38252543], Missing Blocks:[2]。没有更多信息。

我运行了hdfs fsck /该程序,报告整个文件系统健康。我运行了hdfs dfsadmin -report该程序,报告有两个丢失的块,但没有提供详细信息。

我如何找到这些缺失的块并修复它们?

答案1

我今天观察到了类似的报告设置(CentOS 7.3,HDP 2.5.3,Ambari 2.4.2)。

我可以通过以下方式找到缺少块的文件:

hdfs fsck / | grep -i 'miss' 
hdfs fsck / | grep 'miss' | cut -d ":" -f 1
hdfs fsck / | grep 'Under replicated' | cut -d ":" -f 1

并修复它们:

hdfs dfs -setrep 3 <fileName>

答案2

你可以使用以下命令查找损坏和丢失的块的数量

hdfs fsck -list-corruptfileblocks

相关内容