hadoop里nameNode和dateNode的ID不一致解决办法

    科技2025-01-02  22

    文章目录

    前言解决方案第一种:根据日志找到clusterID第二种:删除所有节点里的临时文件 总结


    前言

    namenode启动了,但是datanode没有启动,查看日志文件logs的datanode 查看到warn警告,仔细阅读后发现日志报错原因是

    2020-10-08 04:15:46,298 WARN org.apache.hadoop.hdfs.server.common.Storage: Failed to add storage directory [DISK]file:/export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas/ java.io.IOException: Incompatible clusterIDs in /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas: namenode clusterID = CID-2f09afac-b688-4da5-b214-b44b5195fb62; datanode clusterID = CID-3bdc9d55-c3c8-4849-84ca-5021ef795ee7

    namenode的id和datanode的id不一致,猜测可能是因为格式化了多次namenode,因为每次格式化namenode会更新clusterID,但是datanode只会在首次格式化时确定,所以导致两个ID不一致,解决方法有多种如下:


    解决方案

    第一种:根据日志找到clusterID

    先将

    /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas/current/VERSION

    的clusterID复制替换到

    /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas/current/VERSION

    下,然后再重启hadoop相关节点服务,最后DataNode可以正常运行

    第二种:删除所有节点里的临时文件

    删除

    /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas/

    目录下的的current 1:cd到

    /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/datanodeDatas/

    2:找到并rm -rf current 3:再进入到

    /export/servers/hadoop-2.6.0-cdh5.14.0/sbin

    启动hadoop相关节点服务,最后DataNode可以正常运行


    下为运行正常后的效果图:


    总结

    提示:以上两种方法需要各位酌情使用 复制粘贴ID可能会有遗漏 第二种方法是直接删除文件,会导致数据丢失 所以不要轻易就格式化hadoop哦

    Processed: 0.011, SQL: 8