hadoop - 无法使用“hdfs namenode importCheckpoint”导入新的 fsimage
问题描述
我有一个名称节点,其 fsimage 已损坏,我只有一个 fsimage 可用。我有一个具有可用检查点的辅助名称节点。现在,我想 importCheckpoint 到一个新目录。旧目录:cd /home/rakeshbharadwaj/Desktop/hadoop-2.7.4-ex2/nn
新目录:我已将 hdfs-site.xml 更改为/home/rakeshbharadwaj/Desktop/hadoop-2.7.4-ex2/new
我试图运行hdfs namenode importcheckPoint
它给了我以下错误
19/02/26 12:38:51 INFO common.Storage: Lock on /home/rakeshbharadwaj/Desktop/hadoop-2.7.4-ex2/new/in_use.lock acquired by nodename 5270@rakeshbharadwaj-VirtualBox
19/02/26 12:38:51 INFO namenode.FSImage: Storage directory /home/rakeshbharadwaj/Desktop/hadoop-2.7.4-ex2/new is not formatted.
19/02/26 12:38:51 INFO namenode.FSImage: Formatting ...
19/02/26 12:38:51 INFO common.Storage: Lock on /tmp/hadoop-rakeshbharadwaj/dfs/namesecondary/in_use.lock acquired by nodename 5270@rakeshbharadwaj-VirtualBox
19/02/26 12:38:51 WARN namenode.FSNamesystem: Encountered exception loading fsimage
java.io.IOException: NameNode is not formatted.
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:235)
at org.apache.hadoop.hdfs.server.namenode.FSImage.doImportCheckpoint(FSImage.java:580)
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:311)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:978)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:685)
at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:585)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:645)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:819)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:803)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1500)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1566)
19/02/26 12:38:51 INFO mortbay.log: Stopped HttpServer2$SelectChannelConnectorWithSafeStartup@0.0.0.0:50070
所以,我已经通过运行格式化了名称节点hdfs namenode -format
。并且格式成功。格式化后形成一个新图像fsimage_0000000000000000000
现在,我hdfs namenode -importCheckpoint
再次运行它,它给了我以下错误。
19/02/26 12:30:47 WARN namenode.FSNamesystem: Encountered exception loading fsimage
java.io.IOException: Cannot import image from a checkpoint. NameNode already contains an image in /home/rakeshbharadwaj/Desktop/hadoop-2.7.4-ex2/n
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:392)
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:225)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:978)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:685)
at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:585)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:645)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:819)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:803)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1500)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1566)
问题:我如何解决这个问题并从新目录中的检查点获取 fsimage。
解决方案
推荐阅读
- c# - CrmServiceClient IsReady 在之前调用后为 false 和 null
- c# - 从 .Net Core 应用程序发送 WebRequest 时,为什么会出现超时错误?
- reactjs - 如何在不使用 JSX 的情况下从另一个组件访问函数
- matlab - 如屏幕截图所示,如何将此表转换为元胞数组?
- excel - 如何在 VBA 的 Range.Formula 中包含变量?
- angular - 加载外部模板
- c# - 如何在机器人处理操作时向用户发送“等待”?
- c# - 从实现类调用 C# 接口默认方法
- java - MapView ist abstract - 无法实例化
- pandas - 如何在熊猫中将行值组合成新行