Hadoop Hdfs DataNode 启动失败
2016-11-28 17:01
651 查看
FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool BP-510292565-192.168.246.128-1480349157516 (storage id DS-1215049814-192.168.88.130-50010-1455139414431) service to node2/192.168.246.131:8020
java.io.IOException: Incompatible clusterIDs in /opt/hadoop2/dfs/data: namenode clusterID = CID-14cfdb37-d378-4aa5-815b-2c84417ddbf9; datanode clusterID = CID-584a9b34-9a97-4155-8373-8b285674e9f3
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)
出现这个问题的原因是DataNode的clusterID和NameNode的clusterID不匹配. --clusterID的作用是唯一标识一个集群.
解决办法是,将name/current中的VERSION中的clusterID 覆盖data/current下的VERSION中的clusterID
-rw-r--r--. 1 root root 30 Nov 29 00:26 edits_0000000000000000014-0000000000000000015
-rw-r--r--. 1 root root 30 Nov 29 00:28 edits_0000000000000000016-0000000000000000017
-rw-r--r--. 1 root root 30 Nov 29 00:30 edits_0000000000000000018-0000000000000000019
-rw-r--r--. 1 root root 30 Nov 29 00:32 edits_0000000000000000020-0000000000000000021
-rw-r--r--. 1 root root 30 Nov 29 00:34 edits_0000000000000000022-0000000000000000023
-rw-r--r--. 1 root root 30 Nov 29 00:36 edits_0000000000000000024-0000000000000000025
-rw-r--r--. 1 root root 30 Nov 29 00:38 edits_0000000000000000026-0000000000000000027
-rw-r--r--. 1 root root 30 Nov 29 00:40 edits_0000000000000000028-0000000000000000029
-rw-r--r--. 1 root root 30 Nov 29 00:42 edits_0000000000000000030-0000000000000000031
-rw-r--r--. 1 root root 30 Nov 29 00:44 edits_0000000000000000032-0000000000000000033
-rw-r--r--. 1 root root 30 Nov 29 00:46 edits_0000000000000000034-0000000000000000035
-rw-r--r--. 1 root root 30 Nov 29 00:48 edits_0000000000000000036-0000000000000000037
-rw-r--r--. 1 root root 30 Nov 29 00:50 edits_0000000000000000038-0000000000000000039
-rw-r--r--. 1 root root 30 Nov 29 00:52 edits_0000000000000000040-0000000000000000041
-rw-r--r--. 1 root root 30 Nov 29 00:54 edits_0000000000000000042-0000000000000000043
-rw-r--r--. 1 root root 1048576 Nov 29 00:54 edits_inprogress_0000000000000000044
-rw-r--r--. 1 root root 196 Nov 29 00:05 fsimage_0000000000000000000
-rw-r--r--. 1 root root 62 Nov 29 00:05 fsimage_0000000000000000000.md5
-rw-r--r--. 1 root root 3 Nov 29 00:54 seen_txid
-rw-r--r--. 1 root root 207 Nov 29 00:05 VERSION
[root@node1 current]# pwd
/opt/hadoop2/dfs/name/current
然后重启hdfs 可以看到没有启动的datanode 已经启动.
出现这个问题的原因是,在第一次格式化hdfs后,启动并使用了hadoop,在使用一段时间之后,又执行了 hdfs namenode -format命令,在这个过程中,出现流程上的错误,导致
namenode的clusterID重新生成了,但是datanode的clusterID没有重新生成
踩
java.io.IOException: Incompatible clusterIDs in /opt/hadoop2/dfs/data: namenode clusterID = CID-14cfdb37-d378-4aa5-815b-2c84417ddbf9; datanode clusterID = CID-584a9b34-9a97-4155-8373-8b285674e9f3
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)
出现这个问题的原因是DataNode的clusterID和NameNode的clusterID不匹配. --clusterID的作用是唯一标识一个集群.
解决办法是,将name/current中的VERSION中的clusterID 覆盖data/current下的VERSION中的clusterID
-rw-r--r--. 1 root root 30 Nov 29 00:26 edits_0000000000000000014-0000000000000000015
-rw-r--r--. 1 root root 30 Nov 29 00:28 edits_0000000000000000016-0000000000000000017
-rw-r--r--. 1 root root 30 Nov 29 00:30 edits_0000000000000000018-0000000000000000019
-rw-r--r--. 1 root root 30 Nov 29 00:32 edits_0000000000000000020-0000000000000000021
-rw-r--r--. 1 root root 30 Nov 29 00:34 edits_0000000000000000022-0000000000000000023
-rw-r--r--. 1 root root 30 Nov 29 00:36 edits_0000000000000000024-0000000000000000025
-rw-r--r--. 1 root root 30 Nov 29 00:38 edits_0000000000000000026-0000000000000000027
-rw-r--r--. 1 root root 30 Nov 29 00:40 edits_0000000000000000028-0000000000000000029
-rw-r--r--. 1 root root 30 Nov 29 00:42 edits_0000000000000000030-0000000000000000031
-rw-r--r--. 1 root root 30 Nov 29 00:44 edits_0000000000000000032-0000000000000000033
-rw-r--r--. 1 root root 30 Nov 29 00:46 edits_0000000000000000034-0000000000000000035
-rw-r--r--. 1 root root 30 Nov 29 00:48 edits_0000000000000000036-0000000000000000037
-rw-r--r--. 1 root root 30 Nov 29 00:50 edits_0000000000000000038-0000000000000000039
-rw-r--r--. 1 root root 30 Nov 29 00:52 edits_0000000000000000040-0000000000000000041
-rw-r--r--. 1 root root 30 Nov 29 00:54 edits_0000000000000000042-0000000000000000043
-rw-r--r--. 1 root root 1048576 Nov 29 00:54 edits_inprogress_0000000000000000044
-rw-r--r--. 1 root root 196 Nov 29 00:05 fsimage_0000000000000000000
-rw-r--r--. 1 root root 62 Nov 29 00:05 fsimage_0000000000000000000.md5
-rw-r--r--. 1 root root 3 Nov 29 00:54 seen_txid
-rw-r--r--. 1 root root 207 Nov 29 00:05 VERSION
[root@node1 current]# pwd
/opt/hadoop2/dfs/name/current
然后重启hdfs 可以看到没有启动的datanode 已经启动.
出现这个问题的原因是,在第一次格式化hdfs后,启动并使用了hadoop,在使用一段时间之后,又执行了 hdfs namenode -format命令,在这个过程中,出现流程上的错误,导致
namenode的clusterID重新生成了,但是datanode的clusterID没有重新生成
踩
相关文章推荐
- hadoop 中 HDFS 由于多次格式化引起的 nanenode 与 datanode 启动异常
- hdfs datanode 启动失败
- hadoop学习笔记(2)-hadoop安装目录权限的问题导致datanode启动失败
- Hadoop 启动节点Datanode失败解决
- 在集群上安装Hadoop1.2.1,并配置好,启动hdfs后使用jps查看datanode,启动后过一会再看就消失了
- hadoop集群启动时DataNode节点启动失败
- 当Hadoop 启动节点Datanode失败解决
- hadoop datanode 启动失败,没有任何报错的解决
- Hadoop 启动节点Datanode失败解决
- 在HDFS集群中优化secondary namenode到datanode1节点上,并做重启hdfs集群后,datanode1启动失败
- hdfs环境搭建,datanode启动失败解决办法。
- hadoop分布式环境部署之namenode或datanode启动失败
- hadoop-HA集群搭建,启动DataNode,检测启动状态,执行HDFS命令,启动YARN,HDFS权限配置,C++客户端编程,常见错误
- hadoop启动datanode失败
- Hadoop中启动hdfs时DataNode没有启动
- hadoop集群启动时DataNode节点启动失败
- Hadoop 2.7.2 HA datanode 启动失败处理
- hadoop里的hdfs datanode 不能启动的问题
- Hadoop datanode重新加载失败 无法启动解决步骤
- hadoop启动datanode总有一个失败