ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceID
2016-10-20 15:38
776 查看
问题的产生:
今天遇到了一个问题
我执行了 ./Hadoop namenode -format 之后
启动hadoop: ./start-all.sh 的时候
运行jps发现 datanode没有起来 但是 TaskTracker是正常启动的
然后我去datanode的错误日志里面发现的下面的问题:
2012-11-23 14:31:14,319 INFO org.apache.hadoop.metrics2.impl.MetricsConfig: loaded properties from hadoop-metrics2.properties
2012-11-23 14:31:14,334 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source MetricsSystem,sub=Stats registered.
2012-11-23 14:31:14,335 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).
2012-11-23 14:31:14,335 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: DataNode metrics system started
2012-11-23 14:31:14,406 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source ugi registered.
2012-11-23 14:31:14,798 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /data/hdfs/data: namenode namespaceID = 971169702; datanode namespaceID = 1507918015
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.(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)
/data/hdfs/data
这个目录是我 hdfs-site.xml 配置文件里面 dfs.data.dir 的值:
dfs.data.dir
/data/hdfs/data
解决的办法:
1.进入每个datanode的 dfs.data.dir 的 current目录,修改里面的文件VERSION
storageID=DS-2085496284-192.168.1.244-50010-1353654017403
cTime=0
storageType=DATA_NODE
layoutVersion=-32
里面有个 namespaceID 将其修改成为报错信息中的
namenode namespaceID = 971169702
相同的 namespaceID .
然后重新启动 datanode全部都能正常启动了。
2.由于是测试环境,于是产生的第一个想法是 直接删除每个datanode 上面 dfs.data.dir目录下所有的文件
rm -rf *
删除之后
重新启动 也是可以正常的启动所有的datanode
进到dfs.data.dir目录下 所有的datanode又全部重新生成了。
今天遇到了一个问题
我执行了 ./Hadoop namenode -format 之后
启动hadoop: ./start-all.sh 的时候
运行jps发现 datanode没有起来 但是 TaskTracker是正常启动的
然后我去datanode的错误日志里面发现的下面的问题:
2012-11-23 14:31:14,319 INFO org.apache.hadoop.metrics2.impl.MetricsConfig: loaded properties from hadoop-metrics2.properties
2012-11-23 14:31:14,334 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source MetricsSystem,sub=Stats registered.
2012-11-23 14:31:14,335 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).
2012-11-23 14:31:14,335 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: DataNode metrics system started
2012-11-23 14:31:14,406 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source ugi registered.
2012-11-23 14:31:14,798 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /data/hdfs/data: namenode namespaceID = 971169702; datanode namespaceID = 1507918015
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.(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)
/data/hdfs/data
这个目录是我 hdfs-site.xml 配置文件里面 dfs.data.dir 的值:
dfs.data.dir
/data/hdfs/data
解决的办法:
1.进入每个datanode的 dfs.data.dir 的 current目录,修改里面的文件VERSION
Fri Nov 23 15:00:17 CST 2012
namespaceID=246015542storageID=DS-2085496284-192.168.1.244-50010-1353654017403
cTime=0
storageType=DATA_NODE
layoutVersion=-32
里面有个 namespaceID 将其修改成为报错信息中的
namenode namespaceID = 971169702
相同的 namespaceID .
然后重新启动 datanode全部都能正常启动了。
2.由于是测试环境,于是产生的第一个想法是 直接删除每个datanode 上面 dfs.data.dir目录下所有的文件
rm -rf *
删除之后
重新启动 也是可以正常的启动所有的datanode
进到dfs.data.dir目录下 所有的datanode又全部重新生成了。
相关文章推荐
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceID
- org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /
- org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs
- org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in
- Hadoop Problem : org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Cannot lock storage /op
- hadoop配置新节点后,出现 org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible n
- 564 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: IOException in offerService java.io.IOExce
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Incompatible namespaceIDs
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Incompatible namespaceIDs
- 云计算学习笔记---异常处理---hadoop问题处理ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.lang.NullPoin
- org.apache.hadoop.hdfs.server.datanode.DataNode: Invalid dfs.datanode.data.dir /chunk : java.io.Fil
- hadoop错误FATAL org.apache.hadoop.hdfs.server.namenode.NameNode Exception in namenode join java.io.IOException There appears to be a gap in the edit log
- java.io.IOException: Incompatible namespaceIDs in /usr/hadoop/tmp/dfs/data: namenode namespaceID = 6
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: All directories in dfs.data.dir are invalid
- Hadoop问题DataNode error (ERROR org.apache.hadoop.hdfs.server.datanode.DataNode)
- org.apache.hadoop.hdfs.server.datanode.DataNode: Block pool <registering> (storage id unknown) servi
- 解决hiveserver2报错:java.io.IOException: Job status not available - Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
- DataNode: java.io.IOException: Incompatible namespaceIDs in /dfs/dfs/data: namenode namespaceID = 69
- Hadoop Problem : java.io.IOException: Unknown protocol to DataNode: org.apache.hadoop.mapred.JobSubm