bug宝典hadoop篇 org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <

来源:互联网 发布:matlab编程第二版.pdf 编辑:程序博客网 时间:2024/04/28 03:26

注意重新格式化后会出现这个问题
2016-08-18 16:16:21,467 INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /home/hadoop/platform/hadoop/hdfs/data/in_use.lock acquired by nodename 13157@dashuju173
2016-08-18 16:16:21,470 WARN org.apache.hadoop.hdfs.server.common.Storage: java.io.IOException: Incompatible clusterIDs in /home/hadoop/platform/hadoop/hdfs/data: namenode clusterID = CID-05474890-eebc-468e-ae8e-bcd149bbb0ab; datanode clusterID = CID-ef549c2f-93a4-47f4-a2ea-0ee95cf5c96d
2016-08-18 16:16:21,471 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool (Datanode Uuid unassigned) service to dashuju174/192.168.5.174:9000. Exiting.
java.io.IOException: All specified directories are failed to load.
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:478)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1338)
从日志上看,加粗的部分说明了问题
datanode的clusterID 和 namenode的clusterID 不匹配。

解决办法:
根据日志中的路径,cd /home/hadoop/platform/hadoop/hdfs
能看到 data和name两个文件夹,
将name/current下的VERSION中的clusterID复制到data/current下的VERSION中,覆盖掉原来的clusterID
让两个保持一致
然后重启,启动后执行jps,查看进程
20131 SecondaryNameNode
20449 NodeManager
19776 NameNode
21123 Jps
19918 DataNode
20305 ResourceManager

0 0
原创粉丝点击