Создание сценария ansible
В статье содержится пример создания сценария системы управления конфигурациями ansible и применения его в заявке.
Рекомендуемая структура плейбука
-
В корне плейбука размещены главный файл запуска app.yml, каталоги environments и roles.
-
В каталоге environments формируется первоначальный список ВМ, которые будут развернуты при выполнении плейбука.
Структура рассматриваемого примера плейбука
В примере предусмотрены два окружения: prod, test, и следующие роли: app, balancer, db, infra.
После подготовки файлов необходимо упаковать содержимое каталога плейбука в ZIP-архив. В корне архива должны находиться файлы, содержащие плейбук.
Загрузка плейбука в модуль управления облаком
Необходимо открыть справочник «Сценарии развертывания»
(Администрирование – Справочники – Сценарии развертывания)
и нажать кнопку «Добавить».
В открывшейся форме «Сценарий развертывания» следует указать:
-
«Наименование сценария развертывания» (1).
-
«Архив сценария ansible» (2) – созданный на предыдущем этапе ZIP-архив.
При успешном разборе плейбука будут отображены списки окружений и переменных.
-
Выбрать «Файл запуска сценария» (3).
-
При необходимости указать «Дополнительные параметры запуска» (4).
Сохранить сценарий с помощью кнопки «Сохранить» (5). После сохранения сценарий отобразится в списке доступных.
Для сценария доступны операции «Редактирование» (5) и «Удаление» (6).
Создание учетной записи, от имени которой выполняется сценарий
УЗ должна обладать достаточными правами для выполнения сценария. Для создания УЗ необходимо открыть справочник «Учетные записи» (Администрирование – Справочники – Учетные записи).
Необходимые разрешения
Для создания УЗ требуется наличие следующих разрешений:
- «Просмотр справочников».
- «Просмотр всех учетных записей».
- «Создание учетных записей».
Следует создать УЗ от имени которой будет выполняться сценарий. В форме «Новая учетная запись» требуется указать:
-
Тип учетной записи (1) – «Приватный SSH-ключ».
-
Файл приватного SSH-ключа (2).
УЗ ansible с публичным SSH-ключом должна быть добавлена в ВМ, которые будут создаваться для выполнения сценария развертывания. С этой целью УЗ и ее публичный SSH-ключ необходимо добавить в шаблоны, из которых будут создаваться ВМ, либо добавить в ВМ в качестве «Дополнительной учетной записи» в заявке развертывания.
Для использования в качестве «Дополнительной учетной записи» необходимо создать УЗ ansible типа «Публичный SSH-ключ» (1). При создании УЗ следует указать файл с публичным ключом (2) для приватного ключа, указанного при создании УЗ ansible типа «Приватный SSH-ключ».
Создание заявки развертывания через сценарий
Необходимо перейти к «Заявке на создание ресурсов» и выбрать тип «Производственная среда». На этапе «Ресурсы» (1) требуется использовать пункт «Выбрать сценарий для развертывания» (2).
В открывшемся окне «Выбор сценария развертывания» доступны следующие параметры:
-
Сценарий (1)
Выбор из числа загруженных в справочник «Сценарии развертывания».
-
Окружение (2).
-
Учетные данные (3).
Выбрать УЗ типа «Приватный SSH-ключ», созданную
в справочнике «Учетные записи» и от имени которой будет выполняться сценарий развертывания (ansible).
После выбора параметров следует нажать «Добавить» (4).
В соответствии с выбранным окружением (2), будет сформирован список ВМ.
Параметры ВМ
Во вкладке «СПО» (7) параметров каждой ВМ необходимо:
-
Отключить параметр «Использовать пароль администратора из шаблона ВМ» (8).
-
Указать Дополнительную учетную запись (9), тип – «Публичный SSH-ключ».
УЗ от имени которой будет выполняться сценарий (ansible). Соответствует типу «Публичный SSH-ключ». Может быть выбрана из созданных ранее УЗ или создана из окна параметров (10).
-
Для дополнительной УЗ активировать опцию «Добавить роль администратора к выбранной учетной записи» (11).
-
При необходимости, отредактировать другие параметры (1), имена (4) и размещения (5) для всех ВМ.
Доступны операции удаления и клонирования ВМ. После добавления ВМ требуется открыть вкладку «Группы» (12) формы настроек сценария и добавить новую ВМ (13) в нужную группу хостов плейбука.
В форме настроек сценария доступны другие параметры и переменные плейбука.
На этапе «Ресурсы» в «Заявке на создание ресурсов» необходимо нажать «Далее». На этапе Подтверждение необходимо проверить и подтвердить создание заявки.
После подтверждения создаются две заявки:
- Первая заявка используется для создания ВМ.
- Вторая заявка запускает сценарий развертывания после завершения первой.













