在hadoop重新format namenode后在hdfs上创建文件夹没有问题,但是就所不能上传文件。上传的文件也只有文件名,文件内容为空。并且报could only be replicated to 0nodes ,instead of 1。查看logs中的datanode日志,发现如下错误:
************************************************************/
2014-10-10 22:47:39,595 ERROR
org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /usr/local/hadoop-0.20.2/data: namenode namespaceID = 1720336629; datanode namespaceID = 580327193
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:233)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:148)
at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:298)
at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:216)
at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1283)
at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1238)
at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1246)
at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1368)
2014-10-10 22:47:39,596 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:
/************************************************************
大概意思就是namenode的namespaceIDS与datanode的namespaceIDS不同,产生这种结果的原因是在namenode format时产生了一个新的nameSpaceId ,并将这个id写到来namenode中,但是datanode中的namespaceIDS还是老的id,当你在往hdfs上写数据时,namenode找不到datanode(datanode上的namespaceIDS都与namenode中的不同)
解决方法:
方法1:namenode的namespaceIDS存放位置:在hdfs-site.xml文件中配置的dfs.name.dir路径下/current/VERSION文件中。datanode的namespaceIDS存放位置,dfs.data.dirl路径下/current/VERSION文件中,将namenode的spaceIDS拷贝到datanode中。重新启动datanode就ok了。
方法2:删除dfs.data.dir路径下的文件,停止hadoop服务,format namenode,启动hadoop服务,ok问题解决。
分享到:
相关推荐
hadoop web tomcat上传文件,自己写的一个WEB只有上传文件功能,hadoop.rar是已经发布的解压直接放到TOMCAT WEBAPPS下就可以运行
CDH hadoop-fuse-dfs的安装指导,是我在工作过程中安装步鄹的总结。
hadoop的默认配置文件,下载记得关注我哦
上传文件到Hadoop失败的原因分析及解决方法.pdf
hadoop的dll文件 hadoop.zip
利用struts2上传文件到hdfs,并从hdfs下载文件。程序运行前提是搭建好hadoop环境。
Hadoop HA 集群搭建所需要的配置文件:core-site,hdfs-site,mapred-site,yarn-site四个xml文件和一个slaves文件
hadoop2.7.2安装依赖文件,用于在window下调试hadoop! hadoop2.7.2安装依赖文件,用于在window下调试hadoop hadoop2.7.2安装依赖文件,用于在window下调试hadoop
Hadoop 2.2.0 配置文件 在4台CentOs 6.4版本下运行成功
hadoop/etc/hadoop/6个文件 core-site.xml hadoop-env.sh hdfs-site.xml mapred-site.xml yarn-env.sh yarn-site.xml
hadoop在windows上运行需要winutils支持和hadoop.dll等文件
hadoop2.x配置文件,一共八个文件,能够配置hadoop yarn等框架
hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件
十分详细的Hadoop虚拟集群的搭建,手把手教,从安装虚拟机到集群搭建完成每一步手把手教,包教包会。
Hadoop3.1.3 配置文件
Hadoop 2.0部署配置文件示例.zip
Hadoop安装过程下的配置文件,包括core-site.xml和yarn-site.xml的配置
基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题...
hadoop-3.0.0 windows下配置文件,winutils支持和hadoop.dll等文件,解压取出bin覆盖hadoop-3.0.0\bin即可。不需要cygwin。