我无法再弄清楚这一点,因为我不知道从 ansible 中获取“真实”错误消息。我运行以下
$ ansible -i /opt/ansible/ec2.py "tag_Function_app:&tag_Application_pro:&tag_Environment_pqa" --private-key=~/.ssh/id_root_rsa -m shell --sudo -a "service httpd restart" -u root
但最终会出现一个非常不起眼的错误
10.221.142.0 | FAILED | rc=0 >>
MODULE FAILURE
到底发生了什么?有没有办法让我进一步调试这个?尝试严格使用用户 / sshkey 进行 ssh 可以正常工作吗?
当 Python 2.x 未安装在
/usr/bin/python
. 例如,在 Ubuntu 16.04 上,您必须安装它:另请参阅ansible 文档。
答案是,用户没有
sudo
权限。谢谢大家 =)免责声明
就我而言,这不是与 sudo 相关的问题。发布完成。
tl;博士
不要将 virtualenv 与两个不同版本的 ansible 一起使用(一个在 OS 中,另一个在 pip-virtualenv 中)
说明部分
我对模块“shell”有同样的错误。
ansible -i ~/ansible-hosts example01 -mshell -a 'df -Ph'
: 模块故障ssh example01 'df -Ph'
: 没问题。问题
我在 Debian 中的版本(使用 aptitude 安装)是
2.2.1.0
,而我的 Virtualenv 中的版本(使用 Virtualenv 中的 pip 安装)是2.2.2.0
.解析度
我卸载了两者,然后在 Virtualenv 中重新安装了一个。
hth
每个人都不太可能出现这种情况,但由于受影响主机上的根卷已满,我刚刚遇到此错误。