Компания Red Hat представила систему управления конфигурацией Ansible 2.1
После пяти месяцев разработки компания Red Hat сформировала новый значительный выпуск инструментария Ansible 2.1, предоставляющего средства для управления конфигурацией, оркестровки, централизованной установки приложений и параллельного выполнения типовых задач на группе систем. Код Ansible написан на языке Python и распространяется под лицензией GPLv3.
Из особенностей Ansible можно отметить простой и читаемый язык управления конфигурацией, поддержку распараллеливания работ, отсутствие необходимости установки на удалённые системы специальных программ-агентов (все операции инициируются централизованно по SSH), возможность работы без прав root. Система Ansible не так усложнена, как cfengine, puppet и Chef, но при этом предоставляет достаточно широкие возможности и высокую гибкость управления.
Ключевые новшества:
- В основной состав добавлены модули для автоматизации настройки сетевой инфраструктуры и сетевого оборудования, такого как маршрутизаторы и коммутаторы. Всего добавлено около 40 модулей для различных сетевых устройств и платформ, в том числе для настройки сетевого оборудования Cisco (IOS, IOS-XR, NXOS), HP Enterprise (OpenSwitch), Juniper (Junos), Arista Networks и Cumulus Networks;
- Переработана и расширена поддержка Docker и контейнеров. Добавлен модуль для платформы оркестровки контейнеров Kubernetes. Полностью переписан модуль docker-service, который позволяет использовать возможности Docker Compose из сценариев Ansible и поддерживает работу с приложениями, для работы которых требуется создание нескольких контейнеров. Добавлены новые модули: docker_container для управления жизненным циклом контейнеров, docker_image для работы с образами контейнеров Docker, docker_login для управления доступом к реестрам Docker, docker_image Facts для инспектирования метаданных в образах;
- Возможность применения для настройки компонентов Microsoft Windows и Microsoft Azure, что позволяет использовать Ansible в качестве единой кроссплатформенной системы автоматизированной настройки, охватывающей серверы и рабочие станции на базе разных ОС, сетевое оборудование и контейнеры. Добавлены модули для использования Azure Resource Manager, управления файловым сервером и межсетевым экраном Windows, управление NTLM-авторизацией в домене, работы с учётными записями, инициирования перезагрузки, изменения времени;
- Подключаемые в скриптах include-блоки теперь могут загружаться в статическом режиме, т.е. без динамического разбора и использования таких возможностей, как циклы и условия;
- Добавлена новая стратегия "debug" для отладки на уровне отдельных задач;
- Добавлен интерактивный интерфейс командной строки ansible-console, который позволяет запускать задачи на выбранной системе;
- Добавлены модули для управления Amazon AWS, GitLab, Cloudstack, Mongodb, Openstack и Openswitch;
- Добавлены фильтры для глобального поиска и поиска с использованием регулярных выражений.