Назад | Перейти на главную страницу

Выполнение Ansible ping на удаленном хосте не удается

Я только начал изучать Ansible и то, как он может улучшить мою работу. С учетом сказанного, у меня возникают проблемы, когда я пытаюсь пропинговать хост с помощью Ansible (ansible all -m ping -vv). Ansible установлен на хосте A, а хост B настроен на / etc / ansible / hosts. Оба хоста работают под управлением Ubuntu 16.04.03 LTS, и я могу использовать SSH от A до B без пароля.

Ansible ping возвращается

172.28.25.81 | FAILED! => {
    "changed": false, 
    "failed": true, 
    "module_stderr": "Shared connection to 172.28.25.81 closed.\r\n", 
    "module_stdout": "/bin/sh: 1: /usr/bin/python: not found\r\n", 
    "msg": "MODULE FAILURE", 
    "rc": 0
}

Мои версии программного обеспечения:

Поскольку вы начали использовать Ansible, я думаю, вы читали то, что ping модуль для (в этом случае достаточно чтения только заголовка):

ping - попробуйте подключиться к хосту, проверьте пригодный для использования питон и верните pong в случае успеха

Ansible сообщает вам:

/ bin / sh: 1: / usr / bin / python: не найдено

Так что, скорее всего, не могло "проверить пригодный для использования питон".


И для этого есть причина: Ubuntu 16.04 не поставляется с установленным Python 2, поэтому Ansible не запускается. /usr/bin/python исполняемый файл.

Тебе надо:

  • установить Python 2 на целевую машину или
  • проинструктируйте Ansible использовать Python 3 (он работает, но пока официально не поддерживается) - есть ansible_python_interpreter настройка для этого.