java.io.IOException: All specified directories have failed to load.

Posted 饶一一

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java.io.IOException: All specified directories have failed to load.相关的知识,希望对你有一定的参考价值。

java.io.IOException: All specified directories have failed to load.
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:552)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1705)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1665)
    at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:390)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:280)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:816)
    at java.lang.Thread.run(Thread.java:748)

  产生原因:

    时隔半年,重新安装一次Hadoop,出现了上述的问题,原因是我在启动FDFS时没有启动namenode,然后就重新进行了格式化,结果namenode启动成功了,datanode却无法启动了,原因时在进行多次格式化的之后,namenode和datanode的clusterID不同了。

 

  解决办法:找到namenode和datanode的VERSION文件,文件路径在hdfs-site.xml中配置,我的是如下路径,每个人的路径根据自己的配置有所不同

  

<property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///export/servers/hadoop-3.1.1/datas/namenode/namenodedatas</value>
    </property>
   
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///export/servers/hadoop-3.1.1/datas/datanode/datanodeDatas</value>
    </property>

  把datanode的clusterID改为namenode的clusterID,记住所有机器的datanode的clusterID都要改,然后重新启动hadoop即可。

  做大数据一定要养成看日志的习惯,大数据出错的地方实在太多了,而且不会在控制台显示错误,这个时候就要去日志里面找错误。

 

以上是关于java.io.IOException: All specified directories have failed to load.的主要内容,如果未能解决你的问题,请参考以下文章

React Native:错误:[消息/未知] java.io.IOException:java.util.concurrent.ExecutionException:java.io.IOExcept

java.io.IOException: toDerInputStream 拒绝标签类型 77

java.io.IOException:系统找不到指定的路径

java.io.IOException: Connection reset by peer和java.io.IOException: Connection timed out。Socket

android java.io.IOException:传输端点未连接

任务 ':app:compileDebugKotlin' java.io.IOException 执行失败