HDFS NameNode Ha切换出错

版权声明:技术专栏,转载请注明! https://blog.csdn.net/wankunde/article/details/79199870

问题描述

在HDFS namenode在切换的时候,发现切换后有大量Missing replicas.
文章 HDFS HA切换后missing block问题分析 有分析,问题原因是因为DataNode blockReport时,Edit log 还没有进行同步导致的问题。

Hdfs Ha 管理命令

  • 查看NameNode状态
    hdfs haadmin -getServiceState nn1

  • NameNode 切换
    hdfs haadmin -failover -forcefence -forceactive nn2 nn1
    注意:此处“nn2 nn1”的顺序表示active状态由nn2转换到nn1上

  • 查看丢失的文件对应的Block(页面也会显示Block ID)
    hdfs fsck /user/hive/warehouse/xxx/000357_0 -blocks -locations -racks

/user/hive/warehouse/xxx/000357_0: CORRUPT blockpool BP-1824149417-26.6.0.28-1450834291847 block blk_2153067578

  • 查找Block所在机器
    pssh -h nodes -A -i 'sudo find /data/*/dn/ -name blk_2153067578'

  • 重启DataNode,HDFS恢复正常


其实啥也不做,等一个小时后,DataNode 做全量汇报后,集群状态也会恢复正常~~~

猜你喜欢

转载自blog.csdn.net/wankunde/article/details/79199870