问题描述:

在hadoop启动hdfs的之后,使用jps命令查看运行情况时发现hdfs的DataNode并没有打开。

笔者出现此情况前曾使用hdfs namenode -format格式化了hdfs

如有三个hadoop集群,分别为hadoop102,hadoop103,hadoop104 其问题情况如下

可见三个机器均没有将DataNode启动。

问题分析:

进入hadoop根目录的logs中查看DataNode的日志文件

可以看见报错信息

java.io.IOException: Incompatible clusterIDs in /opt/module/hadoop-3.1.3/tmp/dfs/data: namenode clusterID = CID-726c3bd8-d0cd-4d36-a62f-c1ee3723935e; datanode clusterID = CID-0a991ac2-ed1e-4b2c-b179-c7d943eeae1f

这里显示NameNode的clusterID和DataNode的clusterID不一致,所以无法启动DataNode

这种情况可能时因为我们使用hdfs namenode -format的时候仅仅格式化了namenode的clusterID,没有同步格式化DataNode的clusterID。这就导致了二者的clusterID不一致从而无法启动DataNode。

解决方案:

方案一(简单):

删除NameNode所在机器的hadioop根目录etc/hadoop/core-site.xml文件中定义的hadoop.tmp.dir 文件夹。笔者这里设置的时hadoop根目录中的data目录。(有些人设置的时tmp目录,根据自己的配core-site.xml中配置的信息来)

删除NameNode之外的hadoop根目录的data文件夹。

重新格式化hdfs hdfs namenode -format

问题解决!

方案二:

观察刚刚的日志文件,可以知道NameNode的ClusterID为CID-726c3bd8-d0cd-4d36-a62f-c1ee3723935e我们只需要用这个clusterID去替换DataNode文件中的clusterID即可

在NameNode所在机器的hadioop根目录etc/hadoop/core-site.xml文件中定义的hadoop.tmp.dir 文件夹中一直进入到datanode文件中/opt/module/hadoop-3.1.3/tmp/dfs/data/current/VERSION 修改VERSION中的clusterID为刚刚NameNode的clusterID。

在其他机器中,修改data文件夹中的设置/opt/module/hadoop-3.1.3/data/dfs/data/current/VERSION

修改VERSION中的clusterID为刚刚NameNode的clusterID。

问题解决!

解决Hadoop集群hdfs无法启动DataNode的问题的更多相关文章

  1. 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南

    原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...

  2. 安装hadoop集群--hdfs

    安装hadoop集群--hdfs 大数据软件 链接:https://pan.baidu.com/s/1-3PYLHMgvvONawJq55hstQ 提取码:izqf 准备一台干净的虚拟机-centos ...

  3. 最近有安装了一次hadoop集群,NameNode启动失败,及原因

    最近有安装了一次hadoop集群,NameNode启动失败,查看日志,找到以下原因: 遇到的异常1: org.apache.hadoop.hdfs.server.common.Inconsistent ...

  4. Hadoop集群-HDFS集群中大数据运维常用的命令总结

    Hadoop集群-HDFS集群中大数据运维常用的命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客会简单涉及到滚动编辑,融合镜像文件,目录的空间配额等运维操作简介.话 ...

  5. 解决hadoop 集群启动常见错误办法

    hadoop 集群常见错误解决办法 hadoop 集群常见错误解决办法: (一)启动Hadoop集群时易出现的错误: 1.   错误现象:Java.NET.NoRouteToHostException ...

  6. hadoop集群的节点启动问题

    start-all.sh 启动集群时,NameNode或DataNode节点启动不了,但之前可以启动. 查看hadoop中hdfs-site.xml配置文件 <property> < ...

  7. hadoop集群namenode同时挂datanode

    背景:(测试环境)只有两台机器一台namenode一台namenode,但集群只有一个结点感觉不出来效果,在namenode上挂一个datanode就有两个节点,弊端见最后 操作非常简单(添加独立节点 ...

  8. 4.Hadoop集群搭建之启动

    配置好Hadoop.HDFS.YARN.Zookeeper集群后,需要按照顺序启动. 前期准备 配置好Hadoop.HDFS.YARN.Zookeeper集群 先stop掉所有的hadoop服务 使用 ...

  9. 大数据 时间同步问题 解决hbase集群节点HRegionServer启动后自动关闭

    1)在hbase-site.xml文件中 修改增加 ,将时间改大点<property><name>hbase.master.maxclockskew</name>& ...

随机推荐

  1. Solution Set -「ABC 217」

      大家好屑兔子又来啦! [A - Lexicographic Order]   说个笑话,\(\color{black}{\text{W}}\color{red}{\text{alkingDead} ...

  2. 上架打包错误:error itms-90086

    这是一个很纠结的错误 大家第一反应肯定是 赶紧去看看 位数是否设置  然后发现没有问题  就开始懵逼了 (比如我) 然而无意看到了一个人写的简书 这个人在 Overflow 找到了一个答案 比如你选择 ...

  3. [LeetCode]1512. 好数对的数目

    给你一个整数数组 nums . 如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 . 返回好数对的数目. 示例 1: 输入:nu ...

  4. ☕Java 面向对象进阶内容

    目录 == 和 equals 方法 封装 多态 抽象类和抽象方法 抽象方法 抽象类 抽象类的使用要点 接口 接口使用 内部类 String 字符串常量拼接时的优化 String Pool String ...

  5. Blazor和Vue对比学习(基础1.1):组件结构

    难度:★ 简单说一说: 1.Vue和Blazor都遵循单文件结果,即HTML(视图模板).CSS(样式).JS/C#(代码逻辑)写在一个文件里,Vue的文件后缀为.vue,Blazor的文件后缀为.r ...

  6. Spark分区数、task数目、core数目、worker节点数目、executor数目梳理

    Spark分区数.task数目.core数目.worker节点数目.executor数目梳理 spark隐式创建由操作组成的逻辑上的有向无环图.驱动器执行时,它会把这个逻辑图转换为物理执行计划,然后将 ...

  7. WPS:为什么无法页眉页脚同前节(同前节是灰的)

    问题:,同前节是灰的 原因:全文只有一节,插入分节符就可以设置同前节了

  8. broken pipe 报错分析和解决办法

    参考资料: 1.博客1:https://blog.csdn.net/qq_37535749/article/details/113781338 2.博客2:https://blog.csdn.net/ ...

  9. python面试_总结02_代码题

    - 代码题 1.创建一个函数,接收一个字符串参数,判断其做为Python标识符是否合法. 具体要求: 如果合法则输出 True,否则输出 False. 如果该字符串与Python内置的关键字,或Bif ...

  10. JZ-048-不用加减乘除做加法

    不用加减乘除做加法 题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 题目链接: 不用加减乘除做加法 代码 /** * 标题:不用加减乘除做加法 * 题目描述 ...