Ansible

Модуль Ansible позволяет осуществлять автоматизированное управление конфигурациями контролируемых узлов РОСА Центр управления путем дистанционного запуска плейбуков на этих узлах.

Примечание – По умолчанию Ansible подключается к управляемым узлам по протоколу SSH.

В общем случае плейбук, запущенный на управляемом узле, выполняет по очереди заданный набор всех ролей Ansible, которые были выбраны пользователем для этого узла. При этом каждая роль Ansible представляет собой отдельный исполняемый командный сценарий, осуществляющий определенную настройку конфигурации узла.

Общие параметры Ansible

Интерфейс РОСА Центр управления предоставляет пользователю возможность для настройки следующих основных параметров Ansible:

  • Тайм-аут отчета timeout – временной интервал (в минутах), предназначенный для формирования отчета Ansible с результатами выполнения плейбука. Значение по умолчанию: 30;
  • Тип подключения – тип (протокол) подключения Ansible к управляемым узлам для дистанционного запуска плейбуков. Значение по умолчанию: SSH;
  • Уровень детализации по умолчанию – уровень детализации записей в журнале о процессе выполнения плейбука Ansible;
  • Тайм-аут после подготовки – временной интервал (в секундах) после развертывания нового узла, предназначенный для первичного выполнения заданных ролей Ansible на новом узле. Значение по умолчанию: 360;
  • Путь до приватного ключа – путь к файлу c закрытым ключом SSH.

Значения общих параметров Ansible доступны пользователю для просмотра и редактирования во вкладке "Ansible" в меню "Управление → Параметры" панели навигации (рисунок 105).

Рисунок 105 — Общие параметры Ansible

Для редактирования определенного параметра надо нажать соответствующую пиктограмму (карандаш), после чего указать необходимое значение.

Импорт ролей и переменных Ansible

Перечень импортированных ролей Ansible отображается в меню "Настройки → Ansible → Роли" панели навигации (рисунок 106), а список используемых переменных – в меню "Настройки → Ansible → Переменные".

Рисунок 106 — Роли Ansible

Для импорта дополнительной роли или переменной требуется нажать кнопку Импорт с … на соответствующей странице интерфейса и выбрать необходимый источник.

Примечание – При импорте переменных Ansible дополнительно автоматически будут импортированы все роли, связанные с этими переменными и при этом отсутствующие в перечне ранее импортированных ролей.

Для создания переменной Ansible в рабочей области по меню "Настройки → Ansible → Переменные" нужно нажать кнопку Имя переменной Ansible.

Далее следует ввести параметры переменной в полях "Ключ", "Описание", выбрать "Роль Ansible", а также переопределить параметры по умолчанию и задать валидаторы ввода (рисунок 107).

Нажать кнопку Применить.

Рисунок 107 — Параметры новой переменной Ansible

Присвоение ролей Ansible

Выполняемые роли Ansible могут быть присвоены пользователем как отдельному управляемому узлу, так и группе узлов.

Следует обратить внимание, что роли Ansible, присвоенные группе узлов, также будут автоматически присвоены каждому отдельному узлу в этой группе. При этом изменение группы узла приведет к изменению набора ролей Ansible, ранее присвоенных узлу через группу.

Присвоение ролей Ansible отдельному узлу

Для присвоения ролей Ansible узлу необходимо перейти в меню "Узлы → Все Узлы" панели навигации и нажать наименование (доменное имя) необходимого узла.

На экране появится интерфейс с подробными параметрами выбранного узла, в котором нужно нажать кнопку Редактировать и затем перейти на вкладку "Роли Ansible" (рисунок 108).

Рисунок 108 — Присвоение ролей Ansible узлу

В списке доступных ролей Ansible последовательно нажимают соответствующую пиктограмму (плюс) для присвоения всех необходимых ролей узлу. При этом добавленные роли отобразятся в списке присвоенных ролей Ansible.

Для удаления определенной роли из списка присвоенных ролей Ansible нажимают соответствующую пиктограмму (минус). При этом роли, присвоенные узлу через группу узлов, удалить из этого списка нельзя.

После присвоения всех необходимых ролей Ansible узлу нужно нажать кнопку Применить.

Выполнение ролей Ansible

Выполнение ролей Ansible на управляемых узлах осуществляется путем дистанционного запуска плейбуков на этих узлах.

Плейбук Ansible может запускаться как пользователем Комплекса вручную, так и в автоматическом режиме по заданному расписанию. При этом процесс запуска плейбука может осуществляться на отдельном узле или одновременно на нескольких узлах, входящих в определенную группу.