AWX и Ansible Automation Platform
Тема дорожной карты · Ansible
Ansible Tower — это корпоративный веб-интерфейс и REST API от Red Hat, построенный поверх Ansible и предоставляющий управление доступом на основе ролей, планирование заданий, потоковый вывод в реальном времени и централизованную панель управления для запуска playbook в масштабе. Ansible Tower хранит учётные данные в зашифрованном виде в своей базе данных, устраняя необходимость распространять SSH-ключи или пароли vault среди операторов, и предоставляет каждую операцию через REST API, который интегрируется с CI/CD-конвейерами. Эквивалент Ansible Tower с открытым исходным кодом — AWX, предлагающий идентичную функциональность и являющийся сообщественным релизом, на основе которого разрабатываются корпоративные возможности Tower. Организации внедряют Ansible Tower для управления тем, кто и какие playbook может запускать на каких inventory, ведения журнала аудита каждого события автоматизации и предоставления самообслуживания командам, не имеющим прямого SSH-доступа к инфраструктуре.
Как это работает
AWX и Ansible Automation Platform (теперь Red Hat Ansible Automation Platform / AAP) и его upstream AWX дают веб-UI + REST API поверх Ansible: scheduled jobs, RBAC, audit log, workflow-цепочки (job A → если success → job B), управление credentials, источники inventory. Гоняет Ansible-плейбуки в контейнерах (execution environments) со своими collections + зависимостями, отделённо от контроллера.
Когда применять
AWX или AAP — когда (а) больше 2-3 инженеров гоняют плейбуки (нужны RBAC + аудит), (б) хотите scheduled / triggered автоматизацию, (в) важна ChatOps / self-service интеграция. Для RF-инфры AWX self-hosted на control-VM — практичный выбор. AAP требует Red Hat-лицензии. Маленькие команды остаются с ansible-playbook из CI-раннеров.
Типичные ошибки
Ловушки AWX и Ansible Automation Platform: сложность деплоя AWX (Kubernetes-based, нетривиальная установка); путаница execution environment (плейбук падает не из-за кода, а из-за пинов collection в EE); утечка credentials через job output (маскируйте sensitive). Планируйте capacity — AWX любит много ядер + RAM для параллельных job.