hadoop集群无法启动datanode节点
我遇到的这种问题是由于我多次格式化namenode造成的,后来启动hadoop集群namenode、SecondaryNameNode都起来了,然后到datanode节点执行jps指令,发现所有的datanode节点都没有起来。
我的解决办法看datanode节点日志:
java.io.IOException: Incompatible clusterIDs in /usr/hadoop/storage/hadoop-2.2.0/hdfs/data: namenode clusterID = CID-6c7f7e70-34ae-4d6d-80e0-7ff3f2bed9a5; datanode clusterID = CID-abba31cb-5e0d-4ea1-83ba-bcc36f0f84a6
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:724)
发现应该是clusterID 和namenode的clusterID 不一致造成的,后来到namenode节点,找到用来存放文件系统元数据文件夹:
我的路径是:【/usr/hadoop/storage/hadoop-2.2.0/hdfs/name/current/】,在其下面有标志版本的VERSION文件,打开找到对应的clusterID,然后修改各个datanode节点的【/usr/hadoop/storage/hadoop-2.2.0/hdfs/data/current】下的各个VERSION文件clusterID,重新启动集群,正常启动。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.