如何在oozie工作流中设置路径?

cyvaqqii  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(384)

我试图在oozie上运行shell脚本。首先,我选择了shell脚本文件的路径,然后添加了运行shell脚本文件的参数。当我试着运行oozie worflow时,它进入了一个运行循环,10秒后被杀死。
我还通过在hdfs中设置输出文件夹的路径添加了环境变量。当我运行它时,它再次运行到一个循环中,10秒后被杀死。我想不出怎么走这条路。请帮忙。

ttcibm8c

ttcibm8c1#

您的问题还不清楚,但我想,您正在尝试使用oozie工作流运行shell脚本,其中shell脚本参数将从oozie it self传递。
如果我的理解正确,您可以通过coordinator.properties/coordinator.xml/workflow.xml将参数变量从oozie传递给it self。
示例:假设您有一个shell脚本,它将在每次执行到另一个dfs位置时执行distcp。
shell脚本:

> hadoop dfs -rmr destination_location
> hadoop distcp hdfs://<source_dfs><source_dfs_location> hdfs://<destination_dfs><destination_dfs_location>

workflow.xml:

 <action name="shellAction">
        <shell xmlns="uri:oozie:shell-action:0.1">
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <configuration>
                <property>
                  <name>oozie.launcher.mapred.job.queue.name</name>
                  <value>default</value>
                </property>
            </configuration>
            <exec>shell_script.sh</exec>
                        <file>hdfs://<dfs:port>/<dfs_location/shell_script.sh></file>
            <capture-output/>
        </shell>
        <ok to="end"/>
        <error to="killAction"/>
    </action>
         <kill name="killAction">
               <message>Shell Action Failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
     </kill>

注意:shell操作可以在oozie\u site.xml中定义,相信这些会对你有所帮助

相关问题