11 KiB
Модуль decort_bservice
Обзор модуля decort_bservice
Базовая служба (Basic Service) это несколько групп виртуальных серверов (compute), создаваемых и управляемых как единое целое.
Все compute(s) в группе имеют одни и те же характеристики (cpu/ram/boot disk size/OS image + сетевые подключения). Для разных групп эти характеристики могут быть разными.
Группы в составе Basic Service могут иметь отношения parent-child с другими группами. Наличие таких отношений определяет последовательность запуска групп ("сначала parents").
На основе ресурсов, предоставляемых и управляемых через Basic Service, могут создаваться другие сервисы.
Для взаимодействия с группами виртуальных серверов используется модуль decort_group.
Модуль decort_bservice предназначен для управления базовыми службами, в которых находятся группы виртуальных серверов. Данный модуль позволяет:
- Создавать Basic Service
- Удалять Basic Service (безвозвратно).
- Включать/выключать Basic Service
- Запускать Basic Service
- Запрашивать информацию о Basic Service.
Параметры модуля decort_bservice
Ниже в алфавитном порядке приведен полный список параметров для модуля decort_bservice. Актуальную информацию по параметрам, которые поддерживает версия модуля, установленного на Вашем Ansible-сервере, можно получить командой:
ansible-doc -t module decort_bservice
Параметр | Тип, допустимые значения | Описание |
---|---|---|
account_id | (int) | Уникальный целочисленный идентификатор аккаунта, которому принадлежит ресурсная группа. При идентификации базовой службы и ресурсной группы по именам (см. параметры name и rg_name ) должен быть задан либо идентификатор, либо имя аккаунта (см. параметр account_name ). Если одновременно заданы и account_id , и account_name , то account_name игнорируется. |
account_name | (string) | Имя аккаунта, которому принадлежит ресурсная группа. При идентификации базовой службы и ресурсной группы по именам (см. параметры name и rg_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 | Значения:oauth2 jwt |
Режим аутентификации при подключении к контроллеру облачной платформы 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 . |
state | Значения: absent , disabled , enabled , present , check . Default: present |
Целевое состояние базовой службы. Значения present и enabled равнозначны. |
started | (bool) Default: true |
Параметр, определяющий состояние добавленных виртуальных серверов в Basic Service. Запускать их, или нет. |
name | (string) | Имя базовой службы. Данный параметр является обязательным при создании базовой службы и при изменении если не задан id . |
sshuser | (string) | Имя пользователя, который будет создан на всех виртуальных серверах базовой службы. Используется в паре с sshkey . |
sshkey | (string) | SSH ключ, который будет загружен на все виртуальные сервера базовой службы. Используется в паре с sshuser . |
id | (int) | Уникальный целочисленный идентификатор базовой службы. Используется для поиска, изменения и удаления базовой службы. |
rg_id | (int) | Уникальный целочисленный идентификатор ресурсной группы базовой службы. |
rg_name | (string) | Имя ресурсной группы базовой службы. |
verify_ssl | (bool) Default: true |
Позволяет отключить проверку SSL сертификатов при выполнении API вызовов в адрес контроллера облачной инфраструктуры, например, при работе с изолированной облачной инфраструктурой, использующей самоподписанные сертификаты. Применяйте данный параметр с осторожностью, предпочтительно в защищенных средах. |
Возвращаемые значения модуля decort_bservice
Модуль decort_bservice возвращает информацию о базовой службе в виде словаря facts со следующими ключами:
Ключ | Тип данных | Описание |
---|---|---|
id | int | Уникальный целочисленный идентификатор базовой службы. |
name | string | Имя базовой службы. |
techStatus | string | Технический статус базовой службы. |
state | string | Статус базовой службы. |
rg_id | int | Уникальный целочисленный идентификатор ресурсной группы, в которой находится базовая служба. |
account_id | int | Уникальный целочисленный идентификатор аккаунта, в котором находится ресурсная группа. |
groups | list | Список словарей с информацией о группах базовой службы. |
Пример использования модуля decort_bservice
Данный пример создаёт базовую службу с именем databases.
- name: Create Basic Service
decort_bservice:
authenticator: jwt
controller_url: "{{ controller_url }}"
jwt: "{{ auth_token }}"
name: databases
rg_id: "{{ rg_id }}"
register: db_bservice
Данный пример удаляет базовую службу с названием databases.
- name: Delete Basic Service
decort_bservice:
authenticator: jwt
controller_url: "{{ controller_url }}"
jwt: "{{ auth_token }}"
state: absent
name: databases
rg_id: "{{ rg_id }}"
register: db_bservice