无法将文件放入HDFS

时间:2014-03-24 12:03:44

标签: hadoop

我正在尝试设置一个hadoop多节点集群,我遇到了以下问题。 我有一个节点作为主节点而另一个节点作为从节点。

似乎一切都很好,因为当我执行{jps}时,我得到了主人的这个过程:

{
29983 SecondaryNameNode
30596 Jps
29671 NameNode
30142 ResourceManager
}

这是奴隶的:

{  
18096 NodeManager  
17847 DataNode  
18197 Jps  
}  

不幸的是,当我尝试-put命令时,我收到此错误:

  

hduser @ master:/ usr / local / hadoop / bin $ ./hdfs dfs -put / home / hduser / Ejemplos / fichero / Ejemplos /   14/03/24 12:49:06 WARN util.NativeCodeLoader:无法为您的平台加载native-hadoop库...使用适用的builtin-java类   14/03/24 12:49:07 WARN hdfs.DFSClient:DataStreamer Exception   org.apache.hadoop.ipc.RemoteException(java.io.IOException):File / Ejemplos / fichero。 COPYING 只能复制到0个节点而不是minReplication(= 1)。有0个数据节点在运行,并且在此操作中不排除任何节点。

当我去WebUI时,有0个实时节点,我不知道为什么! 我无法修复此错误,我将不胜感激!

4 个答案:

答案 0 :(得分:1)

File /Ejemplos/fichero.COPYING could only be replicated to 0 nodes instead of minReplication (=1). There are 0 datanode(s) running and no node(s) are excluded in this operation.

上述错误意味着数据节点已关闭或无法与namenode正常通信。您可以检查在hdfs-site.xml,core-site.xml中指定的配置。

答案 1 :(得分:1)

我有类似的问题,并解决了这个问题:

  1. 停止hadoop(stop-dfs.sh和stop-yarn.sh)
  2. 手动删除dfs / namenode和dfs / datanode目录
  3. 格式namenode(hdfs namenode -format)
  4. 启动hadoop(start-dfs.sh和start-yarn.sh)
  5. 在$ HADOOP_HOME / etc / hadoop中可能还有其他问题,例如缺少磁盘空间或从属(默认情况下,这实际上配置为 localhost 。)< / p>

答案 2 :(得分:0)

您正在使用

./hdfs dfs -put....

尝试

hadoop fs -put LocalFile.name /username/

hadoop fs -copyFromLocal LocalFile.name /username/

答案 3 :(得分:0)

您需要检查数据节点(从站)的日志文件是否存在设置错误。如果您运行cloudera CDH,您将在/ var / log / hadoop-hdfs中找到它们,否则在配置中指定的目录中找到它们。

错误&#34;只能复制到0个节点&#34;指出那里的问题。

还要确保slave和master可以通过ssh与密钥验证连接。

只是一个简单的问题:你确实格式化了你的名字节点吗?