微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

损坏的名称节点元数据的首选解决方案是什么

如何解决损坏的名称节点元数据的首选解决方案是什么

我们有 HDP 集群,版本 2.6.5

集群包括管理两个名称节点(一个是活动的,第二个是备用的)

和 65 台 datanode 机器

备用名称节点未启动时出现问题,从名称节点日志中我们可以看到以下内容

2021-01-01 15:19:43,269 ERROR namenode.NameNode (NameNode.java:main(1783)) - Failed to start namenode.
java.io.IOException: There appears to be a gap in the edit log.  We expected txid 90247527115,but got txid 90247903412.
        at org.apache.hadoop.hdfs.server.namenode.MetaRecoveryContext.editLogLoaderPrompt(MetaRecoveryContext.java:94)
        at org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadEditRecords(FSEditLogLoader.java:215)
        at org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadFSEdits(FSEditLogLoader.java:143)
        at org.apache.hadoop.hdfs.server.namenode.FSImage.loadEdits(FSImage.java:838)
        at org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:693)

从 ambari 我们可以看到待机已关闭

enter image description here

目前活动名称节点已启动但备用名称节点已关闭,此问题的根本原因是因为名称节点数据损坏/损坏。

所以我们有两个解决方案 - AB

A)

在备用namenode上运行以下recover

su
hadoop namenode -recover

B)

将 Active NN 置于安全模式

su hdfs 
hdfs dfsadmin -safemode enter

在 Active NN 上执行 savenamespace 操作

su hdfs 
hdfs dfsadmin -saveNamespace

离开安全模式

 su hdfs 
 hdfs dfsadmin -safemode leave

登录备用神经网络

在备用名称节点上运行以下命令以获取我们在上述步骤中保存的最新 fsimage。

 su  hdfs 
 hdfs namenode -bootstrapStandby -force

我们问题的首选解决方案是什么?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。