在搭建hadoop集群的时候,我们可能经常会碰到如下问题,从而导致无法启动datanode
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespac
eIDs in /root/hadoop_tmp/hadoop_root/dfs/data: namenode namespaceID = 1977809805; datanode namespaceID = 1575093118
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:232)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:147)
at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:385)
at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:299)
at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1582)
at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1521)
at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1539)
at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1665)
at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1682)
2013-05-15 02:27:47,968 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:
一般的解决办法如下;
1、 首先检查conf/masters 和conf/slaves文件,确保配置没错。
2、然后把所有节点的hadoop.tmp.dir指定的文件夹下的内容全部删掉
重新在master设备上执行启动程序:
- $ bin/hadoop namenode -format
- $ bin/start-all.sh