在许多开发人员工作站(即它们具有不同的本地配置)上建立的小型Hadoop集群中,我有一个6的TaskTracker存在问题。每当接收到一个任务,该任务将立即失败与ChildError
:Hadoop任务:“execvp:权限被拒绝”
java.lang.Throwable: Child Error
at org.apache.hardoop.mapred.TaskRunner.run(TaskRunner.java:242)
Caused by: java.io.IOException: Task process exit with nonzero status of 1.
at org.apache.hardoop.mapred.TaskRunner.run(TaskRunner.java:229)
当我看stdout
和stderr
日志任务,stdout
日志为空,而stderr
日志只有:
execvp: Permission denied
我的工作完成了,因为tasktracker最终被列入黑名单并在运行任务时没有问题的其他节点上运行。我无法从任何数量的作业中获得在这个节点上运行的任何任务,所以这是一个普遍问题。
我有一个DataNode在这个节点上运行没有问题。
我想可能有某种形式的Java问题在这儿,它有一个很难生成一个JVM或东西...
你有什么想法,什么是试图execvp?或者我可以在哪里找到这些信息?这发生在Hadoop框架的内部,并不是我的工作直接做的事情。 –