Hadoop Oozie ssh操作
我试图通过Oozie工作流运行ssh操作,Hadoop Oozie ssh操作,hadoop,ssh,oozie,Hadoop,Ssh,Oozie,我试图通过Oozie工作流运行ssh操作, 服务器名称.net 回声 我将工作流程存储到hdfs中,但当尝试从oozie服务器连接服务器name.net时,我收到以下错误消息,请任何人对此提供帮助 错误: FNF:/var/tmp/oozie/oozie-dshm46789086433.dir/ssh/ssh.base.sh它似乎与oozie配置有关,请任何人帮助解决此问题。我的目标是在Oozie服务器的特定服务器上运行脚本。尝试以下操作: <action name="shell-
服务器名称.net
回声
我将工作流程存储到hdfs中,但当尝试从oozie服务器连接服务器name.net时,我收到以下错误消息,请任何人对此提供帮助
错误:
FNF:/var/tmp/oozie/oozie-dshm46789086433.dir/ssh/ssh.base.sh它似乎与oozie配置有关,请任何人帮助解决此问题。我的目标是在Oozie服务器的特定服务器上运行脚本。尝试以下操作:
<action name="shell-action">
<shell xmlns="uri:oozie:shell-action:0.1">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<exec>example.sh</exec>
</shell>
<ok to="end" />
<error to="kill" />
</action>
${jobTracker}
${nameNode}
mapred.job.queue.name
${queueName}
example.sh
试试这样的方法-
步骤1-创建workflow.xml,如下所示
<?xml version="1.0"?>
<workflow-app xmlns="uri:oozie:workflow:0.3" name="sshAction">
<start to="MySSHAction"/>
<action name="MySSHAction">
<ssh xmlns="uri:oozie:ssh-action:0.1">
<host>${sshHost}</host>
<command>${shellScriptPath}</command>
<capture-output/>
</ssh>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]. </message>
</kill>
<end name="end"/>
</workflow-app>
您好,我正在尝试从oozie运行ssh操作到另一台服务器,上面的建议是在shell操作中运行shell操作,是否可以连接到远程服务器?FNF表示“未找到文件”错误。我不确定这是指
/var/tmp/oozie/oozie-dshm46789086433.dir/ssh/ssh.base.sh
还是echo
。您可以尝试使用/bin/echo
的完整路径运行它吗?
<?xml version="1.0"?>
<workflow-app xmlns="uri:oozie:workflow:0.3" name="sshAction">
<start to="MySSHAction"/>
<action name="MySSHAction">
<ssh xmlns="uri:oozie:ssh-action:0.1">
<host>${sshHost}</host>
<command>${shellScriptPath}</command>
<capture-output/>
</ssh>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]. </message>
</kill>
<end name="end"/>
</workflow-app>
nameNode=hdfs://<namenode-machine>:8020
jobTracker=<resource-manager>:8050
queueName=default
shellScriptPath=/opt/example.sh
sshHost=oozie@localhost
#!/bin/bash
echo "Hello Oozie"