25.25.37DataNode启动后自动停止的问题 java.io.IOException: Incompatible clusterIDs in /home/lxh/hadoop/hdfs/data: namenode clusterID = CID-a3938a0b-57b5-458d-841c-d096e2b7a71c; datanode clusterID = CID-200e6206-98b5-44b2-9e48-2628718

25.25.37.1概述

解决hadoop启动hdfs时,datanode无法启动的问题。错误为:

java.io.IOException: Incompatible clusterIDs in /home/lxh/hadoop/hdfs/data: namenode clusterID = CID-a3938a0b-57b5-458d-841c-d096e2b7a71c; datanode clusterID = CID-200e6206-98b5-44b2-9e48-262871884eeb

25.25.37.2问题描述

执行start-dfs.sh后,根据打印日志,可以看到分别执行了NameNode、DataNode的操作。

Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/lxh/hadoop/hadoop-2.4.1/logs/hadoop-lxh-namenode-ubuntu.out
localhost: starting datanode, logging to /home/lxh/hadoop/hadoop-2.4.1/logs/hadoop-lxh-datanode-ubuntu.out

但是执行jps查看启动结果时,返现DataNode并没有启动。

10256 ResourceManager
29634 NameNode
29939 SecondaryNameNode
30054 Jps
10399 NodeManager

25.25.37.3查找问题

很是费解,刚刚还能够正常运行,并且执行了wordcount的测试程序。于是回想了一下刚才的操作,执行了dfs格式化(hdfs namenode -format和hdfs datanode -format),然后重新启动就出现了这个情况。难道与格式化有关?于是查看日志:

2014-08-08 00:32:08,787 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1:9000. Exiting.
java.io.IOException: Incompatible clusterIDs in /home/lxh/hadoop/hdfs/data: namenode clusterID = CID-a3938a0b-57b5-458d-841c-d096e2b7a71c; datanode clusterID = CID-200e6206-98b5-44b2-9e48-262871884eeb
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:477)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:226)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:254)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:974)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:945)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:278)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:220)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:816)
at java.lang.Thread.run(Thread.java:745)
2014-08-08 00:32:08,790 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool <registering> (Datanode Uuid unassigned) service to localhost/127.0.0.1:9000
2014-08-08 00:32:08,791 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool <registering> (Datanode Uuid unassigned)

根据日志描述,原因是datanode的clusterID 和 namenode的clusterID 不匹配。
原因找到,看看是否如日志描述的这样。
打开hdfs-site.xml中关于datanode和namenode对应的目录,分别打开其中的current/VERSION文件,进行对比。
${datanode}/current/VERSION:

storageID=DS-be8dfa2b-17b1-4c9f-bbfe-4898956a39ed
clusterID=CID-200e6206-98b5-44b2-9e48-262871884eeb
cTime=0
datanodeUuid=406b6d6a-0cb1-453d-b689-9ee62433b15d
storageType=DATA_NODE
layoutVersion=-55

${namenode}/current/VERSION:

namespaceID=670379
clusterID=CID-a3938a0b-57b5-458d-841c-d096e2b7a71c
cTime=0
storageType=NAME_NODE
blockpoolID=BP-325596647-127.0.1.1-1407429078192
layoutVersion=-56

果然如日志中记录的一样,于是修改datanode的VERSION文件中的clusterID,使与namenode保持一致,然后启动dfs(执行start-dfs.sh),在执行jps查看启动情况,发现全部正常启动。

10256 ResourceManager
30614 NameNode
30759 DataNode
30935 SecondaryNameNode
31038 Jps
10399 NodeManager

25.25.37.4分析问题原因

执行hdfs namenode -format后,current目录会删除并重新生成,其中VERSION文件中的clusterID也会随之变化,而datanode的VERSION文件中的clusterID保持不变,造成两个clusterID不一致。

所以为了避免这种情况,可以再执行的namenode格式化之后,删除datanode的current文件夹,或者修改datanode的VERSION文件中出clusterID与namenode的VERSION文件中的clusterID一样,然后重新启动dfs。

DataNode启动后自动停止的问题( Incompatible clusterIDs in /xxx/xxx;namenode clusterID = xxxx;datanode clusterI)相关推荐

  1. 新建springboot项目启动后自动停止

    问题描述 刚开始学习SpringBoot,新建项目启动后自动停止. 2021-04-26 10:10:22.123 INFO 18992 --- [ main] com.fanfan.Springbo ...

  2. 安装XAMPP, MYSQL 启动后自动停止

    XAMPP安装步骤 http://www.51testing.com/?uid-111433-action-viewspace-itemid-90256 http://www.leapsoul.cn/ ...

  3. Playframework项目启动后自动停止问题记录

    为什么80%的码农都做不了架构师?>>>    问题描述:Playframework项目activator start启动后会自动停止 解决步骤: 1.在conf/applicati ...

  4. MySQL服务器启动后自动停止

    很久没用MySQL,一登陆就碰到这样的问题,查了很多资料,搞了好久终于解决了. 登录MySQL时出现10061错误,如下图 出现这个就说明电脑上的mysql服务还没打开. 打开方法:1.电脑搜索服务, ...

  5. namenode多次格式化以后datanode启动后秒挂

    在格式化之前可以现去hadoop目录下的打开 etc/hadoop里面的core-site文件 查看hadoop运行时临时文件的产生的位置,我的位置是在/data/tmp中 进到/data/tmp/d ...

  6. network setup service启动后自动停止_一个简单的测试环境下的自动化部署方案

    笔者是公司是一个分前后端开发的公司.而笔者是一个普通的后端开发工程师.在和前端工程师协同开发时,为了给前端工程师提供接口,往往要将写好的代码交付并部署到测试环境.因而这导致笔者经常需要打包项目更新到测 ...

  7. 大数据运维:datanode启动后挂了Initialization failed for Block pool <registering>

    1.案发现场还原 datanode节点因为坏盘,机器卡死掉线,datanode退役.把坏盘目录去掉后,重启datanode后,出现运行一会后dn自动挂掉的情况. 查看日志报错如下: 1月 8, 上午1 ...

  8. Win10 Network Setup Service服务启动后自动停止问题的解决方案

    问题描述 网卡属性界面为空白 解决方案 1.打开服务,找到Network Setup Service服务 2.在启动"Network Setup Service"服务的之后的瞬间, ...

  9. 解决:mysql服务启动后自动停止

    1 删掉mysqlData文件夹(或者备份也行) 2 使用管理员身份打开cmd 3 进入到mysql的bin目录下 4 执行mysqld --no-defaults --initialize (初始化 ...

最新文章

  1. S3C6410嵌入式应用平台构建(六)——linux-3.14.4移植到OK6410-(Yaffs2文件系统移植)...
  2. Python3中提示:no module named 'wxpy'
  3. BZOJ1305: [CQOI2009]dance跳舞
  4. VTK:小部件之TexturedButtonWidget
  5. 2.4 1死锁的概念(1)
  6. mysql5.4升级5.6_如何在CentOS上升级php5.4至5.6?
  7. c if 判断select已经选择的值_「Linux」——select和epoll详解
  8. k8s集群部署项目_JAVA项目(制作镜像)---K8S_Google工作笔记0060
  9. Linux CentOS安装JDK
  10. 计算机基础(九):C语言基础知识小结
  11. jcr多久更新一次_sci分区什么时候更新
  12. 计算机 连接 手机 记录,手机数据怎么连接电脑
  13. Vue实现 侧边固定定位图标 滑动隐藏
  14. 怎么做 Satellite assemblies
  15. 接地GND的目的是什么?
  16. Ubuntu 18.04 服务器版安装桌面及软件
  17. CNPC海外操作人员英语日常用语900句
  18. 缺失数据填补基础方法(1)——k-Nearest Neighbors (kNN) 填补
  19. GeoGebra 数列极限
  20. cmstop框架目录设置

热门文章

  1. linux c 编程 pdf_C/C++编程笔记:Linux 日志文件系统未解之谜,你知道吗?
  2. 归并排序验证性实验_攻略 | 10 大经典排序算法(Python 版)
  3. centos7.2 mysql集群_Centos7.2下安装mysql-group-replication数据库集群
  4. python使用环境_使用python之环境管理
  5. MySQL数据库安装与Navicat Premium 12 安装与破解
  6. (第一课)Python学习之蟒蛇绘制
  7. JavaScript实现数乘以二multiplyByTwo算法(附完整源码)
  8. wxWidgets:窗口 ID
  9. boost::posix_time模块实现本地时间和 UTC 之间的转换的测试程序
  10. VTK:可视化算法之FilledContours