@[toc]
NameNode 进程挂掉
如果只是单纯的进程挂掉了,可以直接使用下列命令进行重启:
hdfs --daemon start namenode
示例:
NameNode 进程挂掉且数据丢失
这种情况就不可以直接通过重启解决,而需要先进行数据恢复。
重新启动,但没有启动成功,这时候,我们可以去查看一下启动日志。
报错说 NameNode
没有进行格式化,这是因为 NameNode
节点数据丢失了,这个时候我们就需要从 SecondaryNameNode
节点恢复数据。
解决方法
进入 SecondaryNameNode
节点,将其备份数据拷贝到 NameNode
数据存储目录下。
存储目录需要看你在 core-site.xml
文件中指定的数据存储目录,我的如下所示:
下面以我的集群为例,进行操作:
进入 NameNode
节点的数据存储目录
cd $HADOOP_HOME/data/dfs
其中 name
文件夹存储的就是 NameNode
节点的数据。
SecondaryNameNode
节点数据存储在其节点机器上的同结构目录下,只不过名称为 namesecondary
。
现在来对文件进行拷贝:
scp -r slave2:/opt/module/hadoop-3.1.3/data/dfs/namesecondary/* ./name/
最后,重启 NameNode
节点:
启动成功,故障修复完成!