CDH中NameNode启动报错一例问题的处理

来源:互联网 发布:淘宝进货渠道去哪里找 编辑:程序博客网 时间:2024/05/21 10:43
错误明细:
Failed to start namenode.java.io.IOException: There appears to be a gap in the edit log.  We expected txid 693082, but got txid 693668.at org.apache.hadoop.hdfs.server.namenode.MetaRecoveryContext.editLogLoaderPrompt(MetaRecoveryContext.java:94)at org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadEditRecords(FSEditLogLoader.java:212)at org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadFSEdits(FSEditLogLoader.java:140)at org.apache.hadoop.hdfs.server.namenode.FSImage.loadEdits(FSImage.java:846)at org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:701)at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:292)at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:1063)at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:767)at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:609)at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:670)at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:838)at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:817)at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1538)at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1606)


错误原因:
原因是namenode元数据被破坏了,需要修复。


解决办法:
输入命令:hadoop namenode -recover
全都选择  ‘c’ 即可


事件回顾:
由于机房漏水等原因,导致CDH的namenode standby节点及datanode的两个节点挂掉,且恢复不了。所以,在CDH原集群上需要重新配置,以满足新的环境情况。
首先,将坏掉的机器从集群中删除,然后重新配置了namenode角色,然后启动的时候出现了此问题。
实际处理过程中,可能有更好的方案,探索中。
1 0
原创粉丝点击