NameNode 故障无法重新启动解决方法

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
大数据开发治理平台 DataWorks,不限时长
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 当NameNode进程挂掉时,若无数据丢失,可直接使用`hdfs --daemon start namenode`重启。但若数据丢失,需从SecondaryNameNode恢复。首先查看启动日志,确认因数据丢失导致的未启动成功问题。接着,将SecondaryNameNode的备份数据拷贝至NameNode的数据存储目录,目录路径在`core-site.xml`中设定。进入NameNode节点,使用`scp`命令从SecondaryNameNode复制数据后,重启NameNode进程,故障即可修复。

@[toc]

NameNode 进程挂掉

如果只是单纯的进程挂掉了,可以直接使用下列命令进行重启:

hdfs --daemon start namenode

示例:

image.png

NameNode 进程挂掉且数据丢失

这种情况就不可以直接通过重启解决,而需要先进行数据恢复。

image.png

重新启动,但没有启动成功,这时候,我们可以去查看一下启动日志。



报错说 NameNode 没有进行格式化,这是因为 NameNode 节点数据丢失了,这个时候我们就需要从 SecondaryNameNode 节点恢复数据。

解决方法

进入 SecondaryNameNode 节点,将其备份数据拷贝到 NameNode 数据存储目录下。

存储目录需要看你在 core-site.xml 文件中指定的数据存储目录,我的如下所示:

image.png

下面以我的集群为例,进行操作:

进入 NameNode 节点的数据存储目录

cd $HADOOP_HOME/data/dfs

image.png

其中 name 文件夹存储的就是 NameNode 节点的数据。

SecondaryNameNode 节点数据存储在其节点机器上的同结构目录下,只不过名称为 namesecondary

image.png

现在来对文件进行拷贝:

scp -r slave2:/opt/module/hadoop-3.1.3/data/dfs/namesecondary/* ./name/

image.png

最后,重启 NameNode 节点:

image.png

启动成功,故障修复完成!

相关文章
|
NoSQL MongoDB
MongoDB因服务器异常断电,无法启动异常的修复
本文是博主遇到MongoDB启动异常的解决方法记录,希望对大家有所帮助。
1287 0
|
30天前
|
分布式计算 安全 Hadoop
Hadoop 集群一直处于安全模式,强制退出后出现数据丢失警告。解决方法
本文介绍了Hadoop集群安全模式的相关命令和问题解决。当集群处于安全模式时,可使用`hdfs dfsadmin -safemode get`检查状态,`enter`进入,`leave`或`forceExit`离开。若因数据块不一致导致安全模式持续,可通过强制退出,然后删除丢失数据块的文件以恢复正常。如果遇到权限问题,可以使用`chmod`授权或关闭HDFS权限验证(不推荐),配置修改后需重启集群生效。
Hadoop 集群一直处于安全模式,强制退出后出现数据丢失警告。解决方法
|
1月前
|
数据库连接 数据库 流计算
Flink CDC比如检查到挂了,我重启了,这个会重新连不,我刚刚重启了还是一样的错?
Flink CDC比如检查到挂了,我重启了,这个会重新连不,我刚刚重启了还是一样的错?
68 0
|
11月前
|
监控
一个 datanode 宕机,恢复流程
一个 datanode 宕机,恢复流程
252 0
|
数据可视化 Linux
程序挂了之后别再跟我说让我帮你重启啦! 让supervisor帮你搞定...
程序挂了之后别再跟我说让我帮你重启啦! 让supervisor帮你搞定...
297 0
程序挂了之后别再跟我说让我帮你重启啦! 让supervisor帮你搞定...
|
存储 分布式计算 Hadoop
Hadoop集群改名导致无法启动DataNode
Hadoop集群更名 导致无法启动D a ta N o de 错误描述
299 0
Hadoop集群改名导致无法启动DataNode