Я больше не могу понять это, так как я не знаю способа получить "настоящее" сообщение об ошибке из-за недоступности. Я бегу ниже
$ 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
Что именно происходит? Есть ли способ отладить это дальше? Попытка ssh строго с пользователем / sshkey работает нормально?
Эта ошибка также возникает, когда Python 2.x не установлен в /usr/bin/python
. Например. на Ubuntu 16.04 вам необходимо установить его:
sudo apt -y update && sudo apt install -y python-minimal
См. Также доступные документы.
Ответ: у пользователя не было sudo
химическая завивка. Всем спасибо =)
В моем случае это не было проблемой, связанной с sudo. Публикация по доработке.
Не используйте virtualenv с двумя разными версиями ansible (одна в ОС и другая в pip-virtualenv)
У меня была такая же ошибка с модулем "оболочка".
ansible -i ~/ansible-hosts example01 -mshell -a 'df -Ph'
: ОТКАЗ МОДУЛЯ
ssh example01 'df -Ph'
: без проблем.
Версия, которая была у меня в Debian (установлена с aptitude), была 2.2.1.0
и тот, что в моем Virtualenv (установленный с помощью pip из Virtualenv), был 2.2.2.0
.
Я удалил оба, а затем снова установил один в Virtualenv.
hth
Это вряд ли случится со всеми, но я только что столкнулся с этой ошибкой из-за полного корневого тома на затронутых хостах.