HDFS NameNode故障排除
一、将SecondaryNameNode中数据拷贝到NameNode存储数据的目录
1、制造故障
# 1. 杀死进程
kill 9 NameNode进程
# 2. 删除NameNode文件
rm -rf /opt/module/hadoop-2.7.7/data/tmp/dfs/name/*
2、拷贝 SecondaryNameNode中的数据到原 NameNode 存储数据目录
cd data/tmp/dfs/name/
scp -r tom@wt3:/opt/module/hadoop-2.7.7/data/tmp/dfs/namesecondary/* ./
3、重新启动 NameNode
sbin/hadoop-daemon.sh start namenode
二、使用-importCheckpoint选项启动NameNode守护进程,从而将SecondaryNameNode中数据拷贝到NameNode目录中
1、修改 hdfs-site.xml
<property> <name>dfs.namenode.checkpoint.period</name> <value>120</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/opt/module/hadoop-2.7.7/data/tmp/dfs/name</value> </property>
xsync 分发
2、制造故障
kill -9 NameNode进程
删除NameNode的节点数据
3、拷贝(平级与name文件夹)
# 1.拷贝
cd data/tmp/dfs/
scp -r tom@wt3:/opt/module/hadoop-2.7.7/data/tmp/dfs/namesecondary ./
# 2.删除
rm -rf in_use.lock
4、导入检测点数据(等待一会 ctrl+c 结束掉)
bin/hdfs namenode -importCheckpoint
5、启动NameNode
sbin/hadoop-daemon.sh start namenode