我正在尝试使用shell脚本作为oozie Job的一部分将文件从HDFS的一个目录复制到HDFS的其他目录,但是我无法通过oozie复制它。

我们可以使用oozie将文件从HDFS的一个目录复制到HDFS的另一个目录中吗?

when i am running the oozie job, i am not any getting error.

it is showing status SUCCEEDED but file is not copying to destination directory.

oozie文件在下面。

test.sh
#!/bin/bash
echo "listing files in the current directory, $PWD"
sudo hadoop fs -cp /user/cloudera/RAVIOOZIE/input/*  /user/cloudera/RAVIOOZIE/output/
ls  # list files

我的工作流程.xml是
<workflow-app name="RAMA" xmlns="uri:oozie:workflow:0.5">
<start to="shell-381c"/>
<kill name="Kill">
    <message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<action name="shell-381c">
    <shell xmlns="uri:oozie:shell-action:0.1">
        <job-tracker>${jobTracker}</job-tracker>
        <name-node>${nameNode}</name-node>
        <exec>/user/cloudera/test.sh</exec>
        <file>/user/cloudera/test.sh#test.sh</file>
          <capture-output/>
    </shell>
    <ok to="End"/>
    <error to="Kill"/>
</action>
<end name="End"/>

和我的job.properties
oozie.use.system.libpath=True
security_enabled=False
dryrun=True
jobTracker=localhost:8032
nameNode=hdfs://quickstart.cloudera:8020
oozie.wf.application.path=${nameNode}/user/cloudera/test/

请对此提供帮助。为什么文件没有复制到我的目的地主管。

请让我知道我错过了什么。

最佳答案

如@Samson的评论中所述:

如果要对oozie进行hadoop操作,则应使用hdfs action而不是shell操作。

我不确定您为什么没有收到错误消息,但以下是对可能发生的情况的一些推测:

您给oozie一个启动Shell Action 的任务,它成功启动了Shell Action 并报告成功。然后,shell操作失败,但这不是问题。

关于shell - 使用OOZIE将文件从HDFS的一个目录移动到HDFS的另一目录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38769924/

10-16 13:52