hadoop单机存储均衡和坏block处理

1.Namenode岩机处理:重启集群无法恢复的情况下

    这时候解决的办法很简单,把namenode镜像存储的路径下内容删除掉,再把secondnamenode镜像存储的路径下内容拷贝过来,重启即可。
默认namenode镜像存储的路径是 /opt/hdfs/dfs/name  
默认secondnamenode镜像存储的路径 /opt/hdfs/dfs/namesecondary

2.坏Block解决方式
hadoop出现坏块后(如低版本的hadoop更换块大小的时候容易出现坏块),自身可以缓慢的修复,但是速度十分的缓慢。

发生坏块后 Namenode 日志: The reported blocks 211655 needs additional 4687 blocks to reach the threshold 0.9990 of total blocks 216559.
Safe mode will be turned off automatically
(日志的意思是需要增加4687 个块才能达到指定的阀值0.9990)
并且状态始终在 safe    mode 模式

可以使用hadoop fsck / -delete 删除坏块

删除坏块之后重启


3.单机存储均衡

hadoop自身有Blancer,可以进行存储均衡,但是这只是均衡总体的,并不能均衡单机不同磁盘的存储。比如说一台节点有两块硬盘分区,第一个利用率达到了90%,另一个利用率只达到5%,这时候总体的利用率可能不会很高,利用Blancer可能不会进行存储均衡,这时候就需要手工进行存储的迁移。

df -k  //查看磁盘的大小和利用率
注意:新添加一块磁盘后,加入hadoop存储集群的时候还需要对配置文件进行修改
hdfs-site.xml

    dfs.data.dir
     /opt/hdfs/dfs/data, /opt2/hdfs

首先先stop集群
cd    /opt/hdfs/dfs/data /current

mv ./* /opt2/hdfs/current/
//注意:在迁移的时候一定要和原来的目录结构保持一致,否则会出错。

df -k //再次查看
再start集群

你可能感兴趣的:(hadoop)