失败的 Oozie 启动器,无法 运行 程序

Failing Oozie Launcher, Cannot Run Program

我正在尝试 运行 使用非常基本的脚本的 oozie 工作流程。脚本本身非常简单,它获取一个 csv 文件并将其加载到 impala 中的 table 中。我的工作流程是这样的。

<workflow-app xmlns='uri:oozie:workflow:0.5' name='TEST'>

<global>
    <job-tracker>${jobTracker}</job-tracker>
    <name-node>${nameNode}</name-node>
    <configuration>
        <property>
            <name>mapreduce.job.queuename</name>
            <value>${queueName}</value>
        </property>
    </configuration>
</global>

<start to='postLoad' />
<action name="postLoad">
    <shell xmlns="uri:oozie:shell-action:0.3">
        <exec>${nameNode}/${baseCodePath}/Util/Test.sh</exec>
        <env-var>impalaConn=${impalaConn}</env-var>
        <env-var>xferUser=${xferUser}</env-var>
        <env-var>ingUser=${ingUser}</env-var>
        <env-var>explTableName=${explTableName}</env-var>
        <env-var>stagingPath=${stagingPath}</env-var>
        <file>${nameNode}/${baseCodePath}/Util/Test.sh</file>
        <file>${nameNode}/${commonCodePath}/Util/loadUsrEnv.sh</file>
    </shell>
 ...

然而,当我 运行 它时,我似乎总是得到这个错误,我不确定为什么它不能 运行 程序。 directories/files 都指向正确的位置。

Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.ShellMain], main() threw exception, Cannot run program "Test.sh" (in directory "/data13/yarn/nm/usercache/user/appcache/application"): error=2, No such file or directory java.io.IOException: Cannot run program "Test.sh" (in directory "/data13/yarn/nm/usercache/user/appcache/application"): error=2, No such file or directory

使用

<exec>Test.sh</exec>

<file> 标签告诉 Oozie 将文件从 HDFS 位置下载到 YARN 容器目录