zoukankan      html  css  js  c++  java
  • 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即可。

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

  • 相关阅读:
    手机版页面跳转
    设计模式转载(史上最全设计模式导学目录|完整版)
    linux 常用命令
    数据结构与算法JavaScript描述.
    常用算法js版(冒泡排序 ,选择排序 ,插入排序 ,希尔排序 ,归并排序 ,快速排序 ,堆排序 ,计数排序 ,桶排序 ,基数排序)
    伪元素和伪类
    双向数据绑定
    2016年黑马程序员已出品各学科最新学习路线图:
    jQuery插件开发全解析
    蛋白质、碳水化合物和脂肪
  • 原文地址:https://www.cnblogs.com/rao11/p/12364790.html
Copyright © 2011-2022 走看看