HDFS Namenode挂掉后分析解决

Posted 赵广陆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS Namenode挂掉后分析解决相关的知识,希望对你有一定的参考价值。


1 分析

挂掉后首先肯定是进行重启,如果时间段比较高峰期,肯定要快速移动文件进行复原,等错过高峰进行事故分析!

2 单节点挂掉数据恢复

方法一:将SecondaryNameNode中数据拷贝到namenode存储数据的目录;

方法二:使用-importCheckpoint选项启动namenode守护进程,从而将SecondaryNameNode中数据拷贝到namenode目录中。步骤如下:拿一台和原来机器一样的机器,包括配置和文件,一般来说最快的是拿你节点机器中的一台,立马能用(部分配置要改成NameNode的配置)创建一个空的文件夹,该文件夹就是配置文件中dfs.name.dir所指向的文件夹。拷贝你的secondary NameNode checkpoint出来的文件,到某个文件夹,该文件夹为fs.checkpoint.dir指向的文件夹执行命令bin/hadoop namenode -importCheckpoint这样NameNode会读取checkpoint文件,保存到dfs.name.dir。但是如果你的dfs.name.dir包含合法的fsimage,是会执行失败的。因为NameNode会检查fs.checkpoint.dir目录下镜像的一致性,但是不会去改动它

但是,利用secondary namenode恢复的数据并不是最新的,毕竟它只保存了最近一次的快照

3 内存溢出

hadoop集群采用的是默认的hadoop-heapsize大小,1000m,内存过小导致namenode2出现内存溢出,日志如下:

该改hadoop-env.sh里的HADOOP_HEAPSIZ参数为更大,默认是动态适应.

以上是关于HDFS Namenode挂掉后分析解决的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop HA——namenode无法启动问题解决

Hadoop HA——namenode无法启动问题解决

bigdata_hadoop_namenode手动重启错误解决分析

hdfs高容错实现

Hadoop组件之-HDFS(HA实现细节)

hadoop HA 详解