Hadoop 2.7.2单节点集群示例失败

时间:2016-05-15 14:13:25

标签: hadoop hdfs

我跟随here的单节点群集示例。 直到执行下的第5步,一切正常,但我得到以下错误输出:

Asafs-MBP:hadoop-2.7.2 asafchelouche$ bin/hdfs dfs -put etc/hadoop input
16/05/15 17:04:13 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: `input': No such file or directory
不要介意WARN,我已经研究过它,它似乎没有任何实际的负面影响。

我已经咨询了this这样的问题,但无济于事。似乎说明错误:在执行的第1步中,您格式化文件系统,因此没有输入文件夹。此外,它应该写为/input而不是input。我对此事是否正确? 当我使用/input时(在使用bin/hdfs dfs -mkdir /input创建文件夹之后),我会在异常后得到一个巨大的堆栈跟踪(请参阅here,它太长了,无法放在这里)

为什么会这样,我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

hdfs dfs -put etc/hadoop input

此命令将尝试将本地文件系统的etc/hadoop文件或目录放入/user/<username>/input HDFS目录。该用户名通常是您运行命令的用户名。使用whoami来计算出来。

如果您没有创建该用户目录和后续输入目录,您将看到该错误。

但是,你的长堆栈跟踪清楚地表明你有0个数据节点正在运行,所以错误似乎没有启动HDFS

答案 1 :(得分:0)

找到罪魁祸首 - 在第4步中,我需要运行bin/hdfs dfs -mkdir /user/<username>。我以为我可以使用任何用户名,但事实证明,在操作系统中输入当前正在运行的用户的用户名会使一切正常。不知道为什么这很重要......