有一个旧的 hadoop
系统(已经多年没有使用),当尝试重新启动集群(1个主服务器,2个从服务器)时,全部打开 Linux
,出错,在 namenode
.
错误输出:
2021-03-18 20:18:28,628 FATAL org.apache.hadoop.hdfs.server.namenode.NameNode: Exception in namenode join
java.io.IOException: Failed to load image from FSImageFile(file=/home/xxx/tmp/hadoop/name/current/fsimage_0000000000000480607, cpktTxId=0000000000000480607)
at org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:651)
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:264)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:627)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:469)
at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:403)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:437)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:609)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:594)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1169)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1235)
Caused by: java.io.IOException: No MD5 file found corresponding to image file /home/xxx/tmp/hadoop/name/current/fsimage_0000000000000480607
at org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:736)
at org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:632)
... 9 more
2021-03-18 20:18:28,631 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 1
2021-03-18 20:18:28,633 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: SHUTDOWN_MSG:
更多信息:
slave的一个datanode分区有坏磁盘块,所以我已经从中删除了这个分区 /etc/fstab
所以要把 Linux
向上。所以,那个奴隶的数据丢失了。
我尝试过:
启动集群,包括所有3个节点,都出现上述错误。
启动集群,排除坏的从节点,因此只有2个节点,仍然得到以上错误。
问题:
答。错误意味着什么?
b。和坏奴隶有关吗?
c。在namenode上是否有恢复而不重新格式化hdfs文件系统的方法?
1条答案
按热度按时间k5hmc34c1#
应该有一个名为:
/home//tmp/hadoop/name/current/fsimage\u 0000000000000480607.md5
与图像文件位于同一位置。它的内容如下所示:
只需获取fsimage文件的md5和:
然后创建一个新的md5文件,如下所示:
其中是md5命令的md5sum。