Структура управления#
Для управления инфраструктурой контроллер использует следующие компоненты:
playbooks;
инвентарь (inventory);
проекты (projects);
шаблоны (templates);
среды исполнения (execution environments);
полномочия (credentials).
Взаимосвязи между компонентами показаны на схеме:
Проект#
Проект состоит из одного или нескольких Ansible playbook. Контроллер позволяет импортировать существующие наборы playbook из различных источников:
репозиторий Git;
репозиторий Subversion;
архивы форматов
.zip
и.tar.gz
.
Также существующие наборы playbook можно вручную разместить в одном из каталогов локальной файловой системы контроллера, после чего указать путь к нужному каталогу в настройках проекта.
Подробности см. в документе Проекты.
Playbook#
Для настройки управляемых узлов контроллер использует Ansible playbook.
Инвентарь#
Контроллер предоставляет следующие возможности для управления инвентарем Ansible:
заполнение списка управляемых узлов вручную или путем импорта из стороннего источника;
использование статического и динамического инвентаря.
Подробности см. в разделе Инвентарь.
Шаблон#
Шаблоны бывают двух типов:
шаблоны заданий;
шаблоны потоков заданий.
Шаблон задания связывает между собой набор управляемых узлов из инвентаря и один из playbook, доступных в проекте.
Шаблон потока заданий связывает между собой шаблоны заданий, а также предоставляет дополнительные функции, позволяющие настроить выполнение отдельных заданий при наступлении определенных условий.
Подробности о шаблонах см. в разделе Шаблоны.
Среда исполнения#
Среда исполнения содержит все необходимое для запуска playbook – фиксированные версии ОС, приложений и библиотек, в том числе Ansible, Python и других. Использование среды исполнения позволяет сделать выполнение playbook предсказуемым и не зависящим от ОС, в которой развернут контроллер.
Организации, пользователи и команды#
В Automation Controller используется управление доступом на основе ролей (RBAC), реализованное с помощью организаций, пользователей и команд.