You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
decort-ansible/wiki/5.2.6/модуль-decort_group.md

12 KiB

03.09 Модуль decort_group

Обзор модуля decort_group

Модуль decort_group позволяет взаимодействовать с группами виртуальных серверов, которые находятся в Basic сервисе. Взаимодействие с Basic сервисами происходит в модуле decort_bservice.

Модуль decort_group позволяет:

  • Получить информацию о группе виртуальных серверов.
  • Запустить/остановить группу виртуальных серверов.
  • Изменить параметры группы виртуальных серверов (cpu, ram, disk, role, name).
  • Изменить количество виртуальных серверов в группе.
  • Изменить параметры сети (ext_net, VINS).
  • Создать группу виртуальных серверов и подключить её к Basic сервису.
  • Удалить группу виртуальных серверов.

Параметры модуля decort_group

Ниже приведен полный список параметров для модуля decort_group.

Параметр Тип, допустимые значения Описание
account_id (int) Уникальный целочисленный идентификатор учётной записи (account), которой принадлежит данный диск. При идентификации диска по имени (см. параметр name) должно быть задан либо идентификатор, либо имя учётной записи (см. параметр account_name). Если одновременно заданы и account_id, и account_name, то account_name игнорируется.
account_name (string) Имя учётной записи (account), которой принадлежит данный диск. При идентификации диска по имени (см. параметр name) должно быть задано либо имя, либо идентификатор учётной записи (см. параметр account_id). Если одновременно заданы и account_id, и account_name, то account_name игнорируется.
app_id (string) Идентификатор приложения, использующийся для подключения к контроллеру облачной платформы DECORT в режиме authenticator: oauth2. Данный параметр является обязательным для указанного режима. Если параметр не задан в playbook, модуль будет использовать значение переменной окружения DECORT_APP_ID.
app_secret (string) Секретный ключ приложения, который используется для подключения к контроллеру облачной платформы DECORT в режиме authenticator: oauth2. Данный параметр является обязательным для указанного режима. Так как он содержит секретную информацию, то его не рекомендуется задавать непосредственно в playbook. Если параметр не задан в playbook, то модуль будет использовать значение переменной окружения DECORT_APP_SECRET.
authenticator Значения:
legacy
oauth2
jwt <- default
Режим аутентификации при подключении к контроллеру облачной платформы DECORT.
controller_url (string) URL контроллера, соответствующего экземпляру облачной платформы DECORT, в рамках которого должен быть создан (или уже существует) данный виртуальный сервер. Данный параметр является обязательным.
jwt (string) JSON Web Token (JWT), который будет использоваться для подключения к контроллеру облачной платформы DECORT в режиме authenticator: jwt Данный параметр является обязательным для указанного режима. Так как он содержит потенциально секретную информацию, а сам JWT, как правило, имеет ограниченное время жизни, то его не рекомендуется задавать непосредственно в playbook. Если этот параметр не определен в playbook, то модуль будет использовать значение переменной окружения DECORT_JWT.
oauth2_url (string) URL авторизационного сервера, работающего по протоколу Oauth2, который должен использоваться в режиме authenticator: oauth2. Данный параметр является обязательным для указанного режима. Если параметр не задан в playbook, модуль будет использовать значение переменной окружения DECORT_OAUTH2_URL.
id (int) Уникальный целочисленный идентификатор группы виртуальных серверов.
image_id (int) Уникальный целочисленный идентификатор образа операционной системы. Используется для создания виртуальных серверов в группе.
image_name (string) Имя образа операционной системы. Используется для создания виртуальных серверов в группе.
driver (string) Тип виртуального сервера. Прим. KVM_X86
boot_disk (int) Обьём виртуального диска на виртуальных серверах.
bservice_id (int) Уникальный целочисленный идентификатор Basic серфиса, в который необходимо добавить группу виртуальных серверов.
count (int) Количество виртуальных серверов в группе.
timeoutStart (int) Задержка в секундах до отображения группы виртуальных серверов.
role (string) Роль группы виртуальных серверов.
cpu (int) Количество ядер процессора на каждом виртуальном сервере в группе.
ram (int) Объём оперативной памяти на каждом виртуальном сервере в группе.
networks (list) Список сетей, которые необходимо подключить к каждому виртуальному серверу в группе
description (string) Описание группы виртуальных серверов.
verify_ssl (bool) True <- default False Позволяет отключить проверку SSL сертификатов при выполнении API вызовов в адрес контроллера облачной инфраструктуры, например, при работе с изолированной облачной инфраструктурой, использующей самоподписанные сертификаты. Применяйте данный параметр с осторожностью, предпочтительно в защищенных средах.
workflow_callback (string) URL, по которому вышестоящее приложение (например, пользовательский портал или оркестратор верхнего уровня, инициирующий запуск Ansible playbook) ожидает API вызова, в параметрах которого модуль будет оперативно передавать информацию о своем статусе и текущей фазе исполнения. Данный параметр является опциональным. Функциональность callbacks в текущей версии модуля не реализована.
workflow_context (string) Контекстная информация, которая будет содержаться в параметрах API вызова, адресованного к workflow_callback URL. Данная информация призвана однозначно идентифицировать задачу, выполняемую модулем в настоящий момент, чтобы оркестратор верхнего уровня мог сопоставить получаемые через вызов workflow_callback данные со своим внутренним состоянием и отслеживать инициированные им задачи. Параметр является опциональным и имеет значение только при условии, что также задан workflow_callback.

Возвращаемые значения модуля decort_group

Модуль decort_group возвращает информацию о диске в виде словаря facts со следующими ключами:

Ключ Тип данных Описание
account_id int Уникальный целочисленный идентификатор аккаунта, к которому привязана данная группа виртуальных серверов.
rg_id int Уникальный целочисленный идентификатор ресурсной группы, в которой находится данная группа виртуальных серверов.
id int Уникальный целочисленный идентификатор данной группы виртуальных серверов.
name string Имя данной группы виртуальных серверов.
techStatus string Технический статус данной группы виртуальных серверов.
state string Текущее состояние группы виртуальных серверов. Корректные состояния: absent, started, stopped, present, check.
Computes string Уникальные целочисленные идентификаторы виртуальных серверов, входящих в группу.

Пример использования модуля decort_group

Данный пример создаёт группу виртуальных серверов с названием test_group.

- hosts: localhost
  tasks:
  - name: create 
    decort_group:
      authenticator: oauth2
      verify_ssl: False
      controller_url: "https://ds1.digitalenergy.online"
      state: present
      bservice_id: 1823
      count: 2
      name: "test_group"
      cpu: 2
      ram: 2
      boot_disk: 10
      image_id: 518
      driver: "KVM_X86"
      timeoutStart: 5
      networks:
        - type: VINS
          id: 1987
    delegate_to: localhost
    register: group_test

Данный пример удаляет группу виртуальных серверов с названием test_group.

- hosts: localhost
  tasks:
  - name: create 
    decort_group:
      authenticator: oauth2
      verify_ssl: False
      controller_url: "https://ds1.digitalenergy.online"
      state: absent
      bservice_id: 1823
      name: "test_group"
    delegate_to: localhost
    register: group_test