【发布时间】:2023-10-06 07:09:01
【问题描述】:
我正在运行一个包含 hadoop 命令的 shell 脚本。
执行相同的时候得到以下错误
主类[org.apache.oozie.action.hadoop.ShellMain],退出代码[1]
我正在使用 Cloudera Hue - Oozie 运行一个简单的 shell 脚本
但是,当脚本没有 hadoop 命令时,它会成功执行。
我已经设置了oozie.use.system.libpath=true 并且可以看到我的库在
user/oozie/share/lib/<lib_timestmap>
下面是我尝试运行的shell脚本
#! /bin/bash
$(hadoop fs -mkdir /<location path>)
Wokflow.xml
<workflow-app name="Shell-copy" xmlns="uri:oozie:workflow:0.4">
<start to="Shell-copy"/>
<action name="Shell-copy">
<shell xmlns="uri:oozie:shell-action:0.1">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<exec>test.sh</exec>
<file>/user/hue/oozie/workspaces/_rrv9kor_-oozie-38-1455857816.12/test.sh#test.sh</file>
<capture-output/>
</shell>
<ok to="end"/>
<error to="kill"/>
</action>
<kill name="kill">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
- 带有 hadoop 命令的脚本要么抛出上述错误,要么显示为成功完成,但未处理任何 hadoop 命令,仅执行 echo 或其他 shell 命令。
【问题讨论】:
-
我建议您查看实际的堆栈跟踪,而不是仅仅想知道。在 oozie 日志中搜索
job_00000000_0000之类的标签,然后在 YARN 日志中搜索该作业,参见。 *.com/questions/34344114/… -
嗨 Samson.,发现这是一个权限问题
标签: shell hadoop cloudera oozie hue