【问题标题】:Failed to start NameNodeNameNode启动失败
【发布时间】:2020-02-16 01:50:28
【问题描述】:

我已经按照这些步骤在本地成功安装了hadoop Step by step hadoop installation on windows 10

Java安装版本:1.8.0_231 Hadoop安装版本:Hadoop 3.2.1

但在运行命令 hdfs namenode -format 后,我收到以下错误

Re-format filesystem in Storage Directory root= C:\hadoop-3.2.1\data\namenode; location= null ? (Y or N) y
2019-10-19 12:34:58,809 INFO namenode.FSImage: Allocated new BlockPoolId: BP-1445655329-172.18.148.177-1571468698797
2019-10-19 12:34:58,809 INFO common.Storage: Will remove files: []
2019-10-19 12:34:58,812 ERROR namenode.NameNode: Failed to start namenode.java.lang.UnsupportedOperationException
    at java.nio.file.Files.setPosixFilePermissions(Files.java:2044)
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.clearDirectory(Storage.java:452)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:591)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:613)
    at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:188)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:1206)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1649)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1759)
2019-10-19 12:34:58,819 INFO util.ExitUtil: Exiting with status 1: java.lang.UnsupportedOperationException
2019-10-19 12:34:58,823 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at CWT-DST-0051/***.**.***.***

我对此完全陌生,可能是什么问题? 提前致谢

【问题讨论】:

    标签: java hadoop


    【解决方案1】:

    我通过安装 Hadoop 2.9.1 解决了这个问题,在 Hadoop 3.2.1 版本中存在 namenode 问题 hdfs namenode issue in 3.2.1

    【讨论】:

      【解决方案2】:
      1. 如果您在 Windows 中安装了 32 位 Java 版本,则必须将环境变量 JAVA_HOME 路径设置为 C:\Progra~2\Java\<JDK version>,但它似乎不起作用。
      • 因此,您必须尝试 64 位 java 版本,将您的 JAVA_HOME 设置为 C:\Progra~1\Java\<JDK version>

      将 64 位 Java 版本设置为 JAVA_HOME 后,您必须在 cmd 中再次运行 start-all.cmd。然后除了namenode,所有其他的守护进程都工作了。要运行 namenode,您必须按照以下步骤操作。

      1. 管理员身份打开cmd
      2. 键入并运行stop-all.cmd
      3. 然后运行hadoop namenode –format
      4. 终于运行start-all.cmd

      希望它对你有用。

      编辑-:

      使用以下代码转到您的 hdfs 配置文件(在 cmd 或 powershell 中输入)

      vim %HADOOP_HOME%\etc\hadoop\hdfs-site.xml

      在您的配置文件中,您需要使用正斜杠和文件 URI 协议

      例如,改变

       C:\BigData\hadoop-2.9.1\data\namenode
      

      file:/C:/BigData/hadoop-2.9.1/data/namenode
      

      【讨论】:

      • 我已经安装了 64 位 java 版本 1.8.0_231 并尝试设置 C:\Java\jdk1.8.0_231\binC:\Java\jdk1.8.0_231 并按照您的步骤格式化 namenode,但我仍然收到相同的错误`无法启动 namenode . java.lang.UnsupportedOperationException`
      • 关注本教程exitcondition.com/install-hadoop-windows。之后,如果您遇到相同的错误,请尝试上面给出的答案
      • 按照本教程和您的步骤,仍然是同样的错误
      • 我已经升级了我的答案,你可以参考一下
      • 现在我再次尝试使用 2.9.1
      猜你喜欢
      • 1970-01-01
      • 2011-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-28
      • 2018-05-11
      • 2015-11-01
      相关资源
      最近更新 更多