From 75b8fcbb7a0fb4936b25222d531ae3916f704502 Mon Sep 17 00:00:00 2001
From: svs1370 <34687689+svs1370@users.noreply.github.com>
Date: Mon, 18 May 2020 19:30:35 +0300
Subject: [PATCH] =?UTF-8?q?Updated=20XX.=20=D0=9C=D0=BE=D0=B4=D1=83=D0=BB?=
=?UTF-8?q?=D1=8C=20decort=5Fvins=20(markdown)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
XX.-Модуль-decort_vins.md | 46 +++++++++++++++++++++------------
1 file changed, 29 insertions(+), 17 deletions(-)
diff --git a/XX.-Модуль-decort_vins.md b/XX.-Модуль-decort_vins.md
index f1ec057..15e48e5 100644
--- a/XX.-Модуль-decort_vins.md
+++ b/XX.-Модуль-decort_vins.md
@@ -11,8 +11,8 @@
| Параметр | Тип, допустимые значения | Описание |
| --- | --- | --- |
-| account_id | (int) | Уникальный целочисленный идентификатор учётной записи (_account_), которой принадлежит данный ViNS.
Должен быть задан либо идентификатор, либо имя учётной записи (см. параметр `account_name`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. |
-| account_name | (string) | Имя учётной записи (_account_), которой принадлежит данный ViNS.
Должно быть задано либо имя, либо идентификатор учётной записи (см. параметр `account_id`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. |
+| account_id | (int) | Уникальный целочисленный идентификатор учётной записи (_account_), которой принадлежит данный ViNS.
При идентификации виртуального сетевого сегмента по имени (см. параметр`vins_name`) должно быть задан либо идентификатор, либо имя учётной записи (см. параметр `account_name`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. |
+| account_name | (string) | Имя учётной записи (_account_), которой принадлежит данный ViNS.
При идентификации виртуального сетевого сегмента по имени (см. параметр `vins_name`) должно быть задано либо имя, либо идентификатор учётной записи (см. параметр `account_id`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. |
| annotation | (string) | Текстовое описание виртуального сетевого сегмента. Данный аргумент является опциональным и учитывается только при создании ViNS, а при всех прочих операциях игнорируется. |
| app_id | (string) | Идентификатор приложения, использующийся для подключения к контроллеру облачной платформы DECORT в режиме `authenticator: oauth2`. Данный параметр является обязательным для указанного режима.
Если параметр не задан в _playbook_, модуль будет использовать значение переменной окружения _DECORT_APP_ID_. |
| app_secret | (string) | Секретный ключ приложения, который используется для подключения к контроллеру облачной платформы DECORT в режиме `authenticator: oauth2`. Данный параметр является обязательным для указанного режима. Так как он содержит секретную информацию, то его не рекомендуется задавать непосредственно в _playbook_.
Если параметр не задан в _playbook_, то модуль будет использовать значение переменной окружения _DECORT_APP_SECRET_. |
@@ -27,37 +27,49 @@
| rg_name | (string) | Имя ресурсной группы, в которой должен быть создан или уже существует ViNS. Если одновременно заданы `rg_name` и `rg_id`, то `rg_name` игнорируется. |
| state | Значения:
`present` <- default
`absent`
`enabled`
`disabled`
| Целевое состояние ViNS. |
| verify_ssl | (bool)
`True` <- default
`False` | Позволяет отключить проверку SSL сертификатов при выполнении API вызовов в адрес контроллера облачной инфраструктуры, например, при работе с изолированной облачной инфраструктурой, использующей самоподписанные сертификаты.
Применяйте данный параметр с осторожностью, предпочтительно в защищенных средах. |
-| vins_name | (string) | Имя виртуального сетевого сегмента.
Этот параметр является обязательным.
Обратите внимание, что это имя уникально только в рамках ресурсной группы или учетной записи, на уровне которой существует данный сетевой сегмент. |
+| vins_id | (int) | Идентификатор виртуального сетевого сегмента. Соответствующий сетевой сегмент должен существовать (таким образом, с помощью `vins_is` нельзя создать новый сегмент, а только управлять уже имеющимися.
Если задан данный параметр, то параметры `vins_name`, `account_name`, `account_id`, `rg_name` и `rg_id` игнорируются. |
+| vins_name | (string) | Имя виртуального сетевого сегмента.
Для идентификации виртуального сетевого сегмента требуется либо I(vins_name) и информация об учётной записи/ресурсной группе, которой принадлежит сегмент, либо I(vins_id).
Обратите внимание, что это имя уникально только в рамках ресурсной группы или учетной записи, на уровне которой существует данный сетевой сегмент. |
| workflow_callback | (string) | URL, по которому вышестоящее приложение (например, пользовательский портал или оркестратор верхнего уровня, инициирующий запуск Ansible playbook) ожидает API вызова, в параметрах которого модуль _desc_vm_ будет оперативно передавать информацию о своем статусе и текущей фазе исполнения.
Данный параметр является опциональным.
Функциональность callbacks в текущей версии модуля не реализована.|
| workflow_context | (string) | Контекстная информация, которая будет содержаться в параметрах API вызова, адресованного к `workflow_callback` URL.
Данная информация призвана однозначно идентифицировать задачу, выполняемую модулем в настоящий момент, чтобы оркестратор верхнего уровня мог сопоставить получаемые через вызов `workflow_callback` данные со своим внутренним состоянием и отслеживать инициированные им задачи.
Параметр является опциональным и имеет значение только при условии, что также задан `workflow_callback`.
Функциональность callbacks в текущей версии модуля не реализована.|
## XX.3 Возвращаемые значения модуля _decort_XXX_
-Модуль _decort_XXX_ возвращает информацию о XXX в виде словаря `facts` со следующими ключами:
+Модуль _decort_XXX_ возвращает информацию о виртуальном сетевом сегменте (Virtual Network Segment, ViNS) в виде словаря `facts` со следующими ключами:
| Ключ | Тип данных | Описание |
| --- | --- | --- |
-| account_id | int | |
-| ext_ip_addr | (string) | |
-| id | (int) | |
-| name | (string) | |
-| int_net_addr | (string) | |
-| rg_id | (int) | |
-| state | (string) | |
+| account_id | int | Уникальный целочисленный идентификатор учётной записи (_account_), которой принадлежит ViNS. |
+| ext_ip_addr | (string) | IP адрес интерфейса, которым ViNS подключён во внешнюю сеть. Если ViNS не подключён к внешней сети, то пустая строка. |
+| ext_net_id | (int) | Идентификатор внешней сети, к которой подключён ViNS. -1 означает, что ViNS в данный момент не подключён к внешней сети. |
+| gid | (int) | Идентификатор физического кластера (Grid ID), на базе которого развёрнуты ресурсы данного ViNS. |
+| id | (int) | Уникальный целочисленный идентификатор ViNS. |
+| name | (string) | Имя ViNS. Обратите внимание, что это имя уникально только в рамках учётной записи или ресурсной группы, на уровне которых создан ViNS. |
+| int_net_addr | (string) | Адрес внутренней сети ViNS. Обратите внимание, что адреса внутренних сетей всех ViNS, принадлежащих одной и той же учётной записи (независимо от того, создан ли ViNS на уровне учётной записи или ресурсной группы), не пересекаются. |
+| rg_id | (int) | Уникальный целочисленный идентификатор учётной ресурсной группы, которой принадлежит данный ViNS. Если данный ViNS создан на уровне учётной записи, то `rg_id=0`. |
+| state | (string) | Текущее состояние ViNS.
Корректные состояния: `CREATED`, `ENABLED`, `DISABLED`, `DELETED`, `DESTROYED`. |
-## XX.4 Пример использования модуля _decort_XXX_
-В данном примере XXX.
+## XX.4 Пример использования модуля _decort_vins_
+В данном примере создаётся виртуальный сетевой сегмент с именем "MyVins01" (`vins_name: "MyVins01"`).
+
+Сетевой сегмент создаётся на уровне ресурсной группы "MyRg01" (`rg_name: "MyRg01"`), принадлежащей учётной записи "MyMainAccount" (`account_name: "MyMainAccount"`). Виртуальный сетевой сегмент будет иметь подключение во внешнюю сеть по умолчанию (`ext_net_id: 0`).
```
-- name: xxxx
- decort_xxx:
+- name: Manage ViNS at resource group level
+ decort_vins:
authenticator: oauth2
app_id: "{{ my_app_id }}"
app_secret: "{{ my_app_secret }}"
oauth2_url: "https://sso.digitalenergy.online"
controller_url: "https://cloud.digitalenergy.online"
-
- delegate_to: localhost
+ vins_name: "MyVins01"
+ account_name: "MyMainAccount"
+ rg_name: "MyRg01"
+ ext_net_id: 0
+ state: present
+ register: my_vins
+ delegate_to: localhost
...
```
+
+Результат исполнения модуля _decort_vins_ записывается в переменную `my_vins`, которую можно дальше использовать в _Ansible playbooks_. Например, идентификатор ViNS будет доступен как `my_vins.facts.id`.