Ansible:MODULE FAILURE\n有关确切错误,请参阅stdout/stderr



我正在尝试使用ansible playbook在EC2 Centos VM中安装AWS CloudWatch代理。它在沙箱中运行良好,但当我在生产中运行它时,它失败了(与Jenkins管道集成(

这是我的任务片段:

- name: setup temp directory for install
file:
path: /tmp/aws-cw-agent
state: directory
- name: download installer
get_url:
url: "{{ aws_cw_agent_url }}"
dest: /tmp/aws-cw-agent/amazon-cloudwatch-agent.rpm
- name: install agent
become: true
shell: rpm -U /tmp/aws-cw-agent/amazon-cloudwatch-agent.rpm

在"下载安装程序"之前,它运行良好,我可以通过手动导航到该目录来找到rpm二进制文件。但是下一个任务安装代理失败。如果我也使用"百胜"模块而不是shell,它就会失败。

错误显示:

17:16:07 task path: /home/jenkins/workspace/groupesiph-dsir/03227/03227_Cloudwatch_Agent_deploy_hprod/playbook/deployment/roles/aws_cw_agent/tasks/main.yml:22
>17:16:07 Tuesday 10 March 2020  17:16:07 +0100 (0:00:00.098)       0:00:05.352 ********* 
17:16:08 Using module file /usr/lib/python3.6/site-packages/ansible/modules/commands/command.py
17:16:08 Pipelining is enabled.
17:16:08 <10.45.1.136> ESTABLISH SSH CONNECTION FOR USER: ansible
>17:16:08 <10.45.1.136> SSH: EXEC sshpass -d10 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o 'User="ansible"' -o ConnectTimeout=10 -o ServerAliveInterval=60 -o ServerAliveCountMax=10 -o ControlPath=/home/jenkins/.ansible/cp/84b84369b7 10.45.1.136 '/bin/sh -c '"'"'sudo -H -S -n  -u root /bin/sh -c '"'"'"'"'"'"'"'"'echo BECOME-SUCCESS-syqwibhfpdecwpfqddhe ; /usr/bin/python'"'"'"'' && sleep 0'"'"''
>17:16:08 Escalation succeeded
17:16:08 <10.45.1.136> (1, b'', b'')
17:16:08 <10.45.1.136> Failed to connect to the host via ssh: 
17:16:08 fatal: [prod05]: FAILED! => {
17:16:08     "changed": false,
17:16:08     "module_stderr": "",
17:16:08     "module_stdout": "",
17:16:08     "msg": "MODULE FAILUREnSee stdout/stderr for the exact error",
17:16:08     "rc": 1
17:16:08 

但是,如果ssh真的有问题,那么它是如何在上一个任务中成功下载安装程序的。

可能是什么问题?

提前谢谢。

问题是用户没有sudoers访问权限安装二进制文件,该文件使用百胜安装"/tmp/aws cw-agent/aamazon cloudwatch agent.rpm"。通过调试消息,我发现了错误。

我会再试一次,但要使用yum模块。。像这样的东西。

- name: install nginx rpm from a local file
yum:
name: /tmp/aws-cw-agent/amazon-cloudwatch-agent.rpm
state: present
become: yes

你好,只是为了提供信息,我传递了同样的错误,最后我发现问题是因为在/etc/sudoers文件中,用户被配置为user ALL-NOPASSWD:/bin/su

相关内容

最新更新