我正在尝试使用 Cloudera oozie 进行简单的 ssh 工作。
工作属性:
nameNode=hdfs://localhost:8020
jobTracker=localhost:8032
queueName=default
examplesRoot=examples
oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/ssh
工作流.xml:
<workflow-app xmlns="uri:oozie:workflow:0.2" name="ssh-wf">
<start to="ssh"/>
<action name="ssh">
<ssh xmlns="uri:oozie:ssh-action:0.1">
<host>localhost</host>
<command>date</command>
</ssh>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>SSH action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
当尝试使用以下命令运行作业时:
oozie job -oozie http://localhost:11000/oozie -config examples/apps/ssh/job.properties -run
该作业因以下错误而暂停:
org.apache.oozie.action.ActionExecutorException: AUTH_FAILED: Not able to perform operation [ssh -o PasswordAuthentication=no -o KbdInteractiveDevices=no -o StrictHostKeyChecking=no -o ConnectTimeout=20 cloudera@localhost mkdir -p oozie-oozi/0000003-170304124323783-oozie-oozi-W/ssh--ssh/ ] | ErrorStream: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
可能的问题是什么?为 localhost 启用了无密码登录。