Hadoop--DataNode无法启动

[email protected]:/usr/local/hadoop/hadoop-2.2.0/hdfs/data/current$ jps
11634 SecondaryNameNode
11315 NameNode
11779 ResourceManager
11910 NodeManager
12534 Jps

  启动hadoop后发现DataNode没有启动,查看日志logs/hadoop-hadoop-datanode-yts-Rev-1-0.log中的内容,日志

  查看日志如下:  

java.io.IOException: Incompatible clusterIDs in /usr/local/hadoop/hadoop-2.2.0/hdfs/data: namenode clusterID = CID-519c284d-c80a-47e0-b660-b7bba79f363e; datanode clusterID = CID-08483061-44f1-483c-a1fa-f8160835015d
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:391)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:191)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:219)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:837)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:808)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:280)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:222)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:664)
at java.lang.Thread.run(Thread.java:745)
2014-10-11 09:49:02,500 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool BP-1615382850-127.0.1.1-1412990967046 (storage id DS-1929896092-127.0.1.1-50010-1412933345417) service to localhost/127.0.0.1:9000
2014-10-11 09:49:02,502 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool BP-1615382850-127.0.1.1-1412990967046 (storage id DS-1929896092-127.0.1.1-50010-1412933345417)
2014-10-11 09:49:04,502 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Exiting Datanode
2014-10-11 09:49:04,504 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 0
2014-10-11 09:49:04,506 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:

从日志中可以看出,原因是因为datanode的clusterID 和 namenode的clusterID 不匹配。

打开hdfs-site.xml里配置的datanode和namenode对应的目录,分别打开current文件夹里的VERSION,可以看到clusterID项正如日志里记录的一样,确实不一致,修改datanode里VERSION文件的clusterID 与namenode里的一致,再重新启动dfs(执行start-dfs.sh)再执行jps命令可以看到datanode已正常启动。

出现该问题的原因:在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format),这时namenode的clusterID会重新生成,而datanode的clusterID 保持不变。

时间: 2024-10-14 12:12:46

Hadoop--DataNode无法启动的相关文章

Hadoop datanode无法启动的错误

在启动Hadoop分布式部署的过程中,发现datanode没有正常启动,查看了一下日志发现报错: java.io.IOException: Incompatible clusterIDs in /opt/hadoop-2.5/dfs/data: namenode clusterID = CID-adf01a94-ae34-4313-acf9-3781a425de66; datanode clusterID = CID-e00fcbab-47c2-4e73-8a4b-c8754dc9960e 原因

Hadoop datanode正常启动,但是Live nodes中却突然缺少节点

热h9灿秤擅朴r5厦氯仿素惭驮什浇俾腿谌nr哉认赡http://blog.sina.com.cn/s/blog_172d23f1e0102wy3m.html亮ci冒缸习劣qy挛颓凹煌用仝较露导热偾yo痛辞月http://blog.sina.com.cn/s/blog_17c7828220102xe6r.html霸wa创叫誓程28亮级位篮椒忱儋奖彻忌河ca呀鬃滴http://blog.sina.com.cn/s/blog_172d240d20102xhs8.html凭84倨退范涂ae悠税再套疑接偈

hadoop datanode启动失败

问题导读: 1.Hadoop出现问题时,该如何入手查看问题?2.datanode无法启动,我们该怎么解决?3.如何动态加入DataNode或TaskTracker? 一.问题描述当我多次格式化文件系统时,如 [email protected]:/usr/local/hadoop-1.0.2# bin/hadoop namenode -format 复制代码 会出现datanode无法启动,查看日志,发现错误为: 2012-04-20 20:39:46,501 ERROR org.apache.h

Hadoop Datanode节点无法启动(All directories in dfs.data.dir are invalid)

Hadoop Datanode节点无法启动(All directories in dfs.data.dir are invalid) java.io.IOException: All directories in dfs.datanode.data.dir are invalid: "/usr/local/hadoop-2.4.0/dfs/data" at org.apache.hadoop.hdfs.server.datanode.DataNode.checkStorageLocat

Hadoop集群启动之后,datanode节点未正常启动的问题

Hadoop集群启动之后,用JPS命令查看进程发现datanode节点上,只有TaskTracker进程.如下图所示 master的进程: 两个slave的节点进程 发现salve节点上竟然没有datanode进程. 查看了日志,发现有这样一句话: 这句话的意思是:datanode上的data目录权限是765,而期望权限是755,所以使用chmod 755 data命令,将目录权限改为755. 再次重启hadoop集群,发现datanode节点已经正常启动.

解决hadoop启动后datanode无法启动问题

hadoop部署完成后datanode无法启动问题解决 1.检查是否有遗留的hadoop进程还在运行,如果有的话,先stop-all.sh或kill杀掉: 2.在master节点上,删除/tmp/hadoop-XXX/下的所有文件: 3.在slave节点上,删除/tmp/hadoop-XXX/下的所有文件: 4.格式化namenode,bin/hadoop namenode -format 5.bin/start-all.sh启动hadoop,检查.

hadoop 完全分布式 下 datanode无法启动解决方法

问题描述: 在集群模式下更改节点后,启动集群发现 datanode一直启动不起来. 我集群配置:有5个节点,分别为master slave1-5 . 在master以Hadoop用户执行:start-all.sh jps查看master节点启动情况: NameNode JobTracker SecondaryNameNode 均已经正常启动,利用 master:50070 , Live Nodes 为0, 随进入 slave1: ssh slave1,  输入命令 jps ,发现只有 TaskT

重新格式化hadoop的namenode导致datanode无法启动的最简单解决办法

一般namenode只格式化一次,重新格式化不仅会导致之前的数据都不可用,而且datanode也会无法启动.在datanode日志中会有类似如下的报错信息: java.io.IOException: Incompatible clusterIDs in /tmp/hadoop-root/dfs/data: namenode clusterID = CID-7f25bc20-e822-4b15-9063-4da48884cb60; datanode clusterID = CID-911d3bd8

格式化hdfs后,hadoop集群启动hdfs,namenode启动成功,datanode未启动

集群格式化hdfs后,在主节点运行启动hdfs后,发现namenode启动了,而datanode没有启动,在其他节点上jps后没有datanode进程!原因: 当我们使用hdfs namenode -format格式化namenode时,会在namenode数据文件夹中保存一个current/VERSION文件,记录clusterID,而datanode中保存的current/VERSION文件中的clustreID的值是第一次格式化保存的clusterID,刚好有进行了一次格式化,在namen

namenode 和datanode无法启动,错误:FSNamesystem initialization failed. datanode.DataNode: Incompatible namespaceIDs

问题一: namenode无法启动,查看日志,错误信息如下: org.apache.hadoop.hdfs.server.namenode.FSNamesystem: FSNamesystem initialization failed. java.io.IOException: NameNode is not formatted.    at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage