【发布时间】:2017-03-25 02:22:34
【问题描述】:
我有从快照恢复 aws MySQL RDS 的 ansible playbook。如果从命令行手动运行,则剧本运行良好并完成任务。但是通过rundeck的web界面运行时,遇到如下错误,
fatal: [localhost]: UNREACHABLE! => {"changed": false, "msg": "Authentication or permission failure. In some cases, you may have been able to authenticate and did not have permissions on the remote directory. Consider changing the remote temp path in ansible.cfg to a path rooted in \"/tmp\". Failed command was: ( umask 77 && mkdir -p \"` echo $HOME/.ansible/tmp/ansible-tmp-1491222004.1-29099027555878 `\" && echo ansible-tmp-1491222004.1-29099027555878=\"` echo $HOME/.ansible/tmp/ansible-tmp-1491222004.1-29099027555878 `\" ), exited with result 1", "unreachable": true}
我的 Rundeck 服务器在同一个 Ansible 服务器上
我尝试在 ansible.cfg 中添加以下行
remote_tmp = $HOME/.ansible/tmp
local_tmp = $HOME/.ansible/tmp
我已经为 $HOME/.ansible/tmp 设置了权限 1777,但它并没有解决我的问题。 能否请你帮忙? 谢谢!!!
【问题讨论】:
-
您在运行内联脚本吗?
-
不,我正在使用 rundeck-anible 插件和“运行 Ansible Playbook”
-
日志文件 /var/log/rundeck/service.log 中有什么内容吗?看起来是文件权限问题。
-
INFO ScheduledExecutionService: 调度立即作业运行: TEMP:hung:2:79 WARN ExecutionJob: ExecutionJob: 找不到 ID [79] 的执行,将重试最多 60 秒... INFO ExecutionJob: ExecutionJob:使用 ID [79] 重试执行 (1) 使用 /etc/ansible/ansible.cfg 作为配置文件错误 ExecutionUtilService:执行失败:项目 Shop-Ansible 中的 79:[工作流结果:,步骤失败:{1=AnsibleNonZero :错误:Ansible 执行返回非零代码。},状态:失败]
-
你运行的是哪个版本的ansible?