hadoop生产环境数据块损坏修复方法

hadoop生产环境数据块损坏修复方法

问题描述:

生产环境,早上报红 hdfs丢失块不良

命令:hdfs fsck -list-corruptfileblocks
检查出丢失快的文件

好多人都说删除文件,但是生产环境怎么能随便删除文件

解决方案:

然后执行修复命令:
hdfs debug recoverLease [-path ] [-retries ]
例: hdfs debug recoverLease -path /hdsf/user/123.txt -retries 3

执行结果虽然报成功: recoverLease SUCCEEDED on /hdsf/user/123.txt
但是cloudera manager 控制台 依旧报红,问题依旧没解决

然后换另一种思路替

换文件,备份文件到本地以防不测:
然后集群 替换文件 其中 -f 参数覆盖文件 -p 保留属性

hdfs dfs -get /hdsf/user/123.txt /root/file_back
hdfs dfs -cp -p -f /hdsf/user/123.txt  /hdsf/user/123.txt 

问题解决!
cloudera manager 控制台正常。

你可能感兴趣的:(hadoop,cloudera,hdfs)