Ansible Playbook — примеры и советы. | Блог slurm.io
2026-02-19 18:19 Diff

Вот частые проблемы, с которыми сталкиваются при запуске плейбуков:

Permission denied по SSH
Убедитесь, что у вас есть доступ по ключу или используйте --ask-pass.

Python не найден на целевом сервере
Ansible требует установленный Python 2.7+ или 3.x на управляемых хостах. Если его нет — установите вручную или используйте raw.

Ошибка в синтаксисе YAML
YAML чувствителен к отступам. Не используйте табы, только пробелы. Проверяйте формат yamllint или валидатором.

Не найден модуль или роль
Проверьте, что нужный модуль действительно есть в версии Ансибл. Некоторые модули требуют установки плагинов или collections (ansible-galaxy).

Зависания без вывода
Чаще всего — неправильный SSH-доступ или firewall. Попробуйте ansible all -m ping -i inventory.ini -vvvv и посмотрите, где застревает.

Советы для стабильной работы

Всегда начинайте с пинга: команда ansible all -m ping -i inventory.ini — это ваш друг. Она проверит базовую связность и доступность целевых хостов.

Выводите переменные через debug — особенно на этапе отладки, чтобы понять, что именно «‎видит» playbook.

Разбивайте сложные сценарии на роли — об этом мы поговорим позже, но чем проще структура — тем легче сопровождение.

Используйте Git — храните свои playbook-и и inventory в репозитории, чтобы отслеживать изменения и откатывать при необходимости.

Документируйте задачи — name: в каждой задаче — не просто подпись, это то, что будет в логах. Пишите понятно и конкретно.