hdfs 副本修复

1 副本修复思路

先找出副本确实的文件,再使用hdfs setrep命令修复副本数。

2 实操

代码如下:

## hdfs 身份验证
## 如果使用的是kerberos环境的hdfs,先使用kinit命令
export HADOOP_USER_NAME=hdfs

## 导出副本不足的文件清单
hdfs fsck / | grep 'Under replicated' \
| awk -F':' '{print $1}' >> \
/tmp/under_replicated_files

## 遍历并修复副本
for hdfsfile in `cat /tmp/under_replicated_files`;
  do echo "Fixing $hdfsfile :" ;
  hadoop fs -setrep 3 $hdfsfile;
done

posted @ 2022-05-31 11:24  流浪法师瑞兹  阅读(442)  评论(0)    收藏  举报