当我收到如下错误时,尝试在Windows上运行MapReduce作业:
Error: Application application_1441785420720_0002 failed 2 times due to AM Container for appattempt_1441785420720_0002_000002 exited with exitCode:-1000
Diagnostics:
Application application_1441785420720_0003 failed 2 times due to AM Container for appattempt_1441785420720_0003_000002 exited with exitCode: -1000 For more detailed output, check application tracking page:http://HOST:8088/cluster/app/application_1441785420720_0003 Then, click on links to logs of each attempt.
Diagnostics: Failed to setup local dir /tmp/hadoop-USER/nm-local-dir, which was marked as good. Failing this attempt. Failing the application.
昨天一切正常,但Java环境,文件权限或Hadoop配置都没有改变。
答案 0 :(得分:1)
经过4个多小时的故障排除后,结果证明这是与我的办公室域名相关的问题。我不确定为什么的情况(如果我发现任何事情,我会稍后发布内容),但它最终会导致文件权限问题,当我不在我的办公室域名时,Hadoop误解了c:\tmp\
目录中的某些文件权限。
现在解决方案:当我不在办公室时使用VPN。
答案 1 :(得分:1)
您应该使用“以管理员身份运行”运行CMD以解决此问题,因为Hadoop集群环境位于WINDOWS操作系统上
答案 2 :(得分:1)
Hadoop 2.7中似乎存在一个与Windows上的文件权限有关的错误。您可以通过editing the code directly修复该错误,也可以通过升级到Hadoop 2.8来避免麻烦。
答案 3 :(得分:0)
这是权限问题。有时回来我在尝试提交mapreduce作业时也遇到了这个错误。操作系统是CentOS而不是Windows。但是,这个错误的原因是一样的。 / tmp目录由" hdfs"创建。用户并属于" supergroup"。一些不属于超级组的用户尝试提交作业,用户肯定会收到此错误。
Name User Group
tmp hdfs supergroup
这就是为什么当您登录办公室域并提交作业时,作业会执行。
答案 4 :(得分:-1)
该问题的一种解决方案是以管理员身份运行命令提示符,然后运行诸如“start-all.cmd”之类的脚本。我认为管理员权限可以解决问题。