From f825b9d93f0e0faa65f135028838cd45cd3a3b08 Mon Sep 17 00:00:00 2001 From: sskarimov Date: Mon, 1 Jun 2026 18:15:20 +0300 Subject: [PATCH] 12.0.0 --- 12.0.0/Home.md | 53 + 12.0.0/введение.md | 295 ++ 12.0.0/модуль-decort_account.md | 1924 +++++++++ 12.0.0/модуль-decort_account_list.md | 551 +++ 12.0.0/модуль-decort_audit_list.md | 839 ++++ 12.0.0/модуль-decort_bservice.md | 84 + 12.0.0/модуль-decort_disk.md | 1430 +++++++ 12.0.0/модуль-decort_disk_list.md | 1328 ++++++ 12.0.0/модуль-decort_flip_group_list.md | 574 +++ 12.0.0/модуль-decort_group.md | 101 + 12.0.0/модуль-decort_image.md | 153 + 12.0.0/модуль-decort_image_list.md | 700 ++++ 12.0.0/модуль-decort_jwt.md | 48 + 12.0.0/модуль-decort_k8s.md | 888 ++++ 12.0.0/модуль-decort_lb.md | 1502 +++++++ 12.0.0/модуль-decort_pfw.md | 66 + 12.0.0/модуль-decort_rg.md | 806 ++++ 12.0.0/модуль-decort_rg_list.md | 937 +++++ 12.0.0/модуль-decort_sdn_access_group.md | 303 ++ 12.0.0/модуль-decort_sdn_access_group_list.md | 481 +++ 12.0.0/модуль-decort_sdn_hypervisor.md | 330 ++ 12.0.0/модуль-decort_sdn_hypervisor_list.md | 556 +++ 12.0.0/модуль-decort_sdn_logical_port.md | 1028 +++++ .../модуль-decort_sdn_logical_port_address.md | 252 ++ 12.0.0/модуль-decort_sdn_logical_port_list.md | 1184 ++++++ .../модуль-decort_sdn_network_object_group.md | 1163 ++++++ ...ль-decort_sdn_network_object_group_ip_range.md | 240 ++ ...-decort_sdn_network_object_group_logical_port.md | 134 + ...дуль-decort_sdn_network_object_group_mac.md | 140 + 12.0.0/модуль-decort_sdn_segment.md | 1286 ++++++ 12.0.0/модуль-decort_sdn_segment_list.md | 1152 ++++++ 12.0.0/модуль-decort_security_group.md | 632 +++ 12.0.0/модуль-decort_security_group_list.md | 568 +++ 12.0.0/модуль-decort_storage_policy.md | 220 + 12.0.0/модуль-decort_storage_policy_list.md | 577 +++ 12.0.0/модуль-decort_trunk.md | 281 ++ 12.0.0/модуль-decort_trunk_list.md | 485 +++ 12.0.0/модуль-decort_user.md | 607 +++ 12.0.0/модуль-decort_vins.md | 2639 ++++++++++++ 12.0.0/модуль-decort_vins_list.md | 615 +++ 12.0.0/модуль-decort_vm.md | 3652 +++++++++++++++++ 12.0.0/модуль-decort_vm_list.md | 1972 +++++++++ 12.0.0/модуль-decort_vm_snapshot.md | 275 ++ 12.0.0/модуль-decort_zone.md | 402 ++ 12.0.0/модуль-decort_zone_list.md | 593 +++ Home.md | 1 + 46 files changed, 34047 insertions(+) create mode 100644 12.0.0/Home.md create mode 100644 12.0.0/введение.md create mode 100644 12.0.0/модуль-decort_account.md create mode 100644 12.0.0/модуль-decort_account_list.md create mode 100644 12.0.0/модуль-decort_audit_list.md create mode 100644 12.0.0/модуль-decort_bservice.md create mode 100644 12.0.0/модуль-decort_disk.md create mode 100644 12.0.0/модуль-decort_disk_list.md create mode 100644 12.0.0/модуль-decort_flip_group_list.md create mode 100644 12.0.0/модуль-decort_group.md create mode 100644 12.0.0/модуль-decort_image.md create mode 100644 12.0.0/модуль-decort_image_list.md create mode 100644 12.0.0/модуль-decort_jwt.md create mode 100644 12.0.0/модуль-decort_k8s.md create mode 100644 12.0.0/модуль-decort_lb.md create mode 100644 12.0.0/модуль-decort_pfw.md create mode 100644 12.0.0/модуль-decort_rg.md create mode 100644 12.0.0/модуль-decort_rg_list.md create mode 100644 12.0.0/модуль-decort_sdn_access_group.md create mode 100644 12.0.0/модуль-decort_sdn_access_group_list.md create mode 100644 12.0.0/модуль-decort_sdn_hypervisor.md create mode 100644 12.0.0/модуль-decort_sdn_hypervisor_list.md create mode 100644 12.0.0/модуль-decort_sdn_logical_port.md create mode 100644 12.0.0/модуль-decort_sdn_logical_port_address.md create mode 100644 12.0.0/модуль-decort_sdn_logical_port_list.md create mode 100644 12.0.0/модуль-decort_sdn_network_object_group.md create mode 100644 12.0.0/модуль-decort_sdn_network_object_group_ip_range.md create mode 100644 12.0.0/модуль-decort_sdn_network_object_group_logical_port.md create mode 100644 12.0.0/модуль-decort_sdn_network_object_group_mac.md create mode 100644 12.0.0/модуль-decort_sdn_segment.md create mode 100644 12.0.0/модуль-decort_sdn_segment_list.md create mode 100644 12.0.0/модуль-decort_security_group.md create mode 100644 12.0.0/модуль-decort_security_group_list.md create mode 100644 12.0.0/модуль-decort_storage_policy.md create mode 100644 12.0.0/модуль-decort_storage_policy_list.md create mode 100644 12.0.0/модуль-decort_trunk.md create mode 100644 12.0.0/модуль-decort_trunk_list.md create mode 100644 12.0.0/модуль-decort_user.md create mode 100644 12.0.0/модуль-decort_vins.md create mode 100644 12.0.0/модуль-decort_vins_list.md create mode 100644 12.0.0/модуль-decort_vm.md create mode 100644 12.0.0/модуль-decort_vm_list.md create mode 100644 12.0.0/модуль-decort_vm_snapshot.md create mode 100644 12.0.0/модуль-decort_zone.md create mode 100644 12.0.0/модуль-decort_zone_list.md diff --git a/12.0.0/Home.md b/12.0.0/Home.md new file mode 100644 index 0000000..d34af39 --- /dev/null +++ b/12.0.0/Home.md @@ -0,0 +1,53 @@ +1. [Введение](./введение.md) + - [Введение](./введение.md#введение) + - [Системные требования](./введение.md#системные-требования) + - [Подготовка к работе](./введение.md#подготовка-к-работе) + - [Авторизация](./введение.md#авторизация) + - [Общие параметры модулей для авторизации](./введение.md#общие-параметры-модулей-для-авторизации) + - [Пример авторизации с помощью DECS3O](./введение.md#пример-авторизации-с-помощью-decs3o) + - [Пример авторизации с помощью BVS](./введение.md#пример-авторизации-с-помощью-bvs) + - [Пример авторизации с помощью JSON Web Token](./введение.md#пример-авторизации-с-помощью-json-web-token) +2. Ansible модули DECORT: + - [Модуль decort_account](./модуль-decort_account.md) - приведение к целевому состоянию и получение информации об аккаунте + - [Модуль decort_account_list](./модуль-decort_account_list.md) - получение информации о доступных аккаунтах + - [Модуль decort_audit_list](./модуль-decort_audit_list.md) - получение списка доступных аудитов + - [Модуль decort_bservice](./модуль-decort_bservice.md) - приведение к целевому состоянию и получение информации о базовой службе + - [Модуль decort_disk](./модуль-decort_disk.md) - приведение к целевому состоянию и получение информации о диске + - [Модуль decort_disk_list](./модуль-decort_disk_list.md) - получение списка доступных дисков + - [Модуль decort_flip_group_list](./модуль-decort_flip_group_list.md) - получение списка доступных групп с плавающим IP-адресом + - [Модуль decort_group](./модуль-decort_group.md)- приведение к целевому состоянию и получение информации о группе базовой службы + - [Модуль decort_image](./модуль-decort_image.md) - приведение к целевому состоянию и получение информации об образе + - [Модуль decort_image_list](./модуль-decort_image_list.md) - получение списка доступных образов + - [Модуль decort_jwt](./модуль-decort_jwt.md) - получение JWT + - [Модуль decort_k8s](./модуль-decort_k8s.md) - приведение к целевому состоянию и получение информации о кластере Kubernetes + - [Модуль decort_lb](./модуль-decort_lb.md) - приведение к целевому состоянию и получение информации о балансировщике нагрузки + - [Модуль decort_pfw](./модуль-decort_pfw.md) - приведение к целевому состоянию и получение информации о правилах переадресации портов + - [Модуль decort_rg](./модуль-decort_rg.md) - приведение к целевому состоянию и получение информации о ресурсной группе + - [Модуль decort_rg_list](./модуль-decort_rg_list.md) - получение списка доступных ресурсных групп + - [Модуль decort_sdn_access_group](./модуль-decort_sdn_access_group.md) - приведение к целевому состоянию и получение информации о группе доступа SDN + - [Модуль decort_sdn_access_group_list](./модуль-decort_sdn_access_group_list.md) - получение списка доступных групп доступа SDN + - [Модуль decort_sdn_hypervisor](./модуль-decort_sdn_hypervisor.md) - приведение к целевому состоянию и получение информации о гипервизоре SDN + - [Модуль decort_sdn_hypervisor_list](./модуль-decort_sdn_hypervisor_list.md) - получение списка доступных гипервизоров SDN + - [Модуль decort_sdn_logical_port](./модуль-decort_sdn_logical_port.md) - приведение к целевому состоянию и получение информации о логических портах SDN + - [Модуль decort_sdn_logical_port_address](./модуль-decort_sdn_logical_port_address.md) - приведение к целевому состоянию и получение информации об адресе логического порта SDN + - [Модуль decort_sdn_logical_port_list](./модуль-decort_sdn_logical_port_list.md) - получение списка доступных логических портов SDN + - [Модуль decort_sdn_network_object_group](./модуль-decort_sdn_network_object_group.md) - приведение к целевому состоянию и получение информации о группах сетевых объектов SDN + - [Модуль decort_sdn_network_object_group_ip_range](./модуль-decort_sdn_network_object_group_ip_range.md) - приведение к целевому состоянию и получение информации о диапазоне IP-адресов в группе сетевых объектов SDN + - [Модуль decort_sdn_network_object_group_logical_port](./модуль-decort_sdn_network_object_group_logical_port.md) - приведение к целевому состоянию логического порта в группе сетевых объектов SDN + - [Модуль decort_sdn_network_object_group_mac](./модуль-decort_sdn_network_object_group_mac.md) - приведение к целевому состоянию и получение информации о MAC-адресе в группе сетевых объектов SDN + - [Модуль decort_sdn_segment](./модуль-decort_sdn_segment.md) - приведение к целевому состоянию и получение информации о сегменте SDN + - [Модуль decort_sdn_segment_list](./модуль-decort_sdn_segment_list.md) - получение списка доступных сегментов SDN + - [Модуль decort_security_group](./модуль-decort_security_group.md) - управление группами безопасности + - [Модуль decort_security_group_list](./модуль-decort_security_group_list.md) - получение списка доступных групп безопасности + - [Модуль decort_storage_policy](./модуль-decort_storage_policy.md) - получение информации о политике хранения + - [Модуль decort_storage_policy_list](./модуль-decort_storage_policy_list.md) - получение списка доступных политик хранения + - [Модуль decort_trunk](./модуль-decort_trunk.md) - получение информации о транковом порте + - [Модуль decort_trunk_list](./модуль-decort_trunk_list.md) - получение списка доступных транковых портов + - [Модуль decort_user](./модуль-decort_user.md) - получение информации о пользователе + - [Модуль decort_vins](./модуль-decort_vins.md) - приведение к целевому состоянию и получение информации о внутренней сети + - [Модуль decort_vins_list](./модуль-decort_vins_list.md) - получение списка доступных внутренних сетей + - [Модуль decort_vm](./модуль-decort_vm.md) - приведение к целевому состоянию и получение информации о виртуальной машине + - [Модуль decort_vm_list](./модуль-decort_vm_list.md) - получение списка доступных виртуальных машин + - [Модуль decort_vm_snapshot](./модуль-decort_vm_snapshot.md) - приведение к целевому состоянию и получение информации о снимке виртуальной машины + - [Модуль decort_zone](./модуль-decort_zone.md) - получение информации о зоне + - [Модуль decort_zone_list](./модуль-decort_zone_list.md) - получение списка доступных зон diff --git a/12.0.0/введение.md b/12.0.0/введение.md new file mode 100644 index 0000000..08dc1d9 --- /dev/null +++ b/12.0.0/введение.md @@ -0,0 +1,295 @@ +# Модули Ansible для управления облачными ресурсами в платформе DECORT +## Введение + +Настоящая документация содержит руководство пользователя по библиотеке модулей decort для Ansible. С помощью этих модулей Вы сможете управлять созданием и конфигурированием облачных ресурсов в платформе DECORT (Digital Energy Cloud Orchestration Technology). + +По каждому модулю есть своя документация, в которой вы можете найти список доступных действий, подробную информацию о входных параметрах и возвращаемых данных, а также примеры использования. + +## Системные требования +Убедитесь, что Ваша система соответствует требованиям для работы модуля DECORT. +Системные требования для работы модуля: +- Интерпретатор Python 3.12 + - необходимые библиотеки Python указаны в файле **requirements.txt** корневой папки проекта + +## Подготовка к работе + +Для начала работы необходимо, чтобы Ansible было известно местоположение файлов модулей, а также настроить удобный для визуального восприятия формат вывода результата работы модулей. Для этого необходимо в рабочей директории, из которой будет запускаться Ansible, разместить файл ansible.cfg: +``` +[defaults] +library=./library ; Путь к директории library +module_utils=./module_utils ; Путь к директории module_utils + +callback_result_format=yaml ; Настройка удобного формата вывода результата работы модулей + +``` +## Общие параметры модулей + +### Для авторизации + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ app_id + + (str) + + Идентификатор приложения, использующийся для получения токена в режимах + authenticator: bvs или authenticator: decs3o. + Данный параметр является обязательным для указанных режимов. Если + параметр не задан в playbook, модуль будет использовать значение + переменной окружения DECORT_APP_ID. +
+ app_secret + + (str) + + Секретный ключ приложения, использующийся для получения токена в режимах + authenticator: bvs или authenticator: decs3o. + Данный параметр является обязательным для указанных режимов. + Так как он содержит секретную информацию, то его не рекомендуется + задавать непосредственно в playbook. Если параметр не задан в playbook, + то модуль будет использовать значение переменной окружения + DECORT_APP_SECRET. +
+ authenticator + + (str) +
Значения: +
bvs +
decs3o +
oauth2 +
jwt +
Default: decs3o +
+ Режим аутентификации для получения токена. + Значение oauth2 является устаревшим и равнозначным + decs3o. +
+ controller_url + + (str) + + URL контроллера, соответствующего экземпляру облачной платформы + DECORT. Данный параметр является обязательным. +
+ domain + + (str) + + Домен BVS, использующийся для получения токена в режиме + authenticator: bvs. Данный параметр является + обязательным для указанного режима. Если параметр не задан в playbook, + модуль будет использовать значение переменной окружения + DECORT_DOMAIN. +
+ jwt + + (str) + + JSON Web Token (JWT), который будет использоваться для подключения + к контроллеру облачной платформы DECORT в режиме + authenticator: jwt. Данный параметр является + обязательным для указанного режима. Так как он содержит + потенциально секретную информацию, а сам JWT, как правило, + имеет ограниченное время жизни, то его не рекомендуется задавать + непосредственно в playbook. Если этот параметр не определен в + playbook, то модуль будет использовать значение переменной + окружения DECORT_JWT. +
+ oauth2_url + + (str) + + URL авторизационного сервера, работающего по протоколу Oauth2, + который должен использоваться в режимах + authenticator: bvs + или authenticator: decs3o. Данный параметр является + обязательным для указанных режимов. Если параметр не задан в + playbook, модуль будет использовать значение переменной + окружения DECORT_OAUTH2_URL. +
+ password + + (str) + + Пароль пользователя, который должен использоваться в режиме + authenticator: bvs. Данный параметр является + обязательным для указанного режима. Так как он содержит секретную + информацию, то его не рекомендуется задавать непосредственно + в playbook. Если параметр не задан в playbook, модуль будет + использовать значение переменной окружения + DECORT_PASSWORD. +
+ username + + (str) + + Логин пользователя, который должен использоваться в режиме + authenticator: bvs. Данный параметр является + обязательным для указанного режима. Если параметр не задан в playbook, + модуль будет использовать значение переменной окружения + DECORT_USERNAME. +
+ verify_ssl + + (bool) +
Default: true +
+ Позволяет отключить проверку SSL сертификатов при выполнении API + вызовов в адрес контроллера облачной инфраструктуры, например, + при работе с изолированной облачной инфраструктурой, использующей + самоподписанные сертификаты. Применяйте данный параметр с + осторожностью, предпочтительно в защищенных средах. +
+ +### Игнорирование проверки версии SDK + + + + + + + + + + + + +
ПараметрТипОписание
+ ignore_sdk_version_check + + (bool) +
Default: false +
+ Позволяет отключить проверку совместимости с версией библиотеки Python dynamix_sdk. +
Игнорирование проверки совместимости с версией dynamix_sdk может вызвать непредвиденные ошибки в работе модулей, поэтому использование данного функционала допустимо только принимая на себя всю ответственность за возможные последствия. +
+ +### Игнорирование проверки совместимости с API + + + + + + + + + + + + +
ПараметрТипОписание
+ ignore_api_compatibility + + (bool) +
Default: false +
+ Позволяет отключить проверку совместимости с API. +
Игнорирование проверки совместимости с API может вызвать непредвиденные ошибки в работе модулей, поэтому использование данного функционала допустимо только принимая на себя всю ответственность за возможные последствия. +
+ +## Примеры + +### Авторизация с помощью DECS3O +``` +- name: Example + hosts: localhost + tasks: + - name: DECS3O auth + decort_module_name: + # Специфичные для модулей параметры упущены + # Пример демонстрирует только параметры для авторизации + app_id: "{{ app_id }}" + app_secret: "{{ app_secret }}" + authenticator: decs3o + controller_url: https://dynamix.local + oauth2_url: https://sso-dynamix.local +``` + +### Авторизация с помощью BVS +``` +- name: Example + hosts: localhost + tasks: + - name: BVS auth + decort_module_name: + # Специфичные для модулей параметры упущены + # Пример демонстрирует только параметры для авторизации + app_id: "{{ app_id }}" + app_secret: "{{ app_secret }}" + authenticator: bvs + controller_url: https://dynamix.local + oauth2_url: https://bvs.local + domain: dynamix + username: "{{ username }}" + password: "{{ password }}" +``` + +### Авторизация с помощью JSON Web Token + +``` +- name: Example + hosts: localhost + tasks: + - name: Auth with JWT + decort_module_name: + # Специфичные для модулей параметры упущены + # Пример демонстрирует только параметры для авторизации + authenticator: jwt + controller_url: "{{ controller_url }}" + jwt: "{{ jwt }}" +``` diff --git a/12.0.0/модуль-decort_account.md b/12.0.0/модуль-decort_account.md new file mode 100644 index 0000000..4f273fc --- /dev/null +++ b/12.0.0/модуль-decort_account.md @@ -0,0 +1,1924 @@ +# Модуль decort_account +## Обзор модуля + +Модуль **decort_account** предназначен для выполнения следующих действий над аккаунтом: +- **получить основную информацию** (см. [возвращаемые значения](#основная-информация) и [примеры](#получить-основную-информацию-об-аккаунте)) +- **получить информацию об используемых и зарезервированных ресурсах** (см. [параметр get_resource_consumption](#get_resource_consumption), [возвращаемые значения](#используемые-и-зарезервированные-ресурсы) и [примеры](#получить-информацию-об-используемых-и-зарезервированных-ресурсах-аккаунта)) +- **удалить в корзину** (см. [параметр state](#state) и [примеры](#в-корзину)) +- **удалить безвозвратно** (см. [параметр state](#state) и [примеры](#безвозвратно)) +- **восстановить из корзины** (см. [параметр state](#state) и [примеры](#восстановить-из-корзины)) +- **выключить/включить** (см. [параметр state](#state) и [примеры](#выключитьвключить)) +- **изменить права доступа** (см. [параметр acl](#acl) и [примеры](#изменить-права-доступа)) +- **изменить имя** (см. [параметр name](#name) и [примеры](#переименовать)) +- **изменить квоты** (см. [параметр quotas](#quotas) и [примеры](#изменить-квоты)) +- **выключить/включить отправку уведомлений о предоставлении доступа к ресурсам** (см. [параметр send_access_emails](#send_access_emails) и [примеры](#выключитьвключить-отправку-уведомлений-о-предоставлении-доступа-к-ресурсам)) +- **изменить доступные пулы СХД** (см. [параметр sep_pools](#sep_pools) и [примеры](#изменить-доступные-пулы-схд)) +- **изменить описание** (см. [параметр description](#description) и [примеры](#изменить-описание)) +- **изменить зону по умолчанию** (см. [параметр default_zone_id](#default_zone_id) и [примеры](#изменить-зону-по-умолчанию)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_account** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + send_access_emails + + + (bool) + + Выключение/включение отправки пользователям на эл. почту уведомлений о предоставлении доступа к ресурсам. +
+ + acl + + + (dict) + + Целевые права доступа. +
+ mode + + (str) +
Значения: +
match +
revoke +
update +
Default: update +
+ Режим изменения прав доступа для указанных пользователей. +
match - привести в соответствие для указанных + пользователей, удалить предоставленные для других. +
revoke - отозвать для указанных пользователей, + если предоставлены. +
update - привести в соответствие для указанных + пользователей, оставить без изменения предоставленные для + других. +
+ users + + (list) + + Список словарей, описывающих права доступа пользователей. +
Обязательный параметр. +
+ rights + + (str) +
Значения: +
R +
RCX +
ARCXDU +
Default: R +
+ Права доступа. +
При mode: revoke не используется. +
При mode: match и mode: update + права ARCXDU считаются соответствующими + правам CXDRAU. +
+ id + + (str) + + Идентификатор пользователя. +
Обязательный параметр. +
+ + default_zone_id + + + (int) + + Идентификатор зоны по умолчанию. +
+ + description + + + (str) + + Целевое описание +
+ id + + (int) + + Идентификатор целевого аккаунта. +
Обязательный параметр, если не задан параметр + name. +
+ + name + + + (str) + + Имя целевого аккаунта. +
Может быть альтернативой параметру id, + за исключением случая, когда необходимо получить + информацию о безвозвратно удалённом объекте. +
Если задан совместно с параметром id, + то используется для переименования (целевое имя). +
+ + get_resource_consumption + + + (bool) +
Default: false +
+ Получить информацию об используемых и зарезервированных ресурсах. +
+ + quotas + + + (dict) + + Целевые квоты. +
+ cpu_count + + (int) + + Количество виртуальных процессоров. +
-1 - удалить квоту. +
+ storage_size_gb + + (int) + + Объём дисков в ГБ. +
-1 - удалить квоту. +
+ gpu_count + + (int) + + Количество графических процессоров. +
-1 - удалить квоту. +
+ ext_ip_count + + (int) + + Количество внешних IP-адресов. +
-1 - удалить квоту. +
+ ram_size_mb + + (int) + + Объём оперативной памяти в МБ. +
-1 - удалить квоту. +
+ + sep_pools + + + (list) + + Список словарей, описывающих доступные пулы СХД. +
+ sep_id + + (int) + + Идентификатор системы хранения данных. +
+ pool_names + + (list) + + Список названий пулов системы хранения данных. +
+ + state + + + (str) +
Значения: +
absent +
absent_permanently +
confirmed +
disabled +
present +
+ Целевое состояние. +
absent - удалён в корзину, безвозвратно удалён + или не существует. Если существует и не удалён, то будет удалён + в корзину. +
absent_permanently - безвозвратно удалён или + не существует. Если существует и не удалён или удалён в корзину, + то будет безвозвратно удалён. +
При значениях absent и absent_permanently + использование других параметров модуля, вызывающих изменение объекта, + не допускается. +
confirmed - включён. Если выключен, то будет включён. + Если удалён в корзину, то будет восстановлен из корзины. +
disabled - выключен. Если включён, то будет выключен. + Если удалён в корзину, то будет восстановлен из корзины и выключен. +
present - существует и не удалён. Если удалён в + корзину, то будет восстановлен из корзины. +
+ +## Возвращаемые значения + +Модуль **decort_account** возвращает информацию об аккаунте в виде словаря `facts` со следующими ключами: + +### Основная информация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ acc_lvl_vins_ids + + list[int] + + Список идентификаторов внутренних сетей на уровне аккаунта. +
+ acl + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей. +
+ access_type + + str + + Тип доступа. +
+ can_be_deleted + + bool | null + + Может ли быть удалён. +
+ explicit + + bool + + Видимость. +
+ guid + + str | null + + Идентификатор доступа. +
+ status + + str + + Статус доступа. +
+ type + + str + +
+ user_emails + + list[str] | null + + Список адресов электронной почты. +
+ user_name + + str + + Имя пользователя. +
+ company + + str + + Название компании. +
+ company_url + + str + + URL компании. +
+ cpu_allocation_parameter + + str + + Режим выделения ЦП. +
+ cpu_allocation_ratio + + int + + Коэффициент для режима выделения ЦП. +
+ created_by + + str + + Идентификатор пользователя, который создал. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ dc_location + + str + +
+ deactivation_datetime + + str + + Дата и время выключения. +
+ deactivation_timestamp + + int + + Unix-время выключения. +
+ default_zone_id + + int + + Идентификатор зоны по умолчанию. +
+ deleted_by + + str + + Идентификатор пользователя, который удалил. +
+ deleted_datetime + + str + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str + + Описание. +
+ display_name + + str + + Отображаемое имя. +
+ id + + int + + Идентификатор. +
+ name + + str + + Имя. +
+ quotas + + dict + + Квоты на ресурсы. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ disk_size_gb + + int + + Объём диска в ГБ. +
+ ext_ip_count + + int + + Количество внешних IP-адресов. +
+ gpu_count + + int + + Количество графических процессоров. +
+ ram_size_mb + + float | int + + Объём оперативной памяти в МБ. +
+ storage_policies + + list + + Список словарей, описывающий квоты по политикам хранения. +
+ id + + (int) + + Идентификатор политики хранения. +
+ storage_size_gb + + (int) + + Объём дисков. +
+ storage_size_gb + + int + + Объём дисков в ГБ. +
+ resource_types + + list[str] + + Список типов ресурсов. +
+ send_access_emails + + bool + + Отправка пользователям на эл. почту уведомлений о предоставлении доступа. +
+ sep_pools + + list[str] + + Список доступных пулов СХД. +
+ status + + str + + Статус. +
+ storage_policy_ids + + list[int] + + Идентификаторы политик хранения. +
+ updated_by + + str + + Имя пользователя, обновившего аккаунт. +
+ updated_datetime + + str + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ version + + int + + Версия. +
+ vins_count + + int + + Количество внутренних сетей. +
+ vm_counts + + dict + + Количество ВМ по состоянию. +
+ started + + int + + Количество запущенных ВМ. +
+ stopped + + int + + Количество остановленных ВМ. +
+ vm_features + + list[str] + + Список дополнительных возможностей гипервизора, доступных ВМ. +
+ zones + + list + + Список словарей, описывающих доступные зоны. +
+ id + + int + + Идентификатор зоны. +
+ name + + str + + Название зоны. +
+ +### Используемые и зарезервированные ресурсы + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ resource_consumptions + + dict[str, any] + + Словарь, описывающий используемые и зарезервированные ресурсы. +
+ consumed + + dict[str, any] + + Словарь, описывающий используемые ресурсы. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ ram_size_mb + + int + + Объём оперативной памяти в МБ. +
+ storage_size_gb_by_real_usage + + int | float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + int + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ ext_ip_count + + int + + Количество внешних IP-адресов. +
+ gpu_count + + int + + Количество графических процессоров. +
+ sep_pools + + dict[str, dict] + + Объём дисков по пулам СХД. +
+ (идентификатор СХД) + + dict[str, dict] + + Словарь, описывающий испрользуемые ресурсы пулов СХД. +
+ (имя пула СХД) + + dict[str, float] + + Словарь, описывающий испрользуемые ресурсы пула СХД. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_policies + + dict[str, dict] + + Словарь, описывающий испрользуемые ресурсы по политикам хранения. +
+ (идентификатор политики хранения) + + dict[str, any] + + Словарь, описывающий испрользуемые ресурсы политики хранения. +
+ sep_pools + + dict[str, dict] + + Словарь, описывающий испрользуемые ресурсы пулов СХД. +
+ (идентификатор СХД) + + dict[str, dict] + + Словарь, описывающий испрользуемые ресурсы пулов СХД. +
+ (имя пула СХД) + + dict[str, float] + + Словарь, описывающий испрользуемые ресурсы пула СХД. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_quota_gb + + int | null + + Квота на объём хранилища в ГБ. +
+ reserved + + dict[str, any] + + Словарь, описывающий зарезервированные ресурсы. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ ram_size_mb + + int + + Объём оперативной памяти в МБ. +
+ storage_size_gb_by_real_usage + + int | float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + int + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ ext_ip_count + + int + + Количество внешних IP-адресов. +
+ gpu_count + + int + + Количество графических процессоров. +
+ sep_pools + + dict[str, dict] + + Объём дисков по пулам СХД. +
+ (идентификатор СХД) + + dict[str, dict] + + Словарь, описывающий зарезервированые ресурсы пулов СХД. +
+ (имя пула СХД) + + dict[str, float] + + Словарь, описывающий зарезервированые ресурсы пула СХД. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_policies + + dict[str, dict] + + Словарь, описывающий зарезервированые ресурсы по политикам хранения. +
+ (идентификатор политики хранения) + + dict[str, any] + + Словарь, описывающий зарезервированые ресурсы политики хранения. +
+ sep_pools + + dict[str, dict] + + Словарь, описывающий зарезервированые ресурсы пулов СХД. +
+ (идентификатор СХД) + + dict[str, dict] + + Словарь, описывающий зарезервированые ресурсы пулов СХД. +
+ (имя пула СХД) + + dict[str, float] + + Словарь, описывающий зарезервированые ресурсы пула СХД. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_quota_gb + + int | null + + Квота на объём хранилища в ГБ. +
+ +## Примеры использования + +### Получить основную информацию об аккаунте + +#### По идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic account info by ID + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" +``` + +#### По имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic account info by name + decort_account: + # Параметры для авторизации упущены + name: "{{ account_name }}" +``` + +### Получить информацию об используемых и зарезервированных ресурсах аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get account info with resource consumption + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + get_resource_consumption: true +``` + +### Удалить + +#### В корзину +``` +- name: Example + hosts: localhost + tasks: + - name: Delete account + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + state: absent +``` + +#### Безвозвратно +``` +- name: Example + hosts: localhost + tasks: + - name: Delete account + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + state: absent_permanently +``` + +### Восстановить из корзины +``` +- name: Example + hosts: localhost + tasks: + - name: Restore account from recycle bin + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + state: present +``` + +### Выключить/включить + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable account + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + state: disabled +``` + +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Enable account + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + state: confirmed +``` + +### Изменить права доступа + +#### Отозвать +``` +- name: Example + hosts: localhost + tasks: + - name: Revoke user access rights + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + acl: + mode: revoke + users: + - id: "{{ user1_id }}" + - id: "{{ user2_id }}" +``` + +#### Обновить +``` +- name: Example + hosts: localhost + tasks: + - name: Update user access rights + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + acl: + mode: update + users: + - id: "{{ user1_id }}" + rights: R + - id: "{{ user2_id }}" + rights: RCX +``` + +#### Привести в соответствие +``` +- name: Example + hosts: localhost + tasks: + - name: Match user access rights + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + acl: + mode: match + users: + - id: "{{ user1_id }}" + rights: ARCXDU + - id: "{{ user2_id }}" + rights: RCX +``` + +### Переименовать +``` +- name: Example + hosts: localhost + tasks: + - name: Rename account + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + name: "{{ account_new_name }}" +``` + +### Изменить квоты + +#### На объём дисков +``` +- name: Example + hosts: localhost + tasks: + - name: Update account quota of disks size + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + quotas: + storage_size_gb: 500 +``` + +#### На количество внешних IP-адресов +``` +- name: Example + hosts: localhost + tasks: + - name: Update account quota of public IP amount + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + quotas: + ext_ip_count: 10 +``` + +### Выключить/включить отправку уведомлений о предоставлении доступа к ресурсам + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable sending access emails + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + send_access_emails: false +``` + +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Enable sending access emails + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + send_access_emails: true +``` + +### Изменить доступные пулы СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Change available sep pools + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + sep_pools: + - sep_id: 1 + pool_names: + - pool1 +``` + +### Изменить описание +``` +- name: Example + hosts: localhost + tasks: + - name: Change description + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + description: New account description +``` + +### Изменить зону по умолчанию +``` +- name: Example + hosts: localhost + tasks: + - name: Change default zone + decort_account: + # Параметры для авторизации упущены + id: "{{ account_id }}" + default_zone_id: 8 +``` diff --git a/12.0.0/модуль-decort_account_list.md b/12.0.0/модуль-decort_account_list.md new file mode 100644 index 0000000..5654ef7 --- /dev/null +++ b/12.0.0/модуль-decort_account_list.md @@ -0,0 +1,551 @@ +# Модуль decort_account_list +## Обзор модуля + +Модуль **decort_account_list** предназначен для получения списка доступных пользователю аккаунтов (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_account_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ access_type + + (str) +
Значения: +
ARCXDU +
CXDRAU +
RCX +
R +
+ По типу доступа. +
+ id + + (int) + + По идентификатору. +
+ name + + (str) + + По имени. +
+ zone_id + + (int) + + По идентификатору зоны. +
+ status + + (str) +
Значения: +
CONFIRMED +
DELETED +
DESTROYED +
DESTROYING +
DISABLED +
+ По статусу. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_account_list** возвращает информацию о доступных аккаунтах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ acl + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей. +
+ explicit + + bool + + Видимость. +
+ guid + + str | null + + Идентификатор доступа. +
+ access_type + + str + + Тип доступа. +
+ status + + str + + Статус доступа. +
+ type + + str + +
+ user_name + + str + + Имя пользователя. +
+ can_be_deleted + + bool | null + + Может ли быть удалён. +
+ user_emails + + list[str] | null + + Список адресов электронной почты. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str | null + + Имя пользователя, удалившего аккаунт. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str + + Описание. +
+ id + + int + + Идентификатор. +
+ name + + str + + Имя. +
+ status + + str + + Статус. +
+ updated_by + + str | null + + Имя пользователя, обновившего аккаунт. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ vm_features + + list[str] + + Список дополнительных возможностей гипервизора. +
+ zone_ids + + list[int] + + Список идентификаторов доступных зон. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по типу доступа +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + filter: + access_type: "{{ access_type }}" +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по имени аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по идентификатору зоны +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + filter: + zone_id: "{{ zone_id }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + pagination: + size: 2 + number: 1 +``` + +### С сортировкой по идентификатору по убыванию +``` +- name: Example + hosts: localhost + tasks: + - name: Get account list + decort_account_list: + # Параметры для авторизации упущены + sorting: + field: id + asc: false +``` diff --git a/12.0.0/модуль-decort_audit_list.md b/12.0.0/модуль-decort_audit_list.md new file mode 100644 index 0000000..988ba75 --- /dev/null +++ b/12.0.0/модуль-decort_audit_list.md @@ -0,0 +1,839 @@ +# Модуль decort_audit_list +## Обзор модуля + +Модуль **decort_audit_list** предназначен для получения списка аудитов пользователя(см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_audit_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта, в отношении или в отношении объектов которого был выполнен запрос. +
+ api_url_path + + (str) + + По URL-путю запроса. +
+ bservice_id + + (int) + + По идентификатору базовой службы, в отношении которой был выполнен запрос. +
+ exclude_audit_lines + + (bool) +
Default: false +
+ Исключить из ответа запросы для получения аудитов. +
+ flip_group_id + + (int) + + По идентификатору группы с плавающим IP-адресом, в отношении которой был выполнен запрос. +
+ request_id + + (str) + + По идентификатору запроса. +
+ k8s_id + + (int) + + По идентификатору кластера Kubernetes, в отношении которого был выполнен запрос. +
+ lb_id + + (int) + + По идентификатору балансировщика нагрузки, в отношении которого был выполнен запрос. +
+ max_status_code + + (int) + + По максимальному коду ответа HTTP. +
+ min_status_code + + (int) + + По минимальному коду ответа HTTP. +
+ request_timestamp_end + + (int) + + По unix-времени завершения запроса. +
+ request_timestamp_start + + (int) + + По unix-времени начала запроса. +
+ rg_id + + (int) + + По идентификатору ресурсной группы, в отношении или в отношении объектов которой был выполнен запрос. +
+ sep_id + + (int) + + По идентификатору СХД, в отношении которой был выполнен запрос. +
+ user_name + + (str) + + По имени пользователя, от имени которого был выполнен запрос. +
+ vins_id + + (int) + + По идентификатору внутренней сети, в отношении которой был выполнен запрос. +
+ vm_id + + (int) + + По идентификатору ВМ, в отношении которой был выполнен запрос. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_audit_list** возвращает информацию о доступных аудитах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int | null + + Идентификатор аккаунта, в отношении или в отношении объектов которого был выполнен запрос. +
+ api_url_path + + str + + URL-путь запроса. +
+ async_request_task_id + + str | null + + Идентификатор задачи асинхронного запроса. +
+ args + + str + +
+ bservice_id + + int | null + + Идентификатор базовой службы, в отношении которой был выполнен запрос. +
+ client_ip_addr + + str + + IP-адрес клиента. +
+ correlation_id + + str + + Идентификатор для связности логов и задач, инициируемых запросов. +
+ execution_time_sec + + int | null + + Время выполнения запроса в секундах. +
+ flip_group_id + + int | null + + Идентификатор группы с плавающим IP-адресом, в отношении которой был выполнен запрос. +
+ guid + + str + + Идентификатор. +
+ k8s_id + + int | null + + Идентификатор кластера Kubernetes, в отношении которого был выполнен запрос. +
+ kwargs + + str + + Аргументы запроса. +
+ lb_id + + int | null + + Идентификатор балансировщика нагрузки, в отношении которого был выполнен запрос. +
+ node_ids + + list[int] | null + + Идентификаторы физических узлов, в отношении которых был выполнен запрос. +
+ request_datetime_iso8601 + + str + + Дата и время запроса в формате ISO 8601. +
+ request_datetime + + str | null + + Дата и время запроса. +
+ request_timestamp + + int + + Unix-время запроса. +
+ response_datetime + + str | null + + Дата и время ответа. +
+ response_timestamp + + int | null + + Unix-время ответа. +
+ result + + str | null + + Результат. +
+ rg_id + + int | null + + Идентификатор ресурсной группы, в отношении или в отношении объектов которой был выполнен запрос. +
+ sep_id + + int | null + + Идентификатор СХД, в отношении которой был выполнен запрос. +
+ status_code + + int | null + + Код ответа HTTP. +
+ user_name + + str + + Имя пользователя, от имени которого был выполнен запрос. +
+ vins_id + + int | null + + Идентификатор внутренней сети, в отношении которой был выполнен запрос. +
+ vm_id + + int | null + + Идентификатор ВМ, в отношении которой был выполнен запрос. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта, в отношении или в отношении объектов которого был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по URL-путю запроса. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + api_url_path: "{{ api_url_path }}" +``` + +### С фильтрацией по идентификатору базовой службы, в отношении которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + bservice_id: "{{ bservice_id }}" +``` + +### С фильтрацией по идентификатору группы с плавающим IP-адресом, в отношении которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + flip_group_id: "{{ flip_group_id }}" +``` + +### С фильтрацией по идентификатору запроса. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + request_id: "{{ request_id }}" +``` + +### С фильтрацией по идентификатору кластера Kubernetes, в отношении которого был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + k8s_id: "{{ k8s_id }}" +``` + +### С фильтрацией по идентификатору балансировщика нагрузки, в отношении которого был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + lb_id: "{{ lb_id }}" +``` + +### С фильтрацией по максимальному коду ответа HTTP. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + max_status_code: "{{ max_status_code }}" +``` + +### С фильтрацией по минимальному коду ответа HTTP. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + min_status_code: "{{ min_status_code }}" +``` + +### С фильтрацией по unix-времени завершения запроса. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + request_timestamp_end: "{{ request_timestamp_end }}" +``` + +### С фильтрацией по unix-времени начала запроса. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + request_timestamp_start: "{{ request_timestamp_start }}" +``` + +### С фильтрацией по идентификатору ресурсной группы, в отношении или в отношении объектов которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + rg_id: "{{ rg_id }}" +``` + +### С фильтрацией по идентификатору СХД, в отношении которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + sep_id: "{{ sep_id }}" +``` + +### С фильтрацией по имени пользователя, от имени которого был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + user_name: "{{ user_name }}" +``` + +### С фильтрацией по идентификатору внутренней сети, в отношении которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + vins_id: "{{ vins_id }}" +``` + +### С фильтрацией по идентификатору ВМ, в отношении которой был выполнен запрос. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + filter: + vm_id: "{{ vm_id }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по коду ответа HTTP. +``` +- name: Example + hosts: localhost + tasks: + - name: Get audit list + decort_audit_list: + # Параметры для авторизации упущены + sorting: + field: status_code +``` diff --git a/12.0.0/модуль-decort_bservice.md b/12.0.0/модуль-decort_bservice.md new file mode 100644 index 0000000..9553c70 --- /dev/null +++ b/12.0.0/модуль-decort_bservice.md @@ -0,0 +1,84 @@ +# Модуль 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** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +| ------ | ------ | ------ | +| 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` игнорируется. | +| state | (str)
Значения:
`absent`
`disabled`
`enabled`
`present`
`started`
`stopped`| Целевое состояние базовой службы.
`absent` - безвозвратно удалена.
`disabled` - выключена. Если включена, то будет выключена. Если удалена в корзину, то будет восстановлена из корзины и выключена.
`enabled` - включена. Если выключена, то будет включена. Если удалена в корзину, то будет восстановлена из корзины и включена.
`present` - существует и не удалена. Если удалена в корзину, то будет восстановлена из корзины.
`started` - запущена. Если остановлена, то будет запущена. Если удалена в корзину, то будет восстановлена из корзины и запущена.
`stopped` - остановлена. Если запущена, то будет остановлена. Если удалена в корзину, то будет восстановлена из корзины и остановлена.
Значение по умолчанию, если объект не найден или безвозвратно удалён: present| +| name | (string) | Имя базовой службы. Данный параметр является обязательным при создании базовой службы и при изменении если не задан `id`. | +| sshuser | (string) | Имя пользователя, который будет создан на всех виртуальных серверах базовой службы. Используется в паре с `sshkey`. | +| sshkey | (string) | SSH ключ, который будет загружен на все виртуальные сервера базовой службы. Используется в паре с `sshuser`. | +| id | (int) | Уникальный целочисленный идентификатор базовой службы. Используется для поиска, изменения и удаления базовой службы. | +| rg_id | (int) | Уникальный целочисленный идентификатор ресурсной группы базовой службы. | +| rg_name | (string) | Имя ресурсной группы базовой службы. | +| zone_id | (int) | Идентификатор зоны. | + +## Возвращаемые значения модуля decort_bservice + +Модуль decort_bservice возвращает информацию о базовой службе в виде словаря facts со следующими ключами: + + +|Ключ | Тип данных | Описание| +| ------ | ------ | ------ | +|id | int | Уникальный целочисленный идентификатор базовой службы.| +|name | string | Имя базовой службы.| +| techStatus | string | Технический статус базовой службы. | +|state | string | Статус базовой службы.| +| rg_id | int | Уникальный целочисленный идентификатор ресурсной группы, в которой находится базовая служба.| +| account_id | int | Уникальный целочисленный идентификатор аккаунта, в котором находится ресурсная группа.| +| groups | list | Список словарей с информацией о группах базовой службы.| +| zone_id | int | Идентификатор зоны. | + + +## Пример использования модуля 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 +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_disk.md b/12.0.0/модуль-decort_disk.md new file mode 100644 index 0000000..badab4c --- /dev/null +++ b/12.0.0/модуль-decort_disk.md @@ -0,0 +1,1430 @@ +# Модуль decort_disk +## Обзор модуля decort_disk + +Модуль **decort_disk** предназначен для выполнения следующих действий над дисками: +- **создать** (см. [примеры](#создать)) + - **с указанием описания** (см. [параметр description](#description) и [примеры](#с-указанием-описания)) + - **c указанием СХД** (см. [параметр sep_id](#sep_id) и [примеры](#с-указанием-схд)) + - **с указанием СХД и пула** (см. [параметр sep_id](#sep_id) и [параметр pool](#pool) и [примеры](#с-указанием-схд-и-пула)) +- **удалить** (см. [примеры](#удалить)) + - **в корзину** (см. [параметр state](#state) и [примеры](#в-корзину)) + - **безвозвратно** (см. [параметр state](#state) и [параметр permanently](#permanently) и [примеры](#безвозвратно)) +- **восстановить из корзины** (см. [параметр state](#state) и [примеры](#восстановить-из-корзины)) +- **изменить** (см. [примеры](#изменить)) + - **имя** (см. [параметр name](#param_name) и [примеры](#имя)) + - **размер** (см. [параметр size](#size) и [примеры](#размер)) + - **лимиты ввода/вывода** (см. [параметр limitIO](#limitIO) и [примеры](#лимиты-вводавывода)) + - **политику хранения** (см. [параметр storage_policy_id](#storage_policy_id) и [примеры](#политику-хранения)) + - **включить/отключить общий доступ** (см. [параметр shareable](#shareable) и [примеры](#включитьотключить-общий-доступ)) + +## Параметры модуля decort_disk +Ниже приведен список параметров для модуля **decort_disk** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + account_id + + + (int) + + Уникальный целочисленный идентификатор аккаунта, которому принадлежит данный диск. +
При идентификации диска по имени (см. параметр name) должен быть задан либо идентификатор, либо имя аккаунта (см. параметр account_name). +
Если одновременно заданы и account_id, и account_name, то account_name игнорируется. +
+ + account_name + + + (str) + + Имя аккаунта, которому принадлежит данный диск. +
При идентификации диска по имени (см. параметр name) должно быть задано либо имя, либо идентификатор учётной записи (см. параметр account_id). +
Если одновременно заданы и account_id, и account_name, то account_name игнорируется. +
+ + description + + + (str) + + Текстовое описание диска. +
Данный параметр является опциональным и учитывается только при создании диска, а при всех прочих операциях игнорируется. +
+ + id + + + (int) + + Уникальный целочисленный идентификатор диска. +
Соответствующий диск должен существовать (таким образом, с помощью id нельзя создать новый диск, а только управлять уже имеющимися). +
Если задан данный параметр, то параметры name, account_name и account_id игнорируются. +
+ + force_detach + + + (bool) +
Default: false +
+ Задаёт поведение платформы при попытке удалить диск, подключённый к виртуальной машине. +
По умолчанию, удаление подключённых дисков не разрешается, и попытка удалить такой диск приведёт к аварийному завершению модуля. +
Чтобы изменить это поведение, явно установите force_detach: true. +
+ + limitIO + + + (dict) + + Параметр, позволяющий ограничить скорость ввода/вывода диска как в iops, так и в байтах в секунду. +
Обратите внимание, что параметры с total не задаются вместе с read/write. +
+ read_bytes_sec + + + (int) + +
+ read_bytes_sec_max + + + (int) + +
+ read_iops_sec + + + (int) + +
+ read_iops_sec_max + + + (int) + +
+ size_iops_sec + + + (int) + +
+ total_bytes_sec + + + (int) + +
+ total_bytes_sec_max + + + (int) + +
+ total_iops_sec + + + (int) + +
+ total_iops_sec_max + + + (int) + +
+ write_bytes_sec + + + (int) + +
+ write_bytes_sec_max + + + (int) + +
+ write_iops_sec + + + (int) + +
+ write_iops_sec_max + + + (int) + +
+ + name + + + (str) + + Имя диска. +
Для идентификации диска требуется либо его name и информация об аккаунте (account_id или account_name), которому принадлежит диск, либо его id. +
+ + permanently + + + (bool) +
Default: false +
+ Параметр, использующийся при удалении диска. +
При значении true - диск удалится навсегда, а при false - попадёт в корзину. +
+ + place_with + + + (int) + + Идентификатор образа диска, из которого следует взять параметр sep_id, чтобы разместить данный диск на той же системе хранения данных, что и указанный образ диска. +
Данный параметр является опциональным и используется только на стадии создания диска. +
Если задан place_with, то sep_id игнорируется. +
+ + pool + + + (str) + + Название пула на системе хранения данных, в рамках которой следует создать данный диск. +
Этот параметр используется только на стадии создания диска и игнорируется при операциях над уже существующими дисками. +
Параметр является опциональным, если не задан, то платформа будет использовать пул, который сконфигурирован на целевой системе хранения как пул по умолчанию. +
+ + sep_id + + + (int) + + Идентификатор системы хранения данных (Storage End-point). +
Данный параметр определяет систему хранения данных, на ресурсах которой создаётся диск. +
Используется только при создании диска и игнорируется при прочих операциях. +
Альтернативой данному параметру является place_with, позволяющий разместить диск на той же системе хранения, что и указанный образ диска, на базе которого создаётся виртуальная машина. +
+ + shareable + + + (bool) +
Default: false +
+ Включение/отключение общего доступа к диску. +
+ + size + + + (int) + + Размер диска в ГБ. +
Этот параметр является обязательным при создании диска. +
Если он задан для уже существующего диска, а текущий размер диска меньше заданного, то будет предпринята попытка увеличить размер диска. +
При прочих операциях данный параметр игнорируется. +
+ + state + + + (str) +
Значения: +
present +
absent +
Default: present +
+ Целевое состояние диска. +
+ + storage_policy_id + + + (int) + + Идентификатор политики хранения. +
Обязателен при создании. +
+ +## Возвращаемые значения модуля decort_disk +Модуль **decort_disks** возвращает информацию о диске в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_name + + str + + Имя аккаунта. +
+ account_id + + int + + Идентификатор аккаунта. +
+ acl + + dict + +
+ blkdiscard + + bool + + true - unmap +
false - ignore +
+ block_size + + str + + Размер блока. +
+ cache_mode + + str + + Режим кеширования диска +
+ created_by + + str + + Имя пользователя, создавшего диск. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str | null + + Имя пользователя, удалившего диск. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int | null + + Unix-время удаления. +
+ description + + str + + Описание. +
+ destruction_datetime + + str | null + + Дата и время уничтожения. +
+ destruction_timestamp + + int | null + + Unix-время уничтожения. +
+ device_name + + str | null + + Имя устройства. +
+ grid_id + + int + + Идентификатор ЦОД. +
+ id + + int + + Идентификатор. +
+ image_id + + int + + Идентификатор образа. +
+ image_ids + + list[int] + + Идентификаторы образов. +
+ independent + + bool + + Является ли диск независимым. +
+ io_tune + + dict[str, int | null] + + Словарь, описывающий текущие ограничения ввода/вывода диска. +
+ read_bytes_sec + + int | null +
+ read_bytes_sec_max + + int | null +
+ read_iops_sec + + int | null +
+ read_iops_sec_max + + int | null +
+ size_iops_sec + + int | null +
+ total_bytes_sec + + int | null +
+ total_bytes_sec_max + + int | null +
+ total_iops_sec + + int | null +
+ total_iops_sec_max + + int | null +
+ write_bytes_sec + + int | null +
+ write_bytes_sec_max + + int | null +
+ write_iops_sec + + int | null +
+ write_iops_sec_max + + int | null +
+ milestones + + int + + Идентификатор состояния диска. +
+ name + + str + + Название. +
+ params + + str + + Параметры. +
+ parent_id + + int + + Идентификатор родителя. +
+ present_to + + dict[str, int] + + Словарь, описывающий, к каким узлам подключён диск. Ключом является идентификатор узла, а значением - количество подключений диска к этому узлу. +
+ provision + + str + + Способ выделения физического пространства. +
+ purge_datetime + + str | null + + Дата и время безвозвратного удаления. +
+ purge_timestamp + + int | null + + Unix-время безвозвратного удаления. +
+ replication + + dict[str, any] + + Словарь, описывающий репликацию диска. +
+ disk_id + + int + + Идентификатор диска. +
+ pool_id + + str + + Идентификатор пула. +
+ role + + str + + Роль. +
+ self_volume_id + + str + +
+ storage_id + + str + + Идентификатор хранилища. +
+ volume_id + + str + +
+ res_id + + str + + Идентификатор ресурса. +
+ res_name + + str + + Имя ресурса. +
+ role + + str + + Роль. +
+ sep_id + + int + + Идентификатор СХД. +
+ sep_pool_name + + str + + Название пула СХД. +
+ sep_type + + str + + Тип СХД. +
+ shared + + bool + + Предоставлен ли общий доступ к диску. +
+ size_available_gb + + int + + Доступный объем в ГБ. +
+ size_max_gb + + int + + Максимальный объем в ГБ. +
+ size_used_gb + + int + + Используемый объем в ГБ. +
+ snapshots + + list[dict[str, any]] + + Снимки. +
+ guid + + str + + Идентификатор снимка. +
+ label + + str + + Имя снимка. +
+ reference_id + + str + +
+ res_id + + str + + Идентификатор ресурса. +
+ snapshot_set_guid + + str + +
+ snapshot_set_datetime + + str | null + + Дата и время создания набора снимков. +
+ snapshot_set_timestamp + + int + + Unix-время создания набора снимков. +
+ timestamp + + int + + Unix-время создания. +
+ status + + str + + Статус. +
+ storage_policy_id + + int + + Идентификатор политики хранения. +
+ tech_status + + str + + Технический статус. +
+ to_clean + + bool + + Диск помечен для очистки после удаления. +
+ updated_by + + str | null + + Пользователь, обновивший диск. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int | null + + Unix-время обновления. +
+ vms + + dict[str, str] + + Словарь, описывающий ВМ, к которым подключен диск. Ключом является идентификатор ВМ, а значением - имя ВМ. +
+ +## Примеры использования + +### Создать +#### С указанием описания +``` +- name: Example + hosts: localhost + tasks: + - name: Create disk with description + decort_disk: + # Параметры для авторизации упущены + account_id: "{{ account_id }}" + name: "{{ disk_name }}" + size: "{{ disk_size }}" + storage_policy_id: "{{ storage_policy_id }}" + description: "{{ disk_description }}" +``` + +#### С указанием СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Create disk with sep + decort_disk: + # Параметры для авторизации упущены + account_id: "{{ account_id }}" + name: "{{ disk_name }}" + size: "{{ disk_size }}" + storage_policy_id: "{{ storage_policy_id }}" + sep_id: "{{ sep_id }}" +``` + +#### С указанием СХД и пула +``` +- name: Example + hosts: localhost + tasks: + - name: Create disk with sep and pool + decort_disk: + # Параметры для авторизации упущены + account_id: "{{ account_id }}" + name: "{{ disk_name }}" + size: "{{ disk_size }}" + storage_policy_id: "{{ storage_policy_id }}" + sep_id: "{{ sep_id }}" + pool: "{{ sep_pool_name }}" +``` + +### Удалить +#### В корзину +``` +- name: Example + hosts: localhost + tasks: + - name: Delete + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + state: absent +``` + +#### Безвозвратно +``` +- name: Example + hosts: localhost + tasks: + - name: Delete permanently + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + permanently: true + state: absent +``` + +### Восстановить из корзины +``` +- name: Example + hosts: localhost + tasks: + - name: Restore + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + state: present +``` + +### Изменить +#### Имя +``` +- name: Example + hosts: localhost + tasks: + - name: Change name + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + name: "{{ disk_new_name }}" +``` + +#### Размер +``` +- name: Example + hosts: localhost + tasks: + - name: Change size + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + size: "{{ disk_new_size }}" +``` + +#### Лимиты ввода/вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Change IO limits + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + limitIO: + read_bytes_sec: "{{ read_bytes_sec }}" + write_bytes_sec: "{{ write_bytes_sec }}" + read_iops_sec: "{{ read_iops_sec }}" + write_iops_sec: "{{ write_iops_sec }}" + read_bytes_sec_max: "{{ read_bytes_sec_max }}" + write_bytes_sec_max: "{{ write_bytes_sec_max }}" + read_iops_sec_max: "{{ read_iops_sec_max }}" + write_iops_sec_max: "{{ write_iops_sec_max }}" + size_iops_sec: "{{ size_iops_sec }}" +``` + +#### Политику хранения +``` +- name: Example + hosts: localhost + tasks: + - name: Change storage policy + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + storage_policy_id: "{{ disk_new_storage_policy_id }}" +``` + +#### Включить/отключить общий доступ +``` +- name: Example + hosts: localhost + tasks: + - name: Change shareable + decort_disk: + # Параметры для авторизации упущены + id: "{{ disk_id }}" + shareable: "{{ shareable }}" +``` diff --git a/12.0.0/модуль-decort_disk_list.md b/12.0.0/модуль-decort_disk_list.md new file mode 100644 index 0000000..03b705b --- /dev/null +++ b/12.0.0/модуль-decort_disk_list.md @@ -0,0 +1,1328 @@ +# Модуль decort_disk_list +## Обзор модуля + +Модуль **decort_disk_list** предназначен для получения списка доступных пользователю дисков (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_disk_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ account_name + + (str) + + По имени аккаунта. +
+ id + + (int) + + По идентификатору диска. +
+ name + + (str) + + По имени диска. +
+ rg_id + + (int) + + По идентификатору ресурсной группы. +
+ sep_id + + (int) + + По идентификатору СХД. +
+ sep_pool_name + + (str) + + По названию пула СХД. +
+ shared + + (bool) + + Предоставлен ли общий доступ к диску. +
+ disk_max_size_gb + + (int) + + По максимальному размеру диска. +
+ status + + (str) +
Значения: +
ASSIGNED +
MODELED +
CREATING +
CREATED +
ALLOCATED +
UNALLOCATED +
DESTROYED +
DELETED +
PURGED +
ROLLBACK +
BACKUP_RUNNING +
MIGRATING +
MERGE +
CLONING +
SNAPCREATE +
REPLICATION +
+ По статусу. +
+ storage_policy_id + + (int) + + По идентификатору политики хранения. +
+ vm_id + + (int) + + По идентификатору ВМ. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_disk_list** возвращает информацию о доступных дисках в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_name + + str + + Имя аккаунта. +
+ account_id + + int + + Идентификатор аккаунта. +
+ acl + + dict + +
+ blkdiscard + + bool + + true - unmap +
false - ignore +
+ block_size + + str + + Размер блока. +
+ cache_mode + + str + + Режим кеширования диска +
+ created_by + + str + + Имя пользователя, создавшего диск. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str | null + + Имя пользователя, удалившего диск. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int | null + + Unix-время удаления. +
+ description + + str + + Описание. +
+ destruction_datetime + + str | null + + Дата и время уничтожения. +
+ destruction_timestamp + + int | null + + Unix-время уничтожения. +
+ device_name + + str | null + + Имя устройства. +
+ grid_id + + int + + Идентификатор ЦОД. +
+ id + + int + + Идентификатор. +
+ image_id + + int + + Идентификатор образа. +
+ image_ids + + list + + Идентификаторы образов. +
+ independent + + bool + + Является ли диск независимым. +
+ io_tune + + dict + + Словарь, описывающий текущие ограничения ввода/вывода диска. +
+ read_bytes_sec + + int | null +
+ read_bytes_sec_max + + int | null +
+ read_iops_sec + + int | null +
+ read_iops_sec_max + + int | null +
+ size_iops_sec + + int | null +
+ total_bytes_sec + + int | null +
+ total_bytes_sec_max + + int | null +
+ total_iops_sec + + int | null +
+ total_iops_sec_max + + int | null +
+ write_bytes_sec + + int | null +
+ write_bytes_sec_max + + int | null +
+ write_iops_sec + + int | null +
+ write_iops_sec_max + + int | null +
+ milestones + + int + + Идентификатор состояния диска. +
+ name + + str + + Название. +
+ params + + str + + Параметры. +
+ parent_id + + int + + Идентификатор родителя. +
+ present_to + + dict + + Словарь, описывающий, к каким узлам подключён диск. Ключом является идентификатор узла, а значением - количество подключений диска к этому узлу. +
+ provision + + str + + Способ выделения физического пространства. +
+ purge_datetime + + str | null + + Дата и время безвозвратного удаления. +
+ purge_timestamp + + int | null + + Unix-время безвозвратного удаления. +
+ replication + + dict + + Словарь, описывающий репликацию диска. +
+ disk_id + + int + + Идентификатор диска. +
+ pool_id + + str + + Идентификатор пула. +
+ role + + str + + Роль. +
+ self_volume_id + + str + +
+ storage_id + + str + + Идентификатор хранилища. +
+ volume_id + + str + +
+ res_id + + str + + Идентификатор ресурса. +
+ res_name + + str + + Имя ресурса. +
+ role + + str + + Роль. +
+ sep_id + + int + + Идентификатор СХД. +
+ sep_pool_name + + str + + Название пула СХД. +
+ sep_type + + str + + Тип СХД. +
+ shared + + bool + + Предоставлен ли общий доступ к диску. +
+ size_available_gb + + int + + Доступный объем в ГБ. +
+ size_max_gb + + int + + Максимальный объем в ГБ. +
+ size_used_gb + + int + + Используемый объем в ГБ. +
+ snapshots + + list + + Снимки. +
+ guid + + str + + Идентификатор снимка. +
+ label + + str + + Имя снимка. +
+ reference_id + + str + +
+ res_id + + str + + Идентификатор ресурса. +
+ snapshot_set_guid + + str + +
+ snapshot_set_datetime + + str | null + + Дата и время создания набора снимков. +
+ snapshot_set_timestamp + + int + + Unix-время создания набора снимков. +
+ timestamp + + int + + Unix-время создания. +
+ status + + str + + Статус. +
+ storage_policy_id + + int + + Идентификатор политики хранения. +
+ tech_status + + str + + Технический статус. +
+ to_clean + + bool + + Диск помечен для очистки после удаления. +
+ updated_by + + str | null + + Пользователь, обновивший диск. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int | null + + Unix-время обновления. +
+ vm_id + + int | null + + (устаревшее) +
+ vm_name + + str | null + + (устаревшее) +
+ vms + + dict + + Словарь, описывающий ВМ, к которым подключен диск. Ключом является идентификатор ВМ, а значением - имя ВМ. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по имени аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + account_name: "{{ account_name }}" +``` + +### С фильтрацией по максимальному размеру диска +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + disk_max_size_gb: "{{ disk_max_size_gb }}" +``` + +### С фильтрацией по идентификатору диска +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по имени диска +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по названию пула СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + sep_pool_name: "{{ pool_name }}" +``` + +### С фильтрацией по идентификатору ресурсной группы +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + rg_id: "{{ rg_id }}" +``` + +### С фильтрацией по идентификатору СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + sep_id: "{{ sep_id }}" +``` + +### С фильтрацией по общему доступу к диску +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + shared: false +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по идентификатору политики хранения +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + storage_policy_id: "{{ storage_policy_id }}" +``` + +### С фильтрацией по идентификатору ВМ +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + filter: + vm_id: "{{ vm_id }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks + decort_disk_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get user disks info sorted by id + decort_disk_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_flip_group_list.md b/12.0.0/модуль-decort_flip_group_list.md new file mode 100644 index 0000000..84518b2 --- /dev/null +++ b/12.0.0/модуль-decort_flip_group_list.md @@ -0,0 +1,574 @@ +# Модуль decort_flip_group_list +## Обзор модуля + +Модуль **decort_flip_group_list** предназначен для получения списка доступных пользователю групп с плавающим IP-адресом (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_flip_group_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ client_ids + + (list[int]) + + По идентификаторам клиентов. +
+ conn_id + + (int) + + По идентификатору соединения. +
+ ext_net_id + + (int) + + По идентификатору внешней сети. +
+ id + + (int) + + По идентификатору. +
+ ip_addr + + (str) + + По IP-адресу. +
+ name + + (str) + + По имени. +
+ status + + (str) +
Значения: +
CREATED +
DESTROYED +
+ По статусу. +
+ vins_id + + (int) + + По идентификатору внутренней сети. +
+ vins_name + + (str) + + По имени внутренней сети. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_flip_group_list** возвращает информацию о доступных группах с плавающим IP-адресом в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ client_ids + + list[int] + + Список идентификаторов клиентов. +
+ client_type + + str + + Тип клиентов. +
+ conn_id + + int + + Идентификатор соединения. +
+ conn_type + + str + + Тип соединения. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ description + + str + + Описание. +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ ip_addr + + str + + IP-адрес. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя. +
+ net_id + + int + + Идентификатор сети. +
+ net_prefix + + int + + Длина сетевого префикса. +
+ net_type + + str + + Тип сети. +
+ status + + str + + Статус. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по идентификаторам клиентов +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + client_ids: "{{ client_ids }}" +``` + +### С фильтрацией по идентификатору соединения +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + conn_id: "{{ conn_id }}" +``` + +### С фильтрацией по идентификатору внешней сети +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + ext_net_id: "{{ ext_net_id }}" +``` + +### С фильтрацией по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по IP-адресу +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + ip_addr: "{{ ip_addr }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по идентификатору внутренней сети +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + vins_id: "{{ vins_id }}" +``` + +### С фильтрацией по имени внутренней сети +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + filter: + vins_name: "{{ vins_name }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups + decort_flip_group_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get flip groups sorted by id + decort_flip_group_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_group.md b/12.0.0/модуль-decort_group.md new file mode 100644 index 0000000..bddcd99 --- /dev/null +++ b/12.0.0/модуль-decort_group.md @@ -0,0 +1,101 @@ +# Модуль decort_group +## Обзор модуля decort_group +Модуль **decort_group** позволяет производить следующие действия над группами базовой службы: +- создать +- получить информацию +- запустить/остановить +- подключить/отключить сети (для существующей группы только внутренние сети) +- изменить + - имя + - объём загрузочного диска + - количество ВМ + - роль + - количество виртуальных процессоров + - объём ОЗУ + - чипсет +- удалить (безвозвратно) + +## Параметры модуля decort_group +Ниже приведен список параметров для модуля **decort_group** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +| ------ | ------ | ------ | +| account_id | (int) | Идентификатор аккаунта. При идентификации диска по имени (см. параметр `name`) должен быть задан либо идентификатор, либо имя аккаунта (см. параметр `account_name`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. | +| account_name | (string) | Имя аккаунта. При идентификации диска по имени (см. параметр `name`) должно быть задано либо имя, либо идентификатор аккаунта (см. параметр `account_id`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. | +| boot_disk | (int) | Обьём загрузочного диска. | +| bservice_id | (int) | Идентификатор базовой службы. Обязательный параметр. | +| chipset | (string)
Значения:
`Q35`
`i440fx` | Эмулируемый чипсет.
Значение по умолчанию, если объект не найден или безвозвратно удалён: `Q35`. | +| count | (int) | Количество виртуальных машин. | +| cpu | (int) | Количество виртуальных процессоров. | +| id | (int) | Идентификатор группы. | +| image_id | (int) | Идентификатор образа. | +| name | (str) | Имя группы.
Используется для идентификации группы, если не задан параметр `id`, а также для переименования группы, если параметр `id` задан. | +| networks | (list) | Список словарей, описывающих сети, которые должны быть подключены.
Ключи словаря:
• `type` (string) (обязательный) - тип сети; значения: `VINS` (внутренняя) или `EXTNET` (внешняя)
• `id` (int) (обязательный) - идентификатор сети | +| ram | (int) | Объём оперативной памяти. | +| role | (string) | Тег роли. | +| state | (str)
Значения:
`present`
`absent`
`started`
`stopped`
`check`
Default: `present` | +| storage_policy_id | (int) | Идентификатор политики хранения. Обязателен при создании. Не поддерживается изменение в существующей группе. | +| timeoutStart | (int) | Время отсрочки запуска группы после создания в секундах. | + +## Возвращаемые значения модуля decort_group + +Модуль **decort_group** возвращает информацию о диске в виде словаря facts со следующими ключами: + + +|Ключ | Тип данных | Описание| +| ------ | ------ | ------ | +| account_id | int | Идентификатор аккаунта. | +| Computes | list | Список словарей, содержащих информацию о виртуальных машинах группы.
Ключи словаря:
• `chipset` (str) - эмулируемый чипсет
• `id` (int) - идентификатор ВМ
• `ipAddresses` (list) - список IP-адресов ВМ
• `name` (str) - имя ВМ
• `osUsers` (list) - список словарей, содержащих учётные данные пользователей ОС ВМ по умолчанию; ключи: `login` (str) и `password` (str) | +| driver | string | Драйвер.| +| id | int | Идентификатор группы.| +| name | string | Имя группы.| +| rg_id | int | Идентификатор ресурсной группы. | +| state | string | Состояние группы. | +| techStatus | string | Технический статус группы. | + +## Пример использования модуля decort_group + +Данный пример создаёт группу с именем `test_group`. +``` +- hosts: localhost + tasks: + - name: Create BS group + decort_group: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + boot_disk: 10 + bservice_id: 1823 + controller_url: "https://ds1.digitalenergy.online" + count: 2 + cpu: 2 + image_id: 518 + name: test_group + networks: + - type: VINS + id: 1987 + oauth2_url: "https://sso.digitalenergy.online" + ram: 2 + verify_ssl: false + chipset: Q35 + register: group_test +``` + +Данный пример удаляет группу с именем `test_group`. + +``` +- hosts: localhost + tasks: + - name: Delete BS group + decort_group: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + bservice_id: 1823 + controller_url: "https://ds1.digitalenergy.online" + name: test_group + oauth2_url: "https://sso.digitalenergy.online" + state: absent + verify_ssl: False + register: group_test +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_image.md b/12.0.0/модуль-decort_image.md new file mode 100644 index 0000000..5aa6a14 --- /dev/null +++ b/12.0.0/модуль-decort_image.md @@ -0,0 +1,153 @@ +# Модуль decort_image +## Обзор модуля decort_image + +Модуль decort_image предназначен для выполнения следующих действий над образами, созданными в облачной платформе DECORT: +- шаблонные образы: + - создать + - получить информацию + - изменить + - имя + - политику хранения + - удалить +- виртуальные образы + - создать + - получить информацию + - изменить + - имя + - целевой образ + - удалить + +## Параметры модуля decort_image +Ниже приведен список параметров для модуля **decort_image** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +| ------ | ------ | ------ | +| account_id | (int) | Идентификатор аккаунта. Используется для поиска образов, а также для их создания. | +| account_name | (string) | Имя аккаунта. Используется для получения уникального целочисленного идентификатора аккаунта. | +| boot | (dict) | Параметры загрузки.
Ключи словаря:
• `mode` (str) - режим загрузки, значения: `bios`, `uefi`, значение по умолчанию, если объект не найден или удалён: `bios`;
• `loader_type` (str) - тип загрузчика операционной системы, значения: `linux`, `windows`, `unknown`, значение по умолчанию, если объект не найден или удалён: `unknown`. | +| hot_resize | (bool) | Поддержка изменения объёма ОЗУ и количества процессоров у запущенных ВМ, созданных на основе образа.
Значение по умолчанию, если объект не найден или удалён: `false`. | +| image_id | (int) | Идентификатор шаблонного образа. +| image_name | (str) | Имя шаблонного образа. +| image_password | (string) | Опциональный пароль для образа. Используется при создании образа.| +| image_username | (string) | Опциональное имя пользователя для образа. Используется при создании образа. | +| network_interface_naming | (string)
Значения:
`ens`
`eth`| Шаблон именования сетевых интерфейсов в ОС Linux.
Значение по умолчанию, если объект не найден или удалён: `ens`. | +| passwordDL | (string) | Пароль для скачивания по URL-адресу. Используется при создании образа. | +| pool | (str) | Имя пула СХД. Используется для поиска существующего образа. +| poolName | (string) | Имя пула СХД. Используется при создании образа. | +| sepId | (integer) | Уникальный целочисленный идентификатор СХД. Используется при создании образа. | +| sep_id | (int) | Идентификатор СХД. Используется для поиска существующего образа. +| state | (string)
Значения:
`present`
`absent`
Default: `present` | Целевое состояние образа. `present` - существует, `absent` - удалён. | +| storage_policy_id | (int) | Идентификатор политики хранения. Используется только для шаблонного образа.
Обязателен при создании. | +| url | (string) | URL-адрес, с которого будет загружен образ. Используется при создании образа.| +| usernameDL | (string) | Имя пользователя для загрузки образа с заданного URL-адреса. Используется при создании образа. | +| virt_id | (integer) | Уникальный целочисленный идентификатор виртуального образа. Может использоваться для получения информации о виртуальном образе, а также для привязки к нему другого образа.| +| virt_name | (string) | Имя виртуального образа. Используется для получения `virt_id`, а в последствии информации о виртуальном образе, а также для создания виртуального образа и привязки к нему другого образа.| + + +## Возвращаемые значения модуля decort_image + +Модуль decort_image возвращает информацию об образе в виде словаря facts со следующими ключами: + + +| Ключ | Тип данных | Описание | +| ------ | ------ | ------ | +| accountId | int | Идентификатор аккаунта. | +| boot_mode | string | Режим загрузки. | +| boot_loader_type | string | Тип загрузчика операционной системы. | +| hot_resize | bool | Поддержка изменения объёма ОЗУ и количества процессоров у запущенной ВМ. | +| id | int | Уникальный целочисленный идентификатор данного образа. | +| independent | bool | Является ли образ независимым. | +| linkto | int | Уникальный целочисленный идентификатор образа, который привязан к данному виртуальному. | +| links_to | list[int] | Идентификаторы образов, связанных с данным MULTI-образом. | +| name | string | Имя образа. | +| network_interface_naming | string | Шаблон именования сетевых интерфейсов в ОС Linux. | +| pool | string | Имя пула на системе хранения данных, в котором находится данный образ.| +| sep_id | int | Идентификатор системы хранения данных, на которой хранится данный образ. | +| size | int | Размер образа в ГБ. | +| state | string | Текущий статус образа. | +| storage_policy_id | int | Идентификатор политики хранения. | +| to_clean | bool | Образ помечен для очистки после удаления. | +| type | string | Тип образа. | + + +## Пример использования модуля decort_image + + +Пример создания шаблонного образа с операционной системой Alpine Linux. +``` + - name: Create template image + decort_image: + account_id: 12345 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + controller_url: "https://ds1.digitalenergy.online" + image_name: alpine_linux_3.19.1 + url: https://dl-cdn.alpinelinux.org/alpine/v3.19/releases/cloud/nocloud_alpine-3.19.1-x86_64-uefi-cloudinit-r0.qcow2 + verify_ssl: false + boot: + mode: uefi + loader_type: linux + network_interface_naming: eth + hot_resize: true + storage_policy_id: 1 + register: osimage +``` + +Пример получения информации о существующем шаблонном образе по его имени. + +``` + - name: Get template image + decort_image: + account_id: 12345 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + controller_url: "https://ds1.digitalenergy.online" + image_name: alpine_linux_3.19.1 + verify_ssl: false + register: osimage +``` + +Пример создания виртуального образа. Также в случае, если виртуальный образ уже существует, но к нему привязан другой шаблонный образ, он привяжет к себе указанный в примере шаблонный образ. + +``` + - name: Create virtual image + decort_image: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + controller_url: "https://ds1.digitalenergy.online" + account_id: 12345 + image_name: alpine_linux_3.19.1 + virt_name: alpine_last + register: osimage +``` +Обратите внимание, что в данном примере можно использовать как `image_name`, так и `image_id`. Также можно использовать либо `virt_name`, либо `virt_id`. + +Пример переименования образа. + +``` + - name: Rename template image + decort_image: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + controller_url: "https://ds1.digitalenergy.online" + image_name: alpine_linux_3.19.1_new_name + image_id: 54321 + register: osimage +``` + +Пример удаления образа + +``` + - name: Delete image + decort_image: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + controller_url: "https://ds1.digitalenergy.online" + image_id: 54321 + state: absent +``` diff --git a/12.0.0/модуль-decort_image_list.md b/12.0.0/модуль-decort_image_list.md new file mode 100644 index 0000000..a60a9ec --- /dev/null +++ b/12.0.0/модуль-decort_image_list.md @@ -0,0 +1,700 @@ +# Модуль decort_image_list +## Обзор модуля + +Модуль **decort_image_list** предназначен для получения списка доступных пользователю образов (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_image_list** (за исключением [общих параметров авторизации](./введение.md#общие-параметры-модулей-для-авторизации)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ bootable + + (bool) + + По признаку является ли образ загрузочным. +
+ id + + (int) + + По идентификатору. +
+ enabled + + (bool) + + По признаку включён ли образ +
+ hot_resize + + (bool) + + По признаку поддерживает ли образ изменение объёма ОЗУ и количества процессоров у запущенных ВМ, созданных на основе образа. +
+ size_gb + + (int) + + По объёму образа в ГБ. +
+ name + + (str) + + По имени. +
+ public + + (bool) + + По признаку общедоступен ли образ. +
+ sep_id + + (int) + + По идентификатору СХД. +
+ sep_name + + (str) + + По имени СХД. +
+ sep_pool_name + + (str) + + По названию пула СХД. +
+ status + + (str) +
Значения: +
CREATED +
CREATING +
DESTROYED +
MODELED +
PURGED +
+ По статусу. +
+ type + + (str) +
Значения: +
CDROM +
LINUX +
UNKNOWN +
VIRTUAL +
WINDOWS +
+ По типу. +
+ storage_policy_id + + (int) + + По идентификатору политики хранения. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_image_list** возвращает информацию о доступных ресурсных группах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ boot_loader_type + + str | null + + Тип загрузчика операционной системы. +
+ boot_mode + + str | null + + Режим загрузки. +
+ bootable + + bool + + Является ли образ загрузочным. +
+ cdrom + + bool + + Является ли CD-ROM-образом. +
+ description + + str + + Описание. +
+ drivers + + list[str] + + Поддерживаемые драйвера. +
+ hot_resize + + bool + + Поддержка изменения объёма ОЗУ и количества процессоров у запущенных ВМ, созданных на основе образа. +
+ id + + int + + Идентификатор. +
+ link_to + + int + + Идентификатор целевого образа, к которому привязан данный виртуальный образ. +
+ name + + str + + Имя. +
+ network_interface_naming + + str + + Шаблон именования сетевых интерфейсов в ОС Linux. +
+ os_user_name + + str | null + + Имя пользователя в ОС. +
+ sep_id + + int + + Идентификатор СХД. +
+ sep_pool_name + + str + + Название пула СХД. +
+ size_gb + + int + + Объем образа в ГБ. +
+ status + + str + + Статус. +
+ storage_policy_id + + int + + Идентификатор политики хранения. +
+ type + + str + + Тип. +
+ virtual + + bool | null + + Является ли образ виртуальным. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по признаку является ли образ загрузочным.. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + bootable: true +``` + +### С фильтрацией по идентификатору. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по признаку включён ли образ. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + enabled: true +``` + +### С фильтрацией по признаку поддерживает ли образ изменение запущенных ВМ, созданных на основе образа. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + hot_resize: true +``` + +### С фильтрацией по объёму образа в ГБ. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + size_gb: "{{ size_gb }}" +``` + +### С фильтрацией по имени. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по признаку общедоступен ли образ. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + public: "{{ public }}" +``` + +### С фильтрацией по идентификатору СХД. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + sep_id: "{{ sep_id }}" +``` + +### С фильтрацией по имени СХД. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + sep_name: "{{ sep_name }}" +``` + +### С фильтрацией по названию пула СХД. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + sep_pool_name: "{{ sep_pool_name }}" +``` + +### С фильтрацией по статусу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по типу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + type: "{{ type }}" +``` + +### С фильтрацией по идентификатору политики хранения. +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + filter: + storage_policy_id: "{{ storage_policy_id }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get images + decort_image_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get images sorted by id + decort_image_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_jwt.md b/12.0.0/модуль-decort_jwt.md new file mode 100644 index 0000000..a38b9f3 --- /dev/null +++ b/12.0.0/модуль-decort_jwt.md @@ -0,0 +1,48 @@ +# Модуль decort_jwt +## Обзор модуля +Модуль **decort_jwt** предназначен для получения авторизационного токена JWT (JSON Web Token). Данный модуль может быть полезен при массовом создании ресурсов (например, виртуальных машин), так как позволяет оптимизировать количество API вызовов для получения токена. + +По сути, данный модуль является провайдером информации и не управляет облачными ресурсами (всегда возвращает `changed: False`). + +## Параметры модуля decort_jwt +Список параметров для модуля **decort_jwt** почти полностью совпадает с [общими параметрами модулей для авторизации](./введение.md#общие-параметры-модулей-для-авторизации). + +Отличия от общих параметров: +- Параметр `controller_url` не используется. +- Параметр `jwt` не используется. +- В параметре `authenticator` не используется значение `jwt`. + +## Возвращаемые значения модуля decort_jwt +| Ключ | Тип данных | Описание | +|---| ------ | ------ | +| jwt | str | JWT токен. | + +## Примеры использования +### Пример получения JWT токена с помощью DECS3O +``` +- name: Example + hosts: localhost + tasks: + - name: Obtain JWT from DECS3O + decort_jwt: + app_id: "{{ app_id }}" + app_secret: "{{ app_secret }}" + authenticator: decs3o + oauth2_url: https://sso-dynamix.local +``` + +### Пример получения JWT токена с помощью BVS +``` +- name: Example + hosts: localhost + tasks: + - name: Obtain JWT from BVS + decort_jwt: + app_id: "{{ app_id }}" + app_secret: "{{ app_secret }}" + authenticator: bvs + oauth2_url: https://bvs.local + domain: dynamix + username: "{{ username }}" + password: "{{ password }}" +``` diff --git a/12.0.0/модуль-decort_k8s.md b/12.0.0/модуль-decort_k8s.md new file mode 100644 index 0000000..473de1f --- /dev/null +++ b/12.0.0/модуль-decort_k8s.md @@ -0,0 +1,888 @@ +# Модуль decort_k8s +## Обзор модуля decort_k8s + +Модуль **decort_k8s** предназначен для выполнения следующих действий над кластерами Kubernetes: +- создать +- получить информацию +- выключить/включить/остановить/запустить +- изменить группы Worker-узлов +- изменить имя кластера +- удалить (в корзину или безвозвратно) +- восстановить из корзины +- изменить зону +- изменить описание + +## Параметры модуля decort_k8s +Ниже приведен список параметров для модуля **decort_k8s** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +| ------ | ------ | ------ | +| account_id | (int) | Идентификатор аккаунта. | +| account_name | (string) | Имя аккаунта. | +| additionalSANs | (list) | Список дополнительных SAN (Subject Alternative Names) для использования в процессе автоматического выписывания сертификата Кластера Kubernetes. Можно использовать IP-адреса и доменные имена. +| cluster_conf | (dict) | Словарь с глобальными настройками и конфигурацией для всего кластера. Включает в себя такие настройки, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации всего кластера. | +| description | (string) | Целевое описание. | +| extnet_id | (int)
Default: `0` | Идентификатор внешней сети. Если задан `0`, то внешняя сеть выбирается автоматически. Если задан параметр `vins_id`, то значение данного параметра будет проигнорировано. Если задан `extnet_only: false`, то внешняя сеть будет подключена к создаваемой внутренней сети, а если `extnet_only: true`, то либо напрямую к каждому узлу кластера (если `with_lb: false`), либо напрямую к балансировщику нагрузки (если `with_lb: true`). | +| extnet_only | (bool)
Default: `false` | Не использовать внутреннюю сеть, подключать напрямую к внешней. | +| getConfig | (bool)
Default: `false` | Получить данные конфигурации для доступа к кластеру Kubernetes. | +| ha_lb | (bool)
Default: `false` | Использовать схему высокой доступности для создаваемого балансировщика нагрузки (если `with_lb: true`). | +| id | (int) | Идентификатор кластера Kubernetes. | +| init_conf | (dict) | Словарь для определения настроек и действий, которые должны быть выполнены перед запуском любого другого компонента в кластере. Позволяет настраивать такие процессы, как регистрация узла, настройка сети и другие задачи инициализации. +| join_conf | (dict) | Словарь для настройки поведения и параметров присоединения узла к кластеру. Включает в себя такие параметры, как control-plane-endpoint кластера, токен и certificate-key. | +| k8ci_id | (int) | Идентификатор конфигурации кластера Kubernetes. | +| kubeproxy_conf | (dict) | Словарь для настройки поведения и настроек Kube-proxy, отвечающего за сетевое проксирование и балансировку нагрузки внутри кластера. Включает в себя такие параметры, как режим прокси, диапазоны IP-адресов кластера и другие конфигурации, специфичные для Kube-proxy. | +| kublet_conf | (dict) | Словарь для настройки поведения и настроек Kubelet, который является агентом основного узла, работающим на каждом узле кластера. Включает в себя такие параметры, как IP-адрес узла, распределение ресурсов, политики вытеснения модулей и другие конфигурации, специфичные для Kubelet. | +| master_chipset | (string)
Значения:
`Q35`
`i440fx` | Эмулируемый чипсет master-узлов. Не поддерживается изменение в существующем кластере.
Значение по умолчанию, если объект не найден или безвозвратно удалён: `Q35`. | +| master_count | (int)
Значения:
`1`
`3`
`5`
`7`
Default: `1` | Количество Master-узлов. | +| master_cpu | (int)
Default: `2` | Количество виртуальных процессоров на Master-узле. | +| master_disk | (int)
Default: `10` | Объём загрузочного диска на Master-узле. | +| master_pool | (str) | Пул СХД, заданной параметром `master_sepid`. | +| master_ram | (int)
Default: `2048` | Объём оперативной памяти на Master-узле. | +| master_sepid | (int) | Идентификатор СХД для Master-узла. Если не задан, то используется СХД образа Master-узла. | +| name | (string) | Имя кластера Kubernetes. Если для существующего кластера указаны и `name`, и `id`, то параметр `name` используется для переименования. | +| network_plugin | (str)
Значения:
`flannel`
`calico`
`weavenet`
Default: `flannel` | CNI plugin (модуль для управления сетевыми интерфейсами контейнера). Возможные значения могут быть ограничены в используемой конфигурации кластера Kubernetes (параметр `k8ci_id`) | +| oidc_cert | (raw) | Сертификат X.509 для OIDC-провайдера. +| permanent | (bool)
Default: `false` | Если выполняется удаление, то выполнить безвозвратное удаление (минуя корзину). | +| rg_id | (int) | Идентификатор ресурсной группы. | +| rg_name | (str) | Имя ресурсной группы. | +| state | (str)
Значения:
`present`
`absent`
`disabled`
`enabled`
`started`
`stopped`
Default: `present` | Целевое состояние кластера.
`present` - существует и не удален. Если удален в корзину, то будет восстановлен из корзины.
`absent` - удалён в корзину или безвозвратно удалён, в зависимости от значения параметра `permanent`.
`disabled` - выключен. Если включён, то будет выключен. Если удален в корзину, то будет восстановлен из корзины и выключен.
`enabled` - включён. Если выключен, то будет включён. Если удален в корзину, то будет восстановлен из корзины и включён.
`started` - запущен. Если остановлен, то будет запущен. Если удален в корзину, то будет восстановлен из корзины и запущен.
`stopped` - остановлен. Если запущен, то будет остановлен. Если удален в корзину, то будет восстановлен из корзины и остановлен. | +| lb_sysctl | (dict) | Словарь, описывающий параметры конфигурации sysctl балансировщика нагрузки. Может быть задан только если кластер имеет балансировщик нагрузки. | +| storage_policy_id | (int) | Идентификатор политики хранения. Обязателен при создании. Не поддерживается изменение в существующем кластере. | +| vins_id | (int) | Идентификатор внутренней сети. Если не задан, то будет создана новая внутренняя сеть. Если задан, то заданная внутренняя сеть должна иметь подключение к внешней сети. Если задано `extnet_only: true`, то параметр игнорируется. +| with_lb | (bool)
Default: `true` | Создание кластера Kubernetes с размещением Master-узлов за балансировщиком нагрузки. | +| workers | (list) | Список словарей, описывающих группы Worker-узлов.
Ключи словаря:
• `annotations` (list) (необязательный) - список строк с annotations в формате: `key1=value1`; значение по умолчанию, если объект не найден: `[]`
• `chipset` (str) (необязательный) - эмулируемый чипсет. Допустимые значения: `Q35`, `i440fx`; значение по умолчанию, если объект не найден : `Q35`
• `ci_user_data` (dict) (необязательный) - конфигурация для cloud-init; значение по умолчанию, если объект не найден: `{}`
• `cpu` (int) (необязательный) - количество виртуальных процессоров на узле; значение по умолчанию, если объект не найден: `1`
• `disk` (int) (необязательный) - объём загрузочного диска на узле; если не задан при создании, размер диска будет равен размеру используемого образа
• `labels` (list) (необязательный) - список строк с labels в формате: `label1=value1`; значение по умолчанию, если объект не найден: `[]`. Метка `workersGroupName` является служебной в платформе и игнорируется при сравнении переданных меток с существующими
• `name` (string) (обязательный) - имя группы Worker-узлов
• `num` (int) (необязательный) - количество узлов; значение по умолчанию, если объект не найден: `1`
• `pool` (str) (необязательный) - пул СХД, заданной ключом `sep_id`; если не задан при создании, то пул будет выбран платформой
• `ram` (int) (необязательный) - объём оперативной памяти на узле; значение по умолчанию, если объект не найден: `1024`
• `sep_id` (int) (необязательный) - идентификатор СХД; если не задан при создании, то используется СХД образа узла
• `taints` (list) (необязательный) - список строк с taints в формате: `key1=value1:NoSchedule`; значение по умолчанию, если объект не найден: `[]`. | +| zone_id | (int) | Идентификатор зоны. | + +## Возвращаемые значения модуля decort_k8s + +Модуль **decort_k8s** возвращает информацию о кластере в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ account_name + + str + + Имя аккаунта. +
+ acl + + dict[str, list] + + Словарь со списками доступа. +
+ + account + + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей для аккаунта. +
+ access_type + + str + + Тип доступа. +
+ can_be_deleted + + bool | null + + Может ли быть удалён. +
+ explicit + + bool + + Видимость ресурсной группы. +
+ guid + + str | null + + Идентификатор. +
+ status + + str + + Статус. +
+ type + + str + + Тип. +
+ user_email + + str | null + + Адрес электронной почты. +
+ user_emails + + list[str] | null + + Список адресов электронной почты. +
+ user_name + + str + + Имя пользователя. +
+ k8s + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей для кластера. +
Структура элементов аналогична элементам списка + + account + . +
+ rg + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей для ресурсной группы. +
Структура элементов аналогична элементам списка + + account + . +
+ bservice_id + + int + + Идентификатор бизнес-сервиса. +
+ config + + str | null + + Сonfig кластера. +
+ created_by + + str + + Имя пользователя, создавшего кластер. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str | null + + Имя пользователя, удалившего кластер. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int | null + + Unix-время удаления. +
+ description + + str + + Описание. +
+ extnet_only + + bool + + Признак подключения узлов напрямую к внешней сети без использования внутренней сети. +
+ id + + int + + Идентификатор кластера. +
+ k8ci_id + + int + + Идентификатор конфигурации кластера Kubernetes. +
+ k8ci_name + + str + + Имя конфигурации кластера Kubernetes. +
+ lb_ha_ips + + dict[str, str] + + IP-адреса балансировщика нагрузки в режиме высокой доступности. +
+ backend + + str + + Виртуальный IP-адрес во внутренней сети, используемый в режиме высокой доступности. +
+ frontend + + str + + Виртуальный IP-адрес во внешней сети, используемый в режиме высокой доступности. +
+ lb_ha_mode + + bool + + Включён ли режим высокой доступности. +
+ lb_id + + int + + Идентификатор балансировщика нагрузки. +
+ name + + str + + Имя кластера. +
+ network_plugin + + str + + CNI-плагин кластера. +
+ node_groups + + dict[str, any] + + Группы узлов кластера. +
+ + master + + + dict[str, any] + + Группа Master-узлов. +
+ annotations + + list[str] | null + + Список annotations. +
+ id + + int + + Идентификатор группы. +
+ labels + + list[str] | null + + Список labels. +
+ name + + str + + Имя группы. +
+ node_boot_disk_size_gb + + int + + Объём загрузочного диска узла. +
+ node_count + + int + + Количество узлов. +
+ node_cpu_count + + int + + Количество виртуальных процессоров на узле. +
+ node_ram_size_mb + + int + + Объём оперативной памяти на узле. +
+ taints + + list[str] | null + + Список taints. +
+ vms + + list[dict[str, any]] + + Список узлов группы. +
+ ext_ip + + str | null + + Внешний IP-адрес узла. +
+ id + + int + + Идентификатор ВМ. +
+ name + + str + + Имя ВМ. +
+ status + + str + + Статус ВМ. +
+ tech_status + + str + + Технический статус ВМ. +
+ worker + + list[dict[str, any]] + + Список групп Worker-узлов. +
Структура словарей аналогична словарю + + master + . +
+ rg_id + + int + + Идентификатор ресурсной группы. +
+ rg_name + + str + + Имя ресурсной группы. +
+ status + + str + + Статус кластера. +
+ tech_status + + str + + Технический статус кластера. +
+ updated_by + + str + + Имя пользователя, обновившего кластер. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ vins_id + + int + + Идентификатор внутренней сети. +
+ with_lb + + bool + + Признак наличия балансировщика нагрузки. +
+ zone_id + + int + + Идентификатор зоны. +
+ + +## Пример использования модуля decort_k8s + + +Пример создания кластера Kubernetes с именем `cluster-test` с получением Kuber config. +``` + - name: Create a k8s cluster named cluster-test + decort_k8s: + authenticator: jwt + controller_url: "https://ds1.digitalenergy.online" + getConfig: true + jwt: "{{ token.jwt }}" + k8ci_id: 18 + name: cluster-test + rg_id: 125 + storage_policy_id: "{{ storage_policy_id }}" + workers: + - cpu: 10 + disk: 10 + name: wg1 + num: 1 + ram: 1024 + chipset: i440fx + ci_user_data: {} + taints: + - key=value:NoSchedule + annotations: + - key=value + labels: + - label=value + - cpu: 10 + disk: 10 + name: wg2 + num: 2 + ram: 1024 + chipset: Q35 + ci_user_data: {} + taints: + - key=value:NoSchedule + annotations: + - key=value + labels: + - label=value + register: k8s_cluster +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_lb.md b/12.0.0/модуль-decort_lb.md new file mode 100644 index 0000000..28d1984 --- /dev/null +++ b/12.0.0/модуль-decort_lb.md @@ -0,0 +1,1502 @@ +# Модуль decort_lb +## Обзор модуля decort_lb + +Модуль **decort_lb** предназначен для выполнения следующих действий над балансировщиками нагрузки: +- создать +- получить информацию +- выключить/включить/запустить/остановить/перезапустить +- изменить + - конфигурации backend и frontend + - конфигурацию sysctl + - зону +- удалить (в корзину или безвозвратно) +- восстановить из корзины + +## Параметры модуля decort_lb +Ниже приведен список параметров для модуля **decort_lb** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ account_id + + (int) + + Идентификатор аккаунта. +
+ account_name + + (str) + + Имя аккаунта. +
Может быть альтернативой параметру account_id. +
+ description + + (str) + + Описание балансировщика. +
+ backends + + (list) + + Список словарей, описывающих конфигурации backend. +
+ algorithm + + (str) +
Значения: +
leastconn +
roundrobin +
static-rr +
Default: roundrobin +
+ Используемый алгоритм. +
+ + default_settings + + + (dict) + + Cловарь, описывающий параметры по умолчанию для backend-серверов. +
+ downinter + + (int) +
Default: 1000 +
+ Интервал в миллисекундах между двумя последовательными проверками + доступности сервера, который считается недоступным. +
+ fall + + (int) +
Default: 2 +
+ Количество последовательных неудачных проверок доступности, после + которых сервер, ранее считавшийся доступным, начинает считаться + недоступным и временно исключается из схемы балансировки. +
+ inter + + (int) +
Default: 5000 +
+ Интервал в миллисекундах между двумя последовательными проверками + доступности сервера, который считается доступным. +
+ maxconn + + (int) +
Default: 250 +
+ Лимит одновременных подключений к серверу. При достижении этого лимита + сервер временно исключается из схемы балансировки. +
+ maxqueue + + (int) +
Default: 256 +
+ Лимит соединений, ожидающих в очереди. Когда этот предел будет + достигнут, все последующие подключения будут перенаправлены + на другие серверы. +
+ rise + + (int) +
Default: 2 +
+ Количество проверок, которые должен пройти сервер, считавшийся + недоступным, чтобы начать считаться доступным и снова быть + включенным в схему балансировки. +
+ slowstart + + (int) +
Default: 60000 +
+ Интервал в миллисекундах с момента когда сервер начинает считаться + доступным, по истечении которого количество фактически разрешенных + подключений к этому серверу будет возвращено до 100% от + установленного лимита. +
+ weight + + (int) +
Default: 100 +
+ Вес сервера для использования в алгоритмах балансировки. +
+ name + + (str) + + Название backend. Обязательный параметр. +
+ ext_net_id + + (int) + + Идентификатор внешней сети. +
Может быть не задан, если задан vins_id - + в таком случае балансировщик будет подключён только к + внутренней сети. +
+ + frontends + + + (list) + + Список словарей, описывающих конфигурации frontend. +
+ backend + + (str) + + Название используемого backend. Обязательный параметр. +
+ bindings + + (list) + + Список словарей, описывающих конфигурации binding. +
+ address + + (str) + + IP-адрес. +
Если не задан, то будет использоваться основной IP-адрес + балансировщика во внешней сети или, если подключена только + внутренняя сеть, основной IP-адрес балансировщика во внутренней сети. +
+ name + + (str) + + Название. Обязательный параметр. +
+ port + + (int) +
Значения: +
1-65535 +
+ Порт. Обязательный параметр. +
+ ha_lb + + bool +
Default: false +
+ Использовать схему высокой доступности для создаваемого балансировщика. +
+ lb_id + + (int) + + Идентификатор балансировщика нагрузки. +
+ lb_name + + (str) + + Имя балансировщика. +
+ permanently + + (bool) +
Default: false +
+ Если выполняется удаление, то выполнить безвозвратное удаление + (минуя корзину). +
+ rg_id + + (int) + + Идентификатор ресурсной группы. +
+ rg_name + + (str) + + Имя ресурсной группы. +
В комбинации с заданным аккаунтов может быть альтернативой + параметру rg_id +
+ servers + + (list) + + Список словарей, описывающих конфигурации backend-серверов. +
+ address + + (str) + + IP-адрес. Обязательный параметр. +
+ backends + + (list) + + Список словарей, описывающих параметры backend-сервера для разных + конфигураций backend. +
Обязательный параметр. +
+ check + + (str) +
Значения: +
enabled +
disabled +
Default: enabled +
+ Проверка доступности сервера. +
+ name + + (str) + + Название конфигурации backend. Обязательный параметр. +
+ port + + (int) +
Значения: +
1-65535 +
+ Порт. Обязательный параметр. +
+ server_settings + + (dict) + + Словарь, описывающий параметры backend-сервера. +
Ключи данного словаря аналогичны ключам словаря + + default_settings + . +
+ name + + (str) + + Название. Обязательный параметр. +
+ state + + (str) +
Значения: +
absent +
disabled +
enabled +
present +
restart +
started +
stopped +
+ Целевое состояние балансировщика нагрузки. +
absent - удалён в корзину или безвозвратно удалён, + в зависимости от значения параметра + permanently. +
disabled - выключен. Если включён, то будет выключен. +
enabled - включён. Если выключен, то будет включён. + Если удалён в корзину, то будет восстановлен из корзины и включён. +
present - существует и не удалён. Если удалён в + корзину, то будет восстановлен из корзины. +
restart - выполнен перезапуск. +
started - запущен. Если остановлен, то будет запущен. +
stopped - остановлен. Если запущен, то будет остановлен. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: present +
+ sysctl + + (dict) + + Словарь, описывающий параметры конфигурации sysctl. +
+ vins_id + + (int) + + Идентификатор внутренней сети. +
Может быть не задан, если задан ext_net_id - + в таком случае балансировщик будет подключён только к + внешней сети. +
+ vins_name + + (str) + + Имя внутренней сети. +
В комбинации с заданной РГ может быть альтернативой для + параметра vins_id. +
+ zone_id + + (int) + + Идентификатор зоны. +
+ +## Возвращаемые значения модуля decort_lb + +Модуль **decort_lb** возвращает информацию о балансировщике в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ acl + + list[any] +
+ backend_ha_ip_addr + + str + + Виртуальный IP-адрес во внутренней сети, используемый в режиме высокой доступности. +
+ backends + + list[dict[str, any]] + + Список словарей, описывающих конфигурации backend. +
+ algorithm + + str + + Используемый алгоритм. +
+ name + + str + + Название конфигурации backend. +
+ + server_default_settings + + + dict[str, any] + + Cловарь, описывающий параметры по умолчанию для backend-серверов. +
+ downinter + + int + + Интервал в миллисекундах между двумя последовательными проверками + доступности сервера, который считается недоступным. +
+ fall + + int + + Количество последовательных неудачных проверок доступности, после + которых сервер, ранее считавшийся доступным, начинает считаться + недоступным и временно исключается из схемы балансировки. +
+ guid + + str + + Идентификатор. +
+ inter + + int + + Интервал в миллисекундах между двумя последовательными проверками + доступности сервера, который считается доступным. +
+ maxconn + + int + + Лимит одновременных подключений к серверу. При достижении этого лимита + сервер временно исключается из схемы балансировки. +
+ maxqueue + + int + + Лимит соединений, ожидающих в очереди. Когда этот предел будет + достигнут, все последующие подключения будут перенаправлены + на другие серверы. +
+ rise + + int + + Количество проверок, которые должен пройти сервер, считавшийся + недоступным, чтобы начать считаться доступным и снова быть + включенным в схему балансировки. +
+ slowstart + + int + + Интервал в миллисекундах с момента когда сервер начинает считаться + доступным, по истечении которого количество фактически разрешенных + подключений к этому серверу будет возвращено до 100% от + установленного лимита. +
+ weight + + int + + Вес сервера для использования в алгоритмах балансировки. +
+ servers + + list[dict[str, any]] + + Список словарей, описывающих конфигурации backend-серверов. +
+ ip_addr + + str + + IP-адрес. +
+ check + + str + + Проверка доступности сервера. +
+ name + + str + + Название. +
+ port + + int + + Порт. +
+ server_settings + + dict[str, any] + + Cловарь, описывающий параметры backend-сервера. +
Ключи данного словаря аналогичны ключам словаря + + server_default_settings + . +
+ created_by + + str + + Пользователь, создавший объект. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str + + Пользователь, удаливший объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str + + Описание. +
+ dp_api_user + + str + +
+ ext_net_id + + int + + Идентификатор внешней сети. +
+ frontend_ha_ip_addr + + str + + Виртуальный IP-адрес во внешней сети, используемый в режиме высокой доступности. +
+ frontends + + list[dict[str, any]] + + Список словарей, описывающих конфигурации frontend. +
+ backend_name + + str + + Название используемого backend. +
+ bindings + + list[dict[str, any]] + + Список словарей, описывающих конфигурации binding. +
+ guid + + str + + Идентификатор. +
+ ip_addr + + str + + IP-адрес. +
+ name + + str + + Имя. +
+ port + + int + + Порт. +
+ guid + + str + + Идентификатор. +
+ name + + str + + Имя. +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guid + + int + + Идентификатор. +
+ ha_mode + + bool + + Включён ли режим высокой доступности. +
+ id + + int + + Идентификатор. +
+ manager_id + + int +
+ manager_type + + str +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя. +
+ part_of_k8s + + bool + + Является ли частью кластера K8s. +
+ primary_node + + dict[str, any] + + Основной узел. +
+ backend_ip_addr + + str + + IP-адрес во внутренней сети. +
+ frontend_ip_addr + + str + + IP-адрес во внешней сети. +
+ guid + + str + + Идентификатор. +
+ mgmt_ip + + str + + IP-адрес для управления. +
+ net_id + + int + + Идентификатор сети. +
+ vm_id + + int + + Идентификатор виртуальной машины. +
+ rg_id + + int + + Идентификатор ресурсной группы. +
+ rg_name + + str + + Имя ресурсной группы. +
+ secondary_node + + dict[str, any] + + Резервный узел. +
+ backend_ip_addr + + str + + IP-адрес во внутренней сети +
+ frontend_ip_addr + + str + + IP-адрес во внешней сети. +
+ guid + + str + + Идентификатор. +
+ mgmt_ip + + str + + IP-адрес для управления. +
+ net_id + + int + + Идентификатор сети. +
+ vm_id + + int + + Идентификатор виртуальной машины. +
+ status + + str + + Статус балансировщика. +
+ sysctl_params + + dict[str, str] + + Параметры конфигурации sysctl. +
+ tech_status + + str + + Технический статус балансировщика. +
+ updated_by + + str + + Пользователь, обновивший объект. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ user_managed + + bool + + Управляется ли пользователем. +
+ vins_id + + int + + Идентификатор внутренней сети. +
+ zone_id + + int + + Идентификатор зоны. +
diff --git a/12.0.0/модуль-decort_pfw.md b/12.0.0/модуль-decort_pfw.md new file mode 100644 index 0000000..061ac36 --- /dev/null +++ b/12.0.0/модуль-decort_pfw.md @@ -0,0 +1,66 @@ +# Модуль decort_pfw +## Обзор модуля decort_pfw + +Модуль **decort_pfw** предназначен для настройки правил переадресации портов (port forwarding, destination NAT) на виртуальном маршрутизаторе заданной внутренней сети для заданной виртуальной машины. +Модуль поддерживает выполнение следующих действий над правилами: +- добавить +- получить информацию +- удалить + +## Параметры модуля decort_pfw +Ниже приведен список параметров для модуля **decort_pfw** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание| +| ------ | ------ | ------ | +| compute_id | (int) | Идентификатор виртуальной машины. IP-адрес, который данная ВМ имеет во внутренней сети, заданной параметром `vins_id`, будет использоваться как внутренний IP-адрес в правилах. Обязательный параметр. | +| rules | (list) | Список словарей, описывающих правила переадресации портов для заданной ВМ (параметр `compute_id`) на виртуальном маршрутизаторе заданной внутренней сети (параметр `vins_id`).
Ключи словаря:
• `local_port` (int) (обязательный) - внутренний порт; значения: от `1` до `65535`
• `proto` (str) (обязательный) - протокол; значения: `tcp` или `udp`
• `public_port_end` (int) (необязательный) - верхняя граница диапазона внешних портов; значения: от значения ключа `public_port_start` до `65535`;
• `public_port_start` (int) (обязательный) - нижняя граница диапазона внешних портов; значения: от `1` до `65535` | +| state | (str)
Значения:
`present`
`absent`
Default: `present` | Целевое состояние правил.
Если `state=absent`, то, независимо от содержания параметра `rules`, будут удалены все правила для заданной ВМ (параметр `compute_id`) на виртуальном маршрутизаторе заданной внутренней сети (параметр `vins_id`). | +| vins_id | (int) | Идентификатор внутренней сети, на виртуальном маршрутизаторе которой настраиваются правила переадресации портов. Заданная ВМ (параметр `compute_id`) должна быть подключена к этой сети. Обязательный параметр. | + + +## Возвращаемые значения модуля decort_pfw + +Модуль **decort_pfw** возвращает информацию о правилах переадресации портов и сопутствующую информацию в виде словаря `facts` со следующими ключами: + + +|Ключ | Тип данных | Описание| +| ------ | ------ | ------ | +| compute_id | int | Идентификатор ВМ. | +| public_ip | string | IP-адрес во внешней сети, настроенный на виртуальном маршрутизаторе внутренней сети. | +| rules | list | Список словарей, описывающих правила переадресации портов.
Ключи словаря:
• `id` (int) - идентификатор правила
• `localIp` (str) - IP-адрес ВМ
• `localPort` (int) - внутренний порт
• `protocol` (str) - протокол
• `publicPortEnd` (int) - верхняя граница диапазона внешних портов
• `publicPortStart` (int) - нижняя граница диапазона внешних портов
• `vmId` (int) - идентификатор ВМ
• `vmName` (str) - имя ВМ | +| state | string | Статус правил. Значения: `PRESENT` или `ABSENT`. | +| vins_id | int | Идентификатор внутренней сети. | + +## Пример использования модуля decort_pfw + +В данном примере для существующей ВМ (параметр `compute_id`), подключённой к внутренней сети (параметр `vins_id`), настраиваются два правила переадресации портов: + +- Правило для одного порта: внешний порт `30022` на внутренний порт `22` по протоколу `tcp`. +- Правило для диапазона портов: внешние порты с `30080` по `30085` на внутренние порты с `30080` по протоколу `udp`. + +``` +- name: Add port forwarding rules + decort_pfw: + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + authenticator: oauth2 + compute_id: "{{ my_vm.facts.id }}" + controller_url: "https://cloud.digitalenergy.online" + oauth2_url: "https://sso.digitalenergy.online" + rules: + - local_port: 22 + proto: tcp + public_port_start: 30022 + - local_port: 30080 + proto: udp + public_port_end: 30085 + public_port_start: 30080 + vins_id: "{{ my_vins.facts.id }}" + register: my_pfw_rules +``` + +В данном примере результат выполнения модуля **decort_pfw** записывается в переменную `my_pfw_rules`. Для доступа к списку правил используйте следующую конструкцию: + +``` +"{{ my_pfw_rules.facts.rules }}" +``` diff --git a/12.0.0/модуль-decort_rg.md b/12.0.0/модуль-decort_rg.md new file mode 100644 index 0000000..1cfa493 --- /dev/null +++ b/12.0.0/модуль-decort_rg.md @@ -0,0 +1,806 @@ +# Модуль decort_rg + +## Обзор модуля decort_rg + +Модуль decort_rg предназначен для создания, редактирования и удаления ресурсных групп (Resource Group, RG) в облачной платформе DECORT, а также для получения информации об уже существующей ресурсной группе. Модуль decort_rg позволяет: + +- создавать ресурсные группы +- удалять ресурсные группы (в корзину или безвозвратно, с удалением содержимого или без) +- восстанавливать ресурсные группы из корзины +- включать/отключать ресурсные группы +- запрашивать информацию об уже существующих ресурсных группах +- изменять ресурсные группы: + - переименовывать + - настраивать квоты + - задавать стандартную сеть + - настраивать права доступа для пользователей + - изменять доступные пулы СХД + - изменять описание + +## Параметры модуля decort_rg +Ниже приведен список параметров для модуля **decort_rg** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +|----------|--------------------------|----------| +| account_id | (int) | Уникальный целочисленный идентификатор аккаунта, в рамках которого создаётся или уже существует данная ресурсная группа. Должен быть задан либо идентификатор, либо имя аккаунта (см. параметр `account_name`). Если одновременно заданы и `account_id`, и `account_name`, то account_name игнорируется. | +| account_name | (string) | Имя аккаунта, в рамках которого создаётся или уже существует данная ресурсная группа. Должно быть задано либо имя, либо идентификатор учётной записи (см. параметр `account_id`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется. | +| access | (dict) | Параметр, позволяющий выдать, забрать или изменить права у пользователя в ресурсной группе.
Ключи словаря:
• `action` (str) - режим изменения прав доступа для указанного пользователя. Обязательный параметр. Значения: `grant`, `revoke`
• `user` (str) - имя пользователя. Обязательный параметр.
• `right` (str) - права доступа. Обязателен при `action: grant`. Значения: `R`, `RCX`, `ARCXDU`. | +| description | (string) | Текстовое описание ресурсной группы. | +| def_netId | (int) | Уникальный целочисленный идентификатор внутренней или внешней сети. Используется для изменения сети по умолчанию в ресурсной группе. | +| def_netType | (string)
Значения:
`PRIVATE`
`PUBLIC`
`NONE`
Default: `PRIVATE` | Тип сети по умолчанию в ресурсной группе. Используется при создании ресурсной группы, а также при изменении. | +| extNetId | (int) | Уникальный целочисленный идентификатор внешней сети.
Если `def_netType: PRIVATE`, то указывает какую внешнюю сеть подключить к создаваемой внутренней сети, которая будет задана как сеть по умолчанию для создаваемой РГ.
Если `def_netType: PUBLIC`, то указывает какую внешнюю сеть задать как сеть по умолчанию для создаваемой РГ. | +| extNetIp | (string) | IP-адрес для внешней сети, которая задана в параметре `extNetId`. | +| ipcidr | (string) | IP-адрес внутренней сети. Используется при создании ресурсной группы, чтобы задать IP-адрес сети для создаваемой внутренней сети, которая создастся вместе с ресурсной группой. Используется при параметре `def_netType` в значении `PRIVATE`. | +| owner | (string) | Владелец ресурсной группы. Задаётся при создании ресурсной группы, не обязателен. Если оставить пустое значение - владельцем ресурсной группы будет пользователь, создавший ресурсную группу. | +| permanently | (bool)
Default: `false` | Параметр, использующийся при удалении ресурсной группы. При значении `true` - ресурсная группа удалится безвозвратно, а при `false` - попадёт в корзину. | +| quotas | (dict) | Предназначено для задания или изменения квоты на ресурсы в составе данной ресурсной группы.
Ключи словаря:
• `cpu` (int) - количество виртуальных процессоров
• `disk` (int) - объём дисков в ГБ
• `ext_ips` (int) - количество внешних IP-адресов
• `ram` (int) - объём оперативной памяти в МБ
• `storage_policies` (list) - список словарей, описывающих квоты по политикам хранения. Ключи словаря: `id` (int) - идентификатор политики хранения; `storage_size_gb` (int) - объём дисков.| +| recursive_deletion | (bool)
Default: `false` | Рекурсивное удаление.
Если `true`, то при удалении РГ будет удалено всё её содержимое.
Если `false`, то при удалении непустой РГ работа модуля завершится ошибкой. | +| rename | (string) | Новое имя ресурсной группы.
Возможно переименование только включенной ресурсной группы. | +| rg_id | (int) | Уникальный целочисленный идентификатор ресурсной группы. Является обязательным при изменении РГ если не заданы `rg_name` и `account_id`/`account_name` | +| rg_name | (string) | Имя ресурсной группы. Данный параметр является обязательным при создании. | +| sdn_access_group_id | (string) | Идентификатор группы доступа SDN. | +| sep_pools| (list) | Список словарей, описывающих доступные пулы СХД.
Ключи словаря:
• `sep_id` (int) - идентификатор системы хранения данных.
• `pool_names` (list) - список названий пулов системы хранения данных.
Чтобы очистить список доступных пулов, нужно указать пустой список `[]`.| +| state | Значения:
`present`
`absent`
`enabled`
`disabled`
Default: `present` | Целевое состояние ресурсной группы. | + +## Возвращаемые значения модуля decort_rg + +Модуль **decort_rg** возвращает информацию о ресурсной группе в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Уникальный целочисленный идентификатор аккаунта, которому принадлежит данная ресурсная группа. +
+ account_name + + str + + Имя аккаунта, которому принадлежит данная ресурсная группа. +
+ acl + + list[str, any] + + Список словарей, описывающих доступы пользователей. +
+ access_type + + str + + Тип доступа. +
+ can_be_deleted + + bool | null + + Может ли быть удалён. +
+ explicit + + bool + + Видимость ресурсной группы. +
+ guid + + str | null + + Идентификатор. +
+ status + + str + + Статус. +
+ type + + str + + Тип. +
+ user_emails + + list[str] | null + + Список адресов электронной почты. +
+ user_name + + str + + Имя пользователя. +
+ cpu_allocation_parameter + + str + + Режим выделения ЦП. +
+ cpu_allocation_ratio + + int + + Коэффициент для режима выделения ЦП. +
+ created_by + + str + + Имя пользователя, создавшего ресурсную группу. +
+ created_timestamp + + int + + Unix-время создания. +
+ created_datetime + + str + + Дата и время создания. +
+ default_net_id + + int + + Уникальный целочисленный идентификатор сети по умолчанию в данной ресурсной группе. +
+ default_net_type + + str + + Тип сети по умолчанию в данной ресурсной группе. +
+ deleted_by + + str + + Имя пользователя, удалившего ресурсную группу. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ deleted_datetime + + str + + Дата и время удаления. +
+ description + + str + + Текстовое описание ресурсной группы. +
+ dirty + + bool + +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя ресурсной группы. Обратите внимание, что это имя уникально только в рамках аккаунта, которому принадлежит данная ресурсная группа. +
+ quotas + + dict[str, any] + + Словарь, описывающий квоты. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ disk_size_gb + + int + + Объём дисков в ГБ. +
+ gpu_count + + int + + Количество графических процессоров. +
+ ext_ip_count + + int + + Количество внешних IP-адресов. +
+ ram_size_mb + + float | int + + Объём оперативной памяти в МБ. +
+ storage_size_gb + + int + + Объём дисков. +
+ storage_policies + + list[dict[str, int]] + + Список словарей, описывающий квоты по политикам хранения. +
+ id + + int + + Идентификатор политики хранения. +
+ storage_size_gb + + int + + Объём дисков. +
+ resource_types + + list[str] + + Список разрешённых типов ресурсов. +
+ sdn_access_group_id + + str + + Идентификатор группы доступа SDN. +
+ secret + + str + +
+ sep_pools + + list[str] + + Список доступных пулов СХД. +
+ status + + str + + Статус. +
+ storage_policy_ids + + list[int] + + Идентификаторы политик хранения. +
+ updated_by + + str + + Имя пользователя, обновившего ресурсную группу. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ updated_datetime + + str + + Дата и время обновления. +
+ vins_ids + + list[int] + + Список идентификаторов внутренних сетей ресурсной группы. +
+ vm_features + + list[str] + + Список дополнительных возможностей гипервизора, доступных ВМ. +
+ vm_ids + + list[int] + + Список идентификаторов виртуальных машин ресурсной группы. +
+ +## Пример использования модуля decort_rg + +В данном примере показано, как создать ресурсную группу по имени MyRG в аккаунте MyAccount. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере показано, как создать ресурсную группу по имени MyRG в аккаунте MyAccount, также задать квоты и выдать права на чтение пользователю MyUser. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + access: + action: "grant" + user: "MyUser" + right: "R" + quotas: + cpu: 16 + ram: 16384 + disk: 100 + ext_ips: 20 + storage_policies: + - id: "{{ storage_policy_id }}" + storage_size_gb: "{{ storage_size_gb }}" + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере показано, как выдать доступ на чтение и запись пользователю MyUser в ресурсной группе по имени MyRG в аккаунте MyAccount. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + access: + action: "grant" + user: "MyUser" + right: "RCX" + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере показано, как сменить квоту в ресурсной группе по имени MyRG в аккаунте MyAccount. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + quotas: + cpu: 16 + ram: 16384 + disk: 100 + ext_ips: 20 + storage_policies: + - id: "{{ storage_policy_id }}" + storage_size_gb: "{{ storage_size_gb }}" + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере показано, как изменить сеть по умолчанию в ресурсной группе по имени MyRG в аккаунте MyAccount. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + def_netType: "PRIVATE" + def_netId: 99 + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере показано, как переименовать ресурсную группу по имени MyRG на новое имя "NewRg" в аккаунте MyAccount. + +``` +- name: manage resource group + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + rename: "NewRg" + rg_id: 27 + state: present + register: my_rg + delegate_to: localhost +``` + +В данном примере результат работы модуля decort_rg записывается в переменную my_rg. + +Модули DECORT, которым для работы требуется ресурсная группа, в качестве одного из параметров, как правило, принимают идентификатор `rg_id`. Так, например, используя модуль `decort_vm` для создания виртуального сервера необходимо указать ресурсную группу, к которой будет принадлежать этот виртуальный сервер. Сделать это можно следующим образом: + +``` + <прочие детали опущены> + rg_id: "{{ my_rg.facts.id }}" +``` + +В данном примере показано, как изменить доступные пулы СХД в ресурсной группе по имени MyRG в аккаунте MyAccount. + +``` +- name: change available sep pools + decort_rg: + authenticator: oauth2 + app_id: "{{ my_app_id }}" + app_secret: "{{ my_app_secret }}" + oauth2_url: "https://sso.digitalenergy.online" + controller_url: "https://cloud.digitalenergy.online" + account_name: "MyAccount" + rg_name: "MyRG" + sep_pools: + - sep_id: 1 + pool_names: + - sep1_pool1 + - sep1_pool2 + - sep_id: 2 + pool_names: + - sep2_pool1 + state: present + register: my_rg + delegate_to: localhost +``` diff --git a/12.0.0/модуль-decort_rg_list.md b/12.0.0/модуль-decort_rg_list.md new file mode 100644 index 0000000..abc6e29 --- /dev/null +++ b/12.0.0/модуль-decort_rg_list.md @@ -0,0 +1,937 @@ +# Модуль decort_rg_list +## Обзор модуля + +Модуль **decort_rg_list** предназначен для получения списка доступных пользователю ресурсных групп (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_rg_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ account_name + + (str) + + По имени аккаунта. +
+ created_after_timestamp + + (int) + + Созданные после unix-времени. +
+ created_before_timestamp + + (int) + + Созданные до unix-времени. +
+ id + + (int) + + По идентификатору. +
+ include_deleted + + (bool) + + Включая удалённые в корзину. +
+ lock_status + + (str) +
Значения: +
LOCKED +
UNLOCKED +
+ По статусу блокировки. +
+ name + + (str) + + По имени. +
+ status + + (str) +
Значения: +
CREATED +
DELETED +
DESTROYED +
DESTROYING +
DISABLED +
DISABLING +
ENABLED +
ENABLING +
MODELED +
RESTORING +
+ По статусу. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_rg_list** возвращает информацию о доступных ресурсных группах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ account_name + + str + + Имя аккаунта. +
+ acl + + list[dict[str, any]] + + Список словарей, описывающих доступы пользователей. +
+ explicit + + bool + + Видимость. +
+ guid + + str | null + + Идентификатор доступа. +
+ access_type + + str + + Тип доступа. +
+ status + + str + + Статус доступа. +
+ type + + str + +
+ user_name + + str + + Имя пользователя. +
+ can_be_deleted + + bool + + Может ли быть удалён. +
+ user_emails + + list[str] | null + + Список адресов электронной почты. +
+ vm_features + + list[str] + + Список дополнительных возможностей гипервизора. +
+ cpu_allocation_parameter + + str + +
+ cpu_allocation_ratio + + int + +
+ created_by + + str + + Имя пользователя, создавшего объект. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ default_net_id + + int + + Идентификатор сети по умолчанию. +
+ default_net_type + + str + + Тип сети по умолчанию. +
+ deleted_by + + str + + Имя пользователя, удалившего объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str + + Описание. +
+ dirty + + bool + +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя. +
+ quotas + + dict[str, any] + + Словарь, описывающий квоты. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ disk_size_gb + + int + + Объём диска в ГБ. +
+ gpu_count + + int + + Количество графических процессоров. +
+ ext_ip_count + + int + + Количество внешних адресов. +
+ ram_size_mb + + int + + Объём оперативной памяти в МБ. +
+ storage_size_gb + + int + + Объём хранилища в ГБ. +
+ storage_policies + + list[dict[str, int]] + + Список словарей, описывающих квоты для политик хранения. +
+ id + + int + + Идентификатор политики хранения. +
+ storage_size_gb + + int + + Объём хранилища в ГБ. +
+ resource_types + + list[str] + + Список разрешённых типов ресурсов. +
+ sdn_access_group_id + + str + + Идентификатор группы доступа SDN. +
+ secret + + str + +
+ status + + str + + Статус. +
+ storage_policy_ids + + list[int] + + Список идентификаторов политик хранения. +
+ sep_pools + + list[str] + + Список пулов СХД в формате sep_id_pool_name. +
+ updated_by + + str + + Имя пользователя, обновившего объект. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ vins_ids + + list[int] + + Список идентификаторов внутренних сетей. +
+ vm_ids + + list[int] + + Список идентификаторов ВМ. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по имени аккаунта. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + account_name: "{{ account_name }}" +``` + +### С фильтрацией созданных после unix-времени. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + created_after_timestamp: "{{ timestamp }}" +``` + +### С фильтрацией созданных до unix-времени. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + created_before_timestamp: "{{ timestamp }}" +``` + +### С фильтрацией по идентификатору. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией, включая удалённые в корзину. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + include_deleted: true +``` + +### С фильтрацией по статусу блокировки. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + lock_status: "{{ lock_status }}" +``` + +### С фильтрацией по имени. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по статусу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get resource groups + decort_rg_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` diff --git a/12.0.0/модуль-decort_sdn_access_group.md b/12.0.0/модуль-decort_sdn_access_group.md new file mode 100644 index 0000000..79656e8 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_access_group.md @@ -0,0 +1,303 @@ +# Модуль decort_sdn_access_group +## Обзор модуля + +Модуль **decort_sdn_access_group** предназначен для выполнения следующих действий над группами доступа: +- **получить основную информацию** (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получить-основную-информацию-о-группе-доступа)) +- **создать** (см. [примеры](#создать)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_access_group** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + access_group_id + + + (str) + + Идентификатор группы доступа. +
+ + comment + + + (str) + + Комментарий группы доступа. +
+ + display_name + + + (str) + + Отображаемое имя группы доступа. +
+ + state + + + (str) +
Значения: +
present +
absent +
+ Целевое состояние группы доступа. +
present - существует. Если отсутствует, будет создана. +
absent - отсутствует. Если существует, будет удалена. +
Значение по умолчанию если объект не найден: present. +
+ +## Возвращаемые значения +Модуль **decort_sdn_access_group** возвращает информацию о группе доступа в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ comment + + str + + Комментарий группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ default_security_policy + + dict[str, any] + + Словарь, описывающий политику безопасности по умолчанию. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ default_acl_drop + + str +
+ display_name + + str + + Отображаемое имя политики безопасности. +
+ id + + str + + Идентификатор политики безопасности. +
+ version_id + + int + + Идентификатор версии объекта. +
+ display_name + + str + + Отображаемое имя группы доступа. +
+ id + + str + + Идентификатор группы доступа. +
+ net_object_access_group + + dict[str, any] + + Словарь, описывающий сетевой объект группы доступа. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ id + + str + + Идентификатор сетевого объекта. +
+ version_id + + int + + Идентификатор версии объекта. +
+ updated_at + + str + + Дата и время последнего обновления в формате ISO 8601. +
+ +## Примеры использования + +### Получить основную информацию о группе доступа +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group info + decort_sdn_access_group: + # Параметры для авторизации упущены + access_group_id: "{{ access_group_id }}" +``` + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create SDN access group + decort_sdn_access_group: + # Параметры для авторизации упущены + display_name: "{{ access_group_name }}" + comment: "{{ access_group_comment }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN access group + decort_sdn_access_group: + # Параметры для авторизации упущены + access_group_id: "{{ access_group_id }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_sdn_access_group_list.md b/12.0.0/модуль-decort_sdn_access_group_list.md new file mode 100644 index 0000000..88d063d --- /dev/null +++ b/12.0.0/модуль-decort_sdn_access_group_list.md @@ -0,0 +1,481 @@ +# Модуль decort_sdn_access_group_list +## Обзор модуля + +Модуль **decort_sdn_access_group_list** предназначен для получения списка групп доступа SDN, доступных пользователю (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_access_group_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ enabled + + (bool) + + По признаку включена ли группа доступа. +
+ deleted + + (bool) + + По признаку удалена ли группа доступа. +
+ display_name + + (str) + + По отображаемому имени группы доступа. +
+ owner_display_name + + (str) + + По отображаемому имени владельца группы доступа. +
+ created_from + + (str) + + По дате создания, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ created_to + + (str) + + По дате создания, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страницы.
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Направление сортировки. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) +
Значения: +
display_name +
created_at +
updated_at +
deleted_at +
owner_login +
+ Поле, по которому выполняется сортировка. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_access_group_list** возвращает список групп доступа SDN в ключе `facts`. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ comment + + str + + Комментарий группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ default_security_policy + + dict[str, any] + + Словарь, описывающий политику безопасности по умолчанию. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ default_acl_drop + + str +
+ display_name + + str + + Отображаемое имя политики безопасности. +
+ id + + str + + Идентификатор политики безопасности. +
+ version_id + + int + + Идентификатор версии объекта. +
+ display_name + + str + + Отображаемое имя группы доступа. +
+ id + + str + + Идентификатор группы доступа. +
+ net_object_access_group + + dict[str, any] + + Словарь, описывающий сетевой объект группы доступа. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ id + + str + + Идентификатор сетевого объекта. +
+ version_id + + int + + Идентификатор версии объекта. +
+ updated_at + + str + + Дата и время последнего обновления в формате ISO 8601. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по признаку, включена ли группа доступа. +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + enabled: true +``` + +### С фильтрацией по признаку, удалена ли группа доступа. +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + deleted: true +``` + +### С фильтрацией по отображаемому имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + display_name: "{{ display_name }}" +``` + +### С фильтрацией по отображаемому имени владельца группы доступа +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + owner_display_name: "{{ owner_display_name }}" +``` + +### С фильтрацией по дате создания, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + created_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате создания, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + filter: + created_to: "2026-04-15T23:59:59Z" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + pagination: + size: 10 + number: 2 +``` + +### С сортировкой по дате и времени создания по убыванию +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN access group list + decort_sdn_access_group_list: + # Параметры для авторизации упущены + sorting: + field: created_at + asc: false +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_sdn_hypervisor.md b/12.0.0/модуль-decort_sdn_hypervisor.md new file mode 100644 index 0000000..672f70f --- /dev/null +++ b/12.0.0/модуль-decort_sdn_hypervisor.md @@ -0,0 +1,330 @@ +# Модуль decort_sdn_hypervisor +## Обзор модуля + +Модуль **decort_sdn_hypervisor** предназначен для выполнения следующих действий над гипервизором SDN: +- **получить основную информацию о гипервизоре и его портах** (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получить-основную-информацию-о-гипервизоре)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) +- **изменить отображаемое имя** (см. [параметр display_name](#display_name) и [примеры](#изменить-отображаемое-имя)) +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_hypervisor** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + display_name + + + (str) + + Отображаемое имя гипервизора. +
+ name + + (str) + + Имя гипервизора. +
+ port_info + + (str) +
Значения: +
detailed +
general +
+ Позволяет получить информацию о портах гипервизора, в зависимости от выбранного значения. +
detailed - получить список портов и информацию об их количестве. +
general - получить информацию о количестве портов. +
+ + state + + + (str) +
Значения: +
absent +
+ Целевое состояние гипервизора. +
absent - отсутствует. Если существует, будет удален. +
+ +## Возвращаемые значения +Модуль **decort_sdn_hypervisor** возвращает информацию о гипервизоре в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hostname + + str + + Имя хоста. +
+ ip + + str + + IP-адрес гипервизора. +
+ name + + str + + Имя гипервизора. +
+ ports + + null | dict[str, any] + + Словарь, описывающий информацию о портах гипервизора. +
+ data + + null | list[dict[str, any]] + + Список портов гипервизора. +
+ display_name + + str + + Отображаемое имя. +
+ id + + str + + Идентификатор порта. +
+ unique_identifier + + str + + Уникальный идентификатор порта. +
+ up + + bool + + Включен ли порт. +
+ info + + dict[str, int] + + Словарь, описывающий количество портов гипервизора. +
+ active_ports + + int + + Количество активных портов. +
+ total_ports + + int + + Всего портов. +
+ status + + str + + Статус гипервизора. +
+ synced_at + + str + + Дата и время последней синхронизации в формате ISO 8601. +
+ +## Примеры использования + +### Получить основную информацию о гипервизоре +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor info + decort_sdn_hypervisor: + # Параметры для авторизации упущены + name: "{{ name }}" +``` + +### Получить основную информацию о гипервизоре и его портах +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor and ports info + decort_sdn_hypervisor: + # Параметры для авторизации упущены + name: "{{ name }}" + port_info: "{{ port_info }}" +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN hypervisor + decort_sdn_hypervisor: + # Параметры для авторизации упущены + name: "{{ name }}" + state: absent +``` + +### Изменить отображаемое имя +``` +- name: Example + hosts: localhost + tasks: + - name: Update SDN hypervisor + decort_sdn_hypervisor: + # Параметры для авторизации упущены + name: "{{ name }}" + display_name: "{{ display_name }}" +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_sdn_hypervisor_list.md b/12.0.0/модуль-decort_sdn_hypervisor_list.md new file mode 100644 index 0000000..3663f2c --- /dev/null +++ b/12.0.0/модуль-decort_sdn_hypervisor_list.md @@ -0,0 +1,556 @@ +# Модуль decort_sdn_hypervisor_list +## Обзор модуля + +Модуль **decort_sdn_hypervisor_list** предназначен для получения списка гипервизоров SDN, доступных пользователю (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_hypervisor_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ hostname + + (str) + + По имени хоста. +
+ display_name + + (str) + + По отображаемому имени гипервизора. +
+ ip + + (str) + + По IP - адресу гипервизора. +
+ created_from + + (str) + + По дате создания, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ created_to + + (str) + + По дате создания, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ updated_from + + (str) + + По дате обновления, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ updated_to + + (str) + + По дате обновления, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ port_info + + (str) +
Значения: +
detailed +
general +
+ Позволяет получить информацию о портах гипервизора, в зависимости от выбранного значения. +
detailed - получить список портов и информацию об их количестве. +
general - получить информацию о количестве портов. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Направление сортировки. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) +
Значения: +
name +
hostname +
last_sync +
display_name +
ip +
created_at +
updated_at +
+ Поле, по которому выполняется сортировка. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_hypervisor** возвращает информацию о гипервизоре в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hostname + + str + + Имя хоста. +
+ ip + + str + + IP-адрес гипервизора. +
+ name + + str + + Имя гипервизора. +
+ ports + + null | dict[str, any] + + Словарь, описывающий информацию о портах гипервизора. +
+ data + + null | list[dict[str, any]] + + Список портов гипервизора. +
+ display_name + + str + + Отображаемое имя. +
+ id + + str + + Идентификатор порта. +
+ unique_identifier + + str + + Уникальный идентификатор порта. +
+ up + + bool + + Включен ли порт. +
+ info + + dict[str, int] + + Словарь, описывающий количество портов гипервизора. +
+ active_ports + + int + + Количество активных портов. +
+ total_ports + + int + + Всего портов. +
+ status + + str + + Статус гипервизора. +
+ synced_at + + str + + Дата и время последней синхронизации в формате ISO 8601. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены +``` + +### С получением информации о портах гипервизора +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + port_info: "{{ port_info }}" +``` + +### С фильтрацией по имени физического узла +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + hostname: "{{ hostname }}" +``` + +### С фильтрацией по отображаемому имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + display_name: "{{ display_name }}" +``` + +### С фильтрацией по IP - адресу гипервизора +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + ip: "{{ ip }}" +``` + +### С фильтрацией по дате создания, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + created_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате создания, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + created_to: "2026-04-15T23:59:59Z" +``` + +### С фильтрацией по дате обновления, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + updated_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате обновления, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + filter: + updated_to: "2026-04-15T23:59:59Z" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + pagination: + size: 10 + number: 2 +``` + +### С сортировкой по дате и времени создания по убыванию +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN hypervisor list + decort_sdn_hypervisor_list: + # Параметры для авторизации упущены + sorting: + field: created_at + asc: false +``` \ No newline at end of file diff --git a/12.0.0/модуль-decort_sdn_logical_port.md b/12.0.0/модуль-decort_sdn_logical_port.md new file mode 100644 index 0000000..9308134 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_logical_port.md @@ -0,0 +1,1028 @@ +# Модуль decort_sdn_logical_port +## Обзор модуля + +Модуль **decort_sdn_logical_port** предназначен для выполнения следующих действий над логическими портами SDN: +- **получить основную информацию** (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получить-основную-информацию-о-логическом-порте)) +- **создать** (см. [примеры](#создать)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) +- **изменить** (см. [примеры](#изменить)) + - **описание** (см. [параметр description](#description) и [примеры](#описание)) + - **отображаемое имя** (см. [параметр display_name](#display_name) и [примеры](#отображаемое-имя)) + - **MAC-адрес адаптера** (см. [параметр adapter_mac](#adapter_mac) и [примеры](#mac-адрес-адаптера)) + - **гипервизор** (см. [параметр hypervisor](#hypervisor) и [параметр hypervisor_change_via_migration](#hypervisor_change_via_migration) и [примеры](#гипервизор)) + - **метки** (см. [параметр labels](#labels) и [примеры](#метки)) + - **включение/выключение Port Security** (см. [параметр port_security](#port_security) и [примеры](#включениевыключение-port-security)) + - **удалить все адреса** (см. [параметры no_addresses](#no_addresses) и [примеры](#удаление-всех-адресов)) +- **включить** (см. [параметр state](#state) и [примеры](#включить)) +- **выключить** (см. [параметр state](#state) и [примеры](#выключить)) +- **отменить миграцию** (см. [параметр no_migration](#no_migration) и [примеры](#отменить-миграцию)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_logical_port** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + access_group_id + + + (str) + + Идентификатор группы доступа. +
+ + adapter_mac + + + (str) + + MAC-адрес адаптера. +
+ + no_migration + + + (bool) + + true - если запущена миграция на другой гипервизор, то она будет остановлена. +
+ + description + + + (str) + + Описание логического порта. +
+ + display_name + + + (str) + + Отображаемое имя логического порта. +
+ + hypervisor + + + (str) + + Гипервизор. +
+ + labels + + + (dict) + + Метки логического порта. +
+ + logical_port_id + + + (str) + + Идентификатор логического порта. +
+ + port_security + + + (bool) + + Включена ли функция Port Security. +
+ + segment_id + + + (str) + + Идентификатор сегмента. +
+ + state + + + (str) +
Значения: +
absent +
absent_force +
disabled +
enabled +
present +
+ Целевое состояние логического порта. +
absent - отсутствует. Если существует, будет удалён. +
absent_force - отсутствует. Если существует, будет удалён принудительно. +
disabled - выключен. Если включён, будет выключен. +
enabled - включён. Если выключен, будет включён. +
present - существует. Если отсутствует, будет создан. +
Значение по умолчанию, если объект не найден: present. +
+ + hypervisor_change_via_migration + + + (bool) + + Использовать ли миграцию для изменения гипервизора логического порта. +
Значение по умолчанию: false. +
+ + unique_identifier + + + (str) + + Уникальный идентификатор логического порта. +
+ + version_id + + + (int) + + Идентификатор версии объекта. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_logical_port** возвращает информацию о логическом порте в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str + + Название группы доступа. +
+ adapter_mac + + str + + MAC-адрес адаптера. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ bindings + + dict[str, any] + + Связанные объекты. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ id + + str + + Идентификатор логического порта. +
+ logical_port_addresses + + list[dict[str, any]] + + Список адресов логического порта. +
+ assigned_at + + str + + Дата и время назначения адреса в формате ISO 8601. +
+ id + + str + + Идентификатор адреса логического порта. +
+ ip + + str + + IP-адрес. +
+ ip_type + + str + + Тип IP-адреса. +
+ is_discovered + + bool + + Обнаружен ли адрес автоматически. +
+ is_primary + + bool + + Является ли адрес основным. +
+ logical_port_id + + str + + Идентификатор логического порта. +
+ mac + + str + + MAC-адрес. +
+ port_security + + bool + + Включена ли функция Port Security. +
+ segment_display_name + + str | null + + Отображаемое имя сегмента. +
+ segment_id + + str | null + + Идентификатор сегмента. +
+ updated_at + + str + + Дата и время обновления привязки в формате ISO 8601. +
+ version_id + + int + + Идентификатор версии привязки. +
+ created_at + + str | null + + Дата и время создания в формате ISO 8601 или null. +
+ description + + str + + Описание логического порта. +
+ display_name + + str + + Отображаемое имя логического порта. +
+ enabled + + bool + + Включён ли логический порт. +
+ exclude_firewall + + dict[str, any] + + Исключение из межсетевого экрана. +
+ exclusion_reason + + str + + Причина исключения из межсетевого экрана. +
+ logical_port_addresses_excluded + + bool + + Исключены ли адреса логического порта из межсетевого экрана. +
+ logical_port_excluded + + bool + + Исключён ли логический порт из межсетевого экрана. +
+ external_network_id + + str + + Идентификатор внешней сети. +
+ hypervisor + + str + + Гипервизор. +
+ hypervisor_display_name + + str + + Отображаемое имя гипервизора. +
+ id + + str + + Идентификатор логического порта. +
+ labels + + dict[str, str] + + Метки. +
+ vm_id + + str + + Идентификатор виртуальной машины. +
+ vm_name + + str + + Имя виртуальной машины. +
+ live_migration_target_hv + + str + + Имя гипервизора, выбранного как цель live-миграции. +
+ status + + dict[str, any] + + Статус логического порта и гипервизоров. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ hypervisors + + list[dict[str, any]] + + Список гипервизоров и их статусов. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ name + + str + + Имя гипервизора. +
+ operation_status + + str + + Статус операции. +
+ synced_at + + str + + Время синхронизации в формате ISO 8601. +
+ operation_status + + str + + Статус операции. +
+ unique_identifier + + str + + Уникальный идентификатор логического порта. +
+ updated_at + + str | null + + Дата и время последнего обновления в формате ISO 8601 или null. +
+ version_id + + int + + Идентификатор версии объекта. +
+ +## Примеры использования + +### Получить основную информацию о логическом порте +``` +- name: Example + hosts: localhost + tasks: + - name: Get logical port info + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" +``` + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create SDN logical port + decort_sdn_logical_port: + # Параметры для авторизации упущены + access_group_id: "{{ logical_port_id }}" + adapter_mac: "{{ adapter_mac }}" + description: "{{ description }}" + display_name: "{{ display_name }}" + hypervisor: "{{ hypervisor }}" + port_security: true + segment_id: "{{ segment_id }}" + labels: + vm_id: "{{ vm_id }}" + vm_name: "{{ vm_name }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN logical port + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + state: absent +``` + +### Удалить принудительно +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN logical port + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + state: absent_force +``` + +### Изменить + +#### Описание +``` +- name: Example + hosts: localhost + tasks: + - name: Update logical port description + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + description: updated description +``` + +#### Отображаемое имя +``` +- name: Example + hosts: localhost + tasks: + - name: Update logical port display name + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + display_name: new logical port name +``` + +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable logical port + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + state: enabled +``` + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable logical port + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + state: disabled +``` + +#### MAC-адрес адаптера +``` +- name: Example + hosts: localhost + tasks: + - name: Update adapter MAC + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + adapter_mac: "52:55:01:f7:5c:4d" +``` + +#### Гипервизор +``` +- name: Example + hosts: localhost + tasks: + - name: Update hypervisor + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + hypervisor: "{{ hypervisor }}" + hypervisor_change_via_migration: false +``` + +#### Метки +``` +- name: Example + hosts: localhost + tasks: + - name: Update labels + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + labels: + vm_id: vm_id +``` + +#### Включение/выключение Port Security +``` +- name: Example + hosts: localhost + tasks: + - name: Update port security + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + port_security: true +``` + +``` +- name: Example + hosts: localhost + tasks: + - name: Update port security + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + port_security: false +``` + +##### Удаление всех адресов +``` +- name: Example + hosts: localhost + tasks: + - name: Remove logical port addresses + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + no_addresses: true +``` + +#### Отменить миграцию +``` +- name: Example + hosts: localhost + tasks: + - name: Cancel logical port migration + decort_sdn_logical_port: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + no_migration: true +``` diff --git a/12.0.0/модуль-decort_sdn_logical_port_address.md b/12.0.0/модуль-decort_sdn_logical_port_address.md new file mode 100644 index 0000000..beb5343 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_logical_port_address.md @@ -0,0 +1,252 @@ +# Модуль decort_sdn_logical_port_address +## Обзор модуля + +Модуль **decort_sdn_logical_port_address** предназначен для приведения к целевому состоянию адреса логического порта SDN: +- **создать** (см. [параметр state](#state) и [примеры](#создать)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_logical_port_address** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + discovered + + + (bool) + + Является ли обнаруженным. +
+ + ip_addr + + + (str) + + IP-адрес. Обязательный параметр. Используется как идентификатор адреса при поиске. +
+ + ip_type + + + (str) +
Значения: +
IPv4 +
IPv6 +
+ Протокол IP. Обязательный параметр при создании адреса. +
+ + logical_port_id + + + (str) + + Идентификатор логического порта. Обязательный параметр. +
+ + mac + + + (str) + + MAC-адрес в формате XX:XX:XX:XX:XX:XX. Обязательный параметр при создании адреса. +
+ + primary + + + (bool) + + Является ли основным. +
+ + state + + + (str) +
Значения: +
present +
absent +
+ Целевое состояние адреса. +
present - существует. Если указанный адрес отсутствует, будет создан. +
absent - отсутствует. Если указанный адрес существует, будет удалён. +
Значение по умолчанию если объект не найден: present. +
+ +## Возвращаемые значения +Модуль **decort_sdn_logical_port_address** возвращает информацию об адресе логического порта в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип
данных +
+ Описание +
+ assigned_at + + str + + Дата и время назначения адреса в формате ISO 8601. +
+ id + + str + Идентификатор адреса.
+ ip + + str + + IP-адрес. +
+ ip_type + + str + + Протокол IP + +
+ is_discovered + + bool + + Является ли обнаруженным. +
+ is_primary + + bool + + Является ли основным. +
+ logical_port_id + + str + + Идентификатор логического порта. +
+ mac + + str + + MAC-адрес. +
+ +## Примеры использования + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create SDN logical port address + decort_sdn_logical_port_address: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + ip_addr: "{{ ip_addr }}" + ip_type: "{{ ip_type }}" + primary: true + discovered: false + mac: "{{ mac }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN logical port address + decort_sdn_logical_port_address: + # Параметры для авторизации упущены + logical_port_id: "{{ logical_port_id }}" + ip_addr: "{{ ip_addr }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_sdn_logical_port_list.md b/12.0.0/модуль-decort_sdn_logical_port_list.md new file mode 100644 index 0000000..1d2d62e --- /dev/null +++ b/12.0.0/модуль-decort_sdn_logical_port_list.md @@ -0,0 +1,1184 @@ +# Модуль decort_sdn_logical_port_list +## Обзор модуля + +Модуль **decort_sdn_logical_port_list** предназначен для получения списка логических портов SDN, доступных пользователю (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_logical_port_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ access_group_id + + (str) + + По идентификатору группы доступа. +
+ adapter_mac + + (str) + + По MAC-адресу сетевого адаптера. +
+ address_detection + + (bool) + + По признаку включено ли обнаружение адресов. +
+ created_from + + (str) + + По дате создания, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ created_to + + (str) + + По дате создания, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ display_name + + (str) + + По отображаемому имени логического порта. +
+ enabled + + (bool) + + По признаку включён ли логический порт. +
+ external_network_id + + (str) + + По идентификатору внешней сети. +
+ hypervisor + + (str) + + По имени гипервизора. +
+ hypervisor_display_name + + (str) + + По отображаемому имени гипервизора. +
+ hypervisor_status + + (str) +
Значения: +
Up +
Warning +
Error +
+ По статусу гипервизора. +
+ live_migration_target_hv + + (str) + + По целевому гипервизору для live migration. +
+ operation_status + + (str) +
Значения: +
Idle +
SynchronizingAtCore +
SynchronizingAtOVN +
Synchronized +
NoHypervisorAtOVN +
FailedAtCore +
TemporaryFailedAtCore +
+ По статусу обработки логического порта. +
+ port_security + + (bool) + + По признаку включена ли функция Port Security. +
+ segment_display_name + + (str) + + По отображаемому имени SDN-сегмента. +
+ segment_id + + (str) + + По идентификатору SDN-сегмента. +
+ unique_identifier + + (str) + + По уникальному идентификатору логического порта. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страницы. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Направление сортировки. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) +
Значения: +
created_at +
deleted_at +
display_name +
hypervisor +
hypervisor_display_name +
port_security +
primary_address +
segment_display_name +
segment_id +
updated_at +
+ Поле, по которому выполняется сортировка. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_logical_port_list** возвращает список логических портов SDN в ключе `facts`. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str + + Название группы доступа. +
+ adapter_mac + + str + + MAC-адрес адаптера. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ bindings + + dict[str, any] + + Связанные объекты. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ id + + str + + Идентификатор логического порта. +
+ logical_port_addresses + + list[dict[str, any]] + + Список адресов логического порта. +
+ assigned_at + + str + + Дата и время назначения адреса в формате ISO 8601. +
+ id + + str + + Идентификатор адреса логического порта. +
+ ip + + str + + IP-адрес. +
+ ip_type + + str + + Тип IP-адреса. +
+ is_discovered + + bool + + Обнаружен ли адрес автоматически. +
+ is_primary + + bool + + Является ли адрес основным. +
+ logical_port_id + + str + + Идентификатор логического порта. +
+ mac + + str + + MAC-адрес. +
+ port_security + + bool + + Включена ли функция Port Security. +
+ segment_display_name + + str | null + + Отображаемое имя сегмента. +
+ segment_id + + str | null + + Идентификатор сегмента. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ version_id + + int + + Идентификатор версии. +
+ created_at + + str | null + + Дата и время создания в формате ISO 8601. +
+ description + + str + + Описание логического порта. +
+ display_name + + str + + Отображаемое имя логического порта. +
+ enabled + + bool + + Включён ли логический порт. +
+ exclude_firewall + + dict[str, any] + + Исключение из межсетевого экрана. +
+ exclusion_reason + + str + + Причина исключения из межсетевого экрана. +
+ logical_port_addresses_excluded + + bool + + Исключены ли адреса логического порта из межсетевого экрана. +
+ logical_port_excluded + + bool + + Исключён ли логический порт из межсетевого экрана. +
+ external_network_id + + str + + Идентификатор внешней сети. +
+ hypervisor + + str + + Гипервизор. +
+ hypervisor_display_name + + str + + Отображаемое имя гипервизора. +
+ id + + str + + Идентификатор логического порта. +
+ labels + + dict[str, str] + + Метки. +
+ vm_id + + str + + Идентификатор виртуальной машины. +
+ vm_name + + str + + Имя виртуальной машины. +
+ live_migration_target_hv + + str + + Имя гипервизора, выбранного как цель live-миграции. +
+ status + + dict[str, any] + + Статус логического порта и гипервизоров. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ hypervisors + + list[dict[str, any]] + + Список гипервизоров и их статусов. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ name + + str + + Имя гипервизора. +
+ operation_status + + str + + Статус обработки. +
+ synced_at + + str + + Время синхронизации в формате ISO 8601. +
+ operation_status + + str + + Статус обработки. +
+ unique_identifier + + str + + Уникальный идентификатор логического порта. +
+ updated_at + + str | null + + Дата и время последнего обновления в формате ISO 8601. +
+ version_id + + int + + Идентификатор версии объекта. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору группы доступа +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + access_group_id: "{{ access_group_id }}" +``` + +### С фильтрацией по MAC-адресу сетевого адаптера +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + adapter_mac: "52:55:01:4a:e2:76" +``` + +### С фильтрацией по признаку включено ли обнаружение адресов +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + address_detection: false +``` + +### С фильтрацией по дате создания, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + created_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате создания, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + created_to: "2026-04-15T23:59:59Z" +``` + +### С фильтрацией по отображаемому имени логического порта +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + display_name: "{{ display_name }}" +``` + +### С фильтрацией по признаку включён ли логический порт +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + enabled: true +``` + +### С фильтрацией по идентификатору внешней сети +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + external_network_id: "{{ external_network_id }}" +``` + +### С фильтрацией по имени гипервизора +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + hypervisor: "{{ hypervisor }}" +``` + +### С фильтрацией по отображаемому имени гипервизора +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + hypervisor_display_name: "{{ hypervisor_display_name }}" +``` + +### С фильтрацией по статусу гипервизора +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + hypervisor_status: Error +``` + +### С фильтрацией по целевому гипервизору для live migration +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + live_migration_target_hv: "{{ live_migration_target_hv }}" +``` + +### С фильтрацией по статусу обработки логического порта +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + operation_status: NoHypervisorAtOVN +``` + +### С фильтрацией по признаку включена ли функция Port Security +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + port_security: false +``` + +### С фильтрацией по отображаемому имени SDN-сегмента +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + segment_display_name: "{{ segment_display_name }}" +``` + +### С фильтрацией по идентификатору SDN-сегмента +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + segment_id: "{{ segment_id }}" +``` + +### С фильтрацией по уникальному идентификатору логического порта +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + filter: + unique_identifier: "{{ unique_identifier }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + pagination: + size: 10 + number: 2 +``` + +### С сортировкой +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN logical port list + decort_sdn_logical_port_list: + # Параметры для авторизации упущены + sorting: + field: updated_at + asc: false +``` diff --git a/12.0.0/модуль-decort_sdn_network_object_group.md b/12.0.0/модуль-decort_sdn_network_object_group.md new file mode 100644 index 0000000..3a0619b --- /dev/null +++ b/12.0.0/модуль-decort_sdn_network_object_group.md @@ -0,0 +1,1163 @@ +# Модуль decort_sdn_network_object_group +## Обзор модуля + +Модуль **decort_sdn_network_object_group** предназначен для выполнения следующих действий над группами сетевых объектов SDN: +- **получить основную информацию** (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получить-основную-информацию-о-группе-сетевых-объектов)) +- **создать** (см. [примеры](#создать)) +- **изменить** (см. [примеры](#изменить)) + - **описание** (см. [параметр description](#description) и [примеры](#описание)) + - **имя** (см. [параметр name](#param_name) и [примеры](#имя)) + - **удалить все адреса** (см. [параметр no_addresses](#no_addresses) и [примеры](#удалить-все-адреса)) + - **удалить все логические порты** (см. [параметр no_logical_ports](#no_logical_ports) и [примеры](#удалить-все-логические-порты)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_network_object_group** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + access_group_id + + + (str) + + Идентификатор группы доступа. +
+ + no_addresses + + + (bool) + + true - если адреса есть, то они будут удалены. +
+ + description + + + (str) + + Описание группы сетевых объектов. +
+ + no_logical_ports + + + (bool) + + true - если в группе есть логические порты, то они будут удалены из группы. +
+ + name + + + (str) + + Название группы сетевых объектов. +
+ + object_group_id + + + (str) + + Идентификатор группы сетевых объектов. +
+ + version_id + + + (int) + + Идентификатор версии объекта. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_network_object_group** возвращает информацию о группе сетевых объектов в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str + + Название группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ id + + str + + Идентификатор группы сетевых объектов. +
+ name + + str + + Название группы сетевых объектов. +
+ purpose + + str + + Назначение группы сетевых объектов. +
+ type + + str + + Тип группы сетевых объектов. +
+ version_id + + int + + Версия объекта. +
+ description + + str | null + + Описание. +
+ counters + + dict[str, int] + + Количество сетевых объектов в группе. +
+ addresses_count + + int + + Количество адресов. +
+ l2_connection_ports_count + + int + + Количество L2-портов. +
+ logical_ports_count + + int + + Количество логических портов. +
+ security_policies_count + + int + + Количество политик безопасности. +
+ security_rules_count + + int + + Количество правил безопасности. +
+ addresses + + list[dict[str, any]] | null + + Список адресов группы. +
+ id + + str + + Идентификатор адреса. +
+ net_address_type + + str + + Тип сетевого адреса. +
+ ip_addr + + str | null + + IPv4-адрес. +
+ ip_addr_range_end + + str | null + + Конец диапазона IPv4-адресов. +
+ mac_addr + + str | null + + MAC-адрес. +
+ security_policies + + list[dict[str, any]] | null + + Список политик безопасности. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ display_name + + str + + Отображаемое имя. +
+ enabled + + bool + + Включена ли политика. +
+ id + + str + + Идентификатор политики. +
+ type + + str + + Тип политики. +
+ version_id + + int + + Версия политики. +
+ logical_ports + + list[dict[str, any]] | null + + Список логических портов. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str + + Название группы доступа. +
+ adapter_mac + + str + + MAC-адрес адаптера. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ description + + str + + Описание. +
+ display_name + + str + + Отображаемое имя порта. +
+ enabled + + bool + + Включен ли порт. +
+ hypervisor + + str + + Имя гипервизора. +
+ hypervisor_display_name + + str + + Отображаемое имя гипервизора. +
+ id + + str + + Идентификатор логического порта. +
+ unique_identifier + + str + + Уникальный идентификатор порта. +
+ version_id + + int + + Версия логического порта. +
+ labels + + dict[str, str] | null + + Метки логического порта. +
+ vm_id + + str + + Идентификатор виртуальной машины. +
+ vm_name + + str + + Название виртуальной машины. +
+ exclude_firewall + + dict[str, bool] + + Исключения firewall. +
+ logical_port_excluded + + bool + + Исключен ли логический порт. +
+ bindings + + dict[str, any] + + Связанные объекты. +
+ address_detection + + bool + + Включено ли обнаружение адресов. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ id + + str + + Идентификатор. +
+ port_security + + bool + + Включена ли функция Port Security. +
+ segment_id + + str + + Идентификатор сегмента. +
+ version_id + + int + + Версия. +
+ logical_port_addresses + + list[dict[str, any]] | null + + Адреса логического порта. +
+ assigned_at + + str + + Дата и время назначения. +
+ id + + str + + Идентификатор адреса порта. +
+ ip + + str + + IP-адрес. +
+ ip_type + + str + + Тип IP-адреса. +
+ is_discovered + + bool + + Обнаружен ли адрес автоматически. +
+ is_primary + + bool + + Является ли основным. +
+ logical_port_id + + str + + Идентификатор логического порта. +
+ mac + + str + + MAC-адрес. +
+ status + + dict[str, any] + + Статус логического порта. +
+ hypervisor_status + + str + + Статус на гипервизоре. +
+ operation_status + + str + + Статус обработки. +
+ hypervisors + + list[dict[str, any]] + + Статусы по гипервизорам. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ name + + str + + Имя гипервизора. +
+ operation_status + + str + + Статус обработки. +
+ synced_at + + str | null + + Дата и время синхронизации. +
+ +## Примеры использования + +### Получить основную информацию о группе сетевых объектов +``` +- name: Example + hosts: localhost + tasks: + - name: Get network object group info + decort_sdn_network_object_group: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" +``` + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create SDN network object group + decort_sdn_network_object_group: + # Параметры для авторизации упущены + access_group_id: "{{ access_group_id }}" + description: "{{ object_group_description }}" + name: "{{ object_group_name }}" + state: present +``` + +### Изменить + +#### Описание +``` +- name: Example + hosts: localhost + tasks: + - name: Update network object group description + decort_sdn_network_object_group: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + description: "{{ new_description }}" + version_id: "{{ version_id }}" +``` + +#### Имя +``` +- name: Example + hosts: localhost + tasks: + - name: Update network object group name + decort_sdn_network_object_group: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + name: "{{ new_name }}" + version_id: "{{ version_id }}" +``` + +#### Удалить все адреса +``` +- name: Example + hosts: localhost + tasks: + - name: Remove all addresses from network object group + decort_sdn_network_object_group: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + no_addresses: true + version_id: "{{ version_id }}" +``` + +#### Удалить все логические порты +``` +- name: Example + hosts: localhost + tasks: + - name: Remove all logical ports from network object group + decort_sdn_network_object_group: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + no_logical_ports: true + version_id: "{{ version_id }}" +``` diff --git a/12.0.0/модуль-decort_sdn_network_object_group_ip_range.md b/12.0.0/модуль-decort_sdn_network_object_group_ip_range.md new file mode 100644 index 0000000..8718a0a --- /dev/null +++ b/12.0.0/модуль-decort_sdn_network_object_group_ip_range.md @@ -0,0 +1,240 @@ +# Модуль decort_sdn_network_object_group_ip_range +## Обзор модуля + +Модуль **decort_sdn_network_object_group_ip_range** предназначен для выполнения следующих действий над диапазонами IP-адресов в группе сетевых объектов SDN: +- **добавить в группу сетевых объектов** диапазон IP-адресов (см. [параметр state](#state) и [примеры](#добавить)) +- **удалить из группы сетевых объектов** диапазон IP-адресов (см. [параметр state](#state) и [примеры](#удалить)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_network_object_group_ip_range** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + ip_addr_range + + + (dict) + + Диапазон IP-адресов. Обязательный параметр. +
+ start + + (str) + + Начало диапазона IP-адресов. Обязательный параметр. +
+ end + + (str) + + Конец диапазона IP-адресов. +
+ + ip_proto + + + (str) +
Значения: +
IPv4 +
IPv6 +
+ Протокол IP. Обязательный параметр при добавлении диапазона IP-адресов. +
+ + net_prefix + + + (str) + + Сетевой префикс. +
+ + object_group_id + + + (str) + + Идентификатор группы сетевых объектов. Обязательный параметр. +
+ + state + + + (str) +
Значения: +
present +
absent +
+ Целевое состояние диапазона IP-адресов. +
present - существует в группе сетевых объектов. Если указанный диапазон IP-адресов отсутствует, будет добавлен. +
absent - отсутствует в группе сетевых объектов. Если указанный диапазон IP-адресов существует, будет удалён. +
Обязательный параметр. +
+ +## Возвращаемые значения +Модуль **decort_sdn_network_object_group_ip_range** возвращает информацию о диапазоне IP-адресов в виде словаря `facts` со следующими ключами. + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип
данных +
+ Описание +
+ id + + str + + Идентификатор диапазона IP-адресов. +
+ ip_addr + + str + + Начало диапазона IP-адресов. +
+ ip_addr_range_end + + str | null + + Конец диапазона IP-адресов. +
+ net_address_type + + str + + Протокол IP. +
+ +## Примеры использования + +### Добавить +``` +- name: Example + hosts: localhost + tasks: + - name: Add address range to network object group + decort_sdn_network_object_group_ip_range: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + ip_addr_range: + start: "{{ start }}" + ip_proto: "{{ ip_proto }}" + state: present +``` + +#### С указанием конца диапазона +``` +- name: Example + hosts: localhost + tasks: + - name: Add address range with end to network object group + decort_sdn_network_object_group_ip_range: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + ip_addr_range: + start: "{{ start }}" + end: "{{ end }}" + ip_proto: "{{ ip_proto }}" + state: present +``` + +#### С указанием сетевого префикса +``` +- name: Example + hosts: localhost + tasks: + - name: Add address range with net prefix to network object group + decort_sdn_network_object_group_ip_range: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + ip_addr_range: + start: "{{ start }}" + ip_proto: "{{ ip_proto }}" + net_prefix: "{{ net_prefix }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Remove address range from network object group + decort_sdn_network_object_group_ip_range: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + ip_addr_range: + start: "{{ start }}" + ip_proto: "{{ ip_proto }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_sdn_network_object_group_logical_port.md b/12.0.0/модуль-decort_sdn_network_object_group_logical_port.md new file mode 100644 index 0000000..22794bf --- /dev/null +++ b/12.0.0/модуль-decort_sdn_network_object_group_logical_port.md @@ -0,0 +1,134 @@ +# Модуль decort_sdn_network_object_group_logical_port +## Обзор модуля + +Модуль **decort_sdn_network_object_group_logical_port** предназначен для выполнения следующих действий над логическим портом в группе сетевых объектов: +- **добавить в группу сетевых объектов** (см. [параметр state](#state) и [примеры](#добавить-в-группу-сетевых-объектов)) +- **удалить из группы сетевых объектов** (см. [параметр state](#state) и [примеры](#удалить-из-группы-сетевых-объектов)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_network_object_group_logical_port** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + object_group_id + + + (str) + + Идентификатор группы сетевых объектов. +
+ + access_group_id + + + (str) + + Идентификатор группы доступа. +
+ + version_id + + + (int) + + Идентификатор версии группы сетевых объектов. +
+ + logical_port_id + + + (str) + + Идентификатор логического порта. +
+ + logical_port_version + + + (int) + + Версия логического порта. +
+ + state + + + (str) +
Значения: +
present +
absent +
+ Целевое состояние логического порта в группе сетевых объектов. +
present - находится в группе. +
absent - отсутствует в группе. +
+ +## Примеры использования + +### Добавить в группу сетевых объектов +``` +- name: Example + hosts: localhost + tasks: + - name: Add logical port to network object group + decort_sdn_network_object_group_logical_port: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + access_group_id: "{{ access_group_id }}" + version_id: "{{ version_id }}" + logical_port_id: "{{ logical_port_id }}" + logical_port_version: "{{ logical_port_version }}" + state: present +``` + +### Удалить из группы сетевых объектов +``` +- name: Example + hosts: localhost + tasks: + - name: Remove logical port from network object group + decort_sdn_network_object_group_logical_port: + # Параметры для авторизации упущены + object_group_id: "{{ object_group_id }}" + access_group_id: "{{ access_group_id }}" + version_id: "{{ version_id }}" + logical_port_id: "{{ logical_port_id }}" + logical_port_version: "{{ logical_port_version }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_sdn_network_object_group_mac.md b/12.0.0/модуль-decort_sdn_network_object_group_mac.md new file mode 100644 index 0000000..3ab0667 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_network_object_group_mac.md @@ -0,0 +1,140 @@ +# Модуль decort_sdn_network_object_group_mac +## Обзор модуля + +Модуль **decort_sdn_network_object_group_mac** предназначен для выполнения следующих действий над MAC-адресами в группе сетевых объектов SDN: +- **добавить в группу сетевых объектов** (см. [параметр state](#state) и [примеры](#добавить)) +- **удалить из группы сетевых объектов** (см. [параметр state](#state) и [примеры](#удалить)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_network_object_group_mac** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + mac + + + (str) + + MAC-адрес. Обязательный параметр. +
+ + network_object_group_id + + + (str) + + Идентификатор группы сетевых объектов. Обязательный параметр. +
+ + state + + + (str) +
Значения: +
present +
absent +
+ Целевое состояние MAC-адреса. +
present - существует в группе сетевых объектов. Если указанный MAC-адрес отсутствует, будет добавлен. +
absent - отсутствует в группе сетевых объектов. Если указанный MAC-адрес существует, будет удалён. +
Обязательный параметр. +
+ +## Возвращаемые значения +Модуль **decort_sdn_network_object_group_mac** возвращает информацию о MAC-адресе в виде словаря `facts` со следующими ключами. + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип
данных +
+ Описание +
+ id + + str + + Идентификатор MAC-адреса. +
+ mac + + str + + MAC-адрес. +
+ net_address_type + + str + + Тип адреса. +
+ +## Примеры использования + +### Добавить +``` +- name: Example + hosts: localhost + tasks: + - name: Add MAC address to network object group + decort_sdn_network_object_group_mac: + # Параметры для авторизации упущены + network_object_group_id: "{{ network_object_group_id }}" + mac: "{{ mac }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Remove MAC address from network object group + decort_sdn_network_object_group_mac: + # Параметры для авторизации упущены + network_object_group_id: "{{ network_object_group_id }}" + mac: "{{ mac }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_sdn_segment.md b/12.0.0/модуль-decort_sdn_segment.md new file mode 100644 index 0000000..695dad3 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_segment.md @@ -0,0 +1,1286 @@ +# Модуль decort_sdn_segment +## Обзор модуля + +Модуль **decort_sdn_segment** предназначен для выполнения следующих действий над сегментами: +- **получить основную информацию** (см. [возвращаемые значения](#основная-информация) и [примеры](#получить-основную-информацию-о-сегменте)) +- **создать** (см. [примеры](#создать)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) + - **удалить принудительно** (см. [параметр state](#state) и [примеры](#удалить-принудительно)) +- **изменить** (см. [примеры](#изменить)) + - **описание** (см. [параметр description](#description) и [примеры](#описание)) + - **имя** (см. [параметр display_name](#display_name) и [примеры](#имя)) + - **подсеть v4** (см. [параметр subnet_v4](#subnet_v4) и [примеры](#подсеть-v4)) + - **подсеть v6** (см. [параметр subnet_v6](#subnet_v6) и [примеры](#подсеть-v6)) + - **включить** (см. [параметр state](#state) и [примеры](#включить)) + - **выключить** (см. [параметр state](#state) и [примеры](#выключить)) + - **конфигурация DHCPv4** (см. [конфигурация dhcp_v4](#dhcp_v4) и [примеры](#конфигурация-DHCPv4)) + - **конфигурация DHCPv6** (см. [конфигурация dhcp_v6](#dhcp_v6) и [примеры](#конфигурация-DHCPv6)) + - **тип** (см. [параметр type](#type) и [примеры](#тип)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_segment** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + access_group_id + + + (str) + + Идентификатор группы доступа. +
+ + description + + + (str) + + Описание сегмента. +
+ + dhcp_v4 + + + (dict) + + Настройки DHCPv4. +
+ dns + + (list[str]) + + Список DNS-серверов IPv4. +
+ excluded_address_ranges + + (list[str]) + + Список IPv4-диапазонов, исключенных из выдачи. +
+ gateway + + (str) + + IPv4-адрес шлюза. +
+ id + + (str) + + Идентификатор конфигурации DHCPv4. +
+ lease_time + + (int) + + Время аренды адреса в секундах. +
+ server_ip + + (str) + + IPv4-адрес DHCP-сервера. +
+ server_mac + + (str) + + MAC-адрес DHCP-сервера. +
+ enabled + + (bool) + + Включён ли DHCPv4. +
+ + dhcp_v6 + + + (dict) + + Настройки DHCPv6. +
+ address_prefix + + (str) + + IPv6-префикс подсети, из которой выдаются адреса. +
+ dns + + (list[str]) + + Список DNS-серверов IPv6. +
+ id + + (str) + + Идентификатор конфигурации DHCPv6. +
+ lease_time + + (int) + + Время аренды адреса в секундах. +
+ server_mac + + (str) + + MAC-адрес DHCPv6-сервера. +
+ enabled + + (bool) + + Включён ли DHCPv6. +
+ + display_name + + + (str) + + Отображаемое имя сегмента. +
+ + segment_id + + + (str) + + Идентификатор сегмента. +
+ + state + + + (str) +
Значения: +
absent +
absent_force +
disabled +
enabled +
present +
+ Целевое состояние сегмента. +
absent - отсутствует. Если существует, будет удалён. +
absent_force - отсутствует. Если существует, будет удалён принудительно. +
disabled - выключен. Если включён, будет выключен. +
enabled - включён. Если выключен, будет включён. +
present - существует. Если отсутствует, будет создан. +
Значение по умолчанию, если объект не найден: present. +
+ + subnet_v4 + + + (str) + + Подсеть IPv4. +
+ + subnet_v6 + + + (str) + + Подсеть IPv6. +
+ + type + + + (str) +
Значения: +
User +
ExtNet +
+ Тип сегмента. +
+ + version_id + + + (int) + + Идентификатор версии. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_segment** возвращает информацию о сегменте в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str | null + + Название группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ description + + str + + Описание сегмента. +
+ dhcp_v4 + + dict[str, any] | null + + Конфигурация DHCP для IPv4. +
+ dns + + list[str] | null + + Список DNS-серверов IPv4. +
+ excluded_address_ranges + + list[str] | null + + Список исключённых IPv4-адресов/диапазонов. +
+ gateway + + str + + IPv4-адрес шлюза. +
+ id + + str | null + + Идентификатор конфигурации DHCPv4. +
+ lease_time + + int | null + + Время аренды адреса в секундах. +
+ server_ip + + str + + IPv4-адрес DHCP-сервера. +
+ server_mac + + str | null + + MAC-адрес DHCP-сервера. +
+ enabled + + bool | null + + Включён ли DHCPv4. +
+ dhcp_v6 + + dict[str, any] | null + + Конфигурация DHCP для IPv6. +
+ address_prefix + + str + + 64-битный IPv6-префикс адресов. +
+ dns + + list[str] | null + + Список DNS-серверов IPv6. +
+ id + + str | null + + Идентификатор конфигурации DHCPv6. +
+ lease_time + + int | null + + Время аренды адреса в секундах. +
+ server_mac + + str | null + + MAC-адрес DHCP-сервера. +
+ enabled + + bool | null + + Включён ли DHCPv6. +
+ display_name + + str + + Отображаемое имя сегмента. +
+ enabled + + bool + + Включён ли сегмент. +
+ id + + str + + Идентификатор сегмента. +
+ l2_connection_port + + dict[str, any] | null + + Параметры L2-подключения к внешней сети. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ created_by + + str + +
+ id + + str + + Идентификатор порта подключения. +
+ l2_external_network + + dict[str, any] + + Параметры внешней L2-сети. +
+ bridge_network_name + + str + + Имя сетевого моста. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ created_by + + str + +
+ description + + str + + Описание внешней сети. +
+ display_name + + str + + Отображаемое имя внешней сети. +
+ hypervisors + + list[str] + + Список идентификаторов гипервизоров. +
+ id + + str + + Идентификатор внешней L2-сети. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ updated_by + + str + +
+ version_id + + int + + Идентификатор версии объекта. +
+ updated_at + + str + + Дата и время последнего обновления в формате ISO 8601. +
+ updated_by + + str + +
+ version_id + + int + + Идентификатор версии объекта. +
+ logical_ports_info + + list[dict[str, any]] | null + + Список логических портов, привязанных к сегменту. +
+ display_name + + str + + Отображаемое имя логического порта. +
+ id + + str + + Идентификатор логического порта. +
+ routers_info + + list[dict[str, any]] | null + + Список маршрутизаторов, связанных с сегментом. +
+ display_name + + str + + Отображаемое имя маршрутизатора. +
+ id + + str + + Идентификатор маршрутизатора. +
+ status + + dict[str, any] | null + + Статус. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ hypervisors + + list[dict[str, any]] + + Список гипервизоров и их статусов. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ name + + str + + Имя гипервизора. +
+ operation_status + + str + + Статус обработки. +
+ synced_at + + str + + Время синхронизации в формате ISO 8601. +
+ operation_status + + str + + Статус обработки. +
+ subnet_v4 + + str | null + + Подсеть IPv4. +
+ subnet_v6 + + str | null + + Подсеть IPv6. +
+ type + + str + + Тип сегмента. +
+ updated_at + + str + + Дата и время последнего обновления в формате ISO 8601. +
+ version_id + + int + + Идентификатор версии объекта. +
+ +## Примеры использования + +### Получить основную информацию о сегменте +``` +- name: Example + hosts: localhost + tasks: + - name: Get segment info + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" +``` + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create SDN segment + decort_sdn_segment: + # Параметры для авторизации упущены + access_group_id: "{{ access_group_id }}" + description: "{{ description }}" + display_name: "{{ display_name }}" + subnet_v4: "{{ subnet_v4 }}" + dhcp_v4: + enabled: true + gateway: "{{ dhcp_v4_gateway }}" + lease_time: "{{ dhcp_v4_lease_time }}" + server_ip: "{{ dhcp_v4_server_ip }}" + type: User + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN segment + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + state: absent +``` + +### Удалить принудительно +``` +- name: Example + hosts: localhost + tasks: + - name: Delete SDN segment + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + state: absent_force +``` + +### Изменить + +#### Описание +``` +- name: Example + hosts: localhost + tasks: + - name: Update segment description + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + description: "{{ description }}" +``` + +#### Имя +``` +- name: Example + hosts: localhost + tasks: + - name: Update segment display name + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + display_name: "{{ display_name }}" +``` + +#### Подсеть v4 +``` +- name: Example + hosts: localhost + tasks: + - name: Update IPv4 subnet + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + subnet_v4: "{{ subnet_v4 }}" +``` + +#### Подсеть v6 +``` +- name: Example + hosts: localhost + tasks: + - name: Update IPv6 subnet + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + subnet_v6: "{{ subnet_v6 }}" +``` + +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable segment + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + state: enabled +``` + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable segment + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + state: disabled +``` + +#### Конфигурация DHCPv4 +``` +- name: Example + hosts: localhost + tasks: + - name: Update DHCPv4 settings + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + dhcp_v4: + enabled: true + gateway: "{{ dhcp_v4_gateway }}" + lease_time: "{{ dhcp_v4_lease_time }}" + server_ip: "{{ dhcp_v4_server_ip }}" +``` + +#### Конфигурация DHCPv6 +``` +- name: Example + hosts: localhost + tasks: + - name: Update DHCPv6 settings + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + dhcp_v6: + enabled: true + lease_time: "{{ dhcp_v6_lease_time }}" + server_ip: "{{ dhcp_v6_server_ip }}" +``` + +#### Тип +``` +- name: Example + hosts: localhost + tasks: + - name: Update segment type + decort_sdn_segment: + # Параметры для авторизации упущены + segment_id: "{{ segment_id }}" + type: "{{ type }}" +``` diff --git a/12.0.0/модуль-decort_sdn_segment_list.md b/12.0.0/модуль-decort_sdn_segment_list.md new file mode 100644 index 0000000..28f75f4 --- /dev/null +++ b/12.0.0/модуль-decort_sdn_segment_list.md @@ -0,0 +1,1152 @@ +# Модуль decort_sdn_segment_list +## Обзор модуля + +Модуль **decort_sdn_segment_list** предназначен для получения списка SDN-сегментов, доступных пользователю (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_sdn_segment_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ enabled + + (bool) + + По признаку включён ли сегмент. +
+ is_synced + + (bool) + + По признаку синхронизирован ли сегмент. +
+ display_name + + (str) + + По отображаемому имени сегмента. +
+ subnet + + (str) + + По подсети сегмента. +
+ access_group_id + + (str) + + По идентификатору группы доступа. +
+ created_from + + (str) + + По дате создания, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ created_to + + (str) + + По дате создания, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ updated_from + + (str) + + По дате обновления, не ранее указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ updated_to + + (str) + + По дате обновления, до указанной. +
Формат: YYYY-MM-DDTHH:MM:SSZ. +
+ operation_status + + (str) +
Значения: +
Idle +
SynchronizingAtCore +
SynchronizingAtOVN +
Synchronized +
NoHypervisorAtOVN +
FailedAtCore +
TemporaryFailedAtCore +
+ По статусу обработки сегмента. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страницы. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Направление сортировки. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) +
Значения: +
display_name +
subnet +
created_at +
updated_at +
+ Поле, по которому выполняется сортировка. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_sdn_segment_list** возвращает список SDN-сегментов в ключе `facts`. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ access_group_name + + str | null + + Название группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ description + + str + + Описание сегмента. +
+ dhcp_v4 + + dict[str, any] | null + + Конфигурация DHCP для IPv4. +
+ dns + + list[str] | null + + Список DNS-серверов IPv4. +
+ excluded_address_ranges + + list[str] | null + + Список исключённых IPv4-адресов/диапазонов. +
+ gateway + + str + + IPv4-адрес шлюза. +
+ id + + str | null + + Идентификатор конфигурации DHCPv4. +
+ lease_time + + int | null + + Время аренды адреса в секундах. +
+ server_ip + + str + + IPv4-адрес DHCP-сервера. +
+ server_mac + + str | null + + MAC-адрес DHCP-сервера. +
+ enabled + + bool | null + + Включён ли DHCPv4. +
+ dhcp_v6 + + dict[str, any] | null + + Конфигурация DHCP для IPv6. +
+ address_prefix + + str + + 64-битный IPv6-префикс адресов. +
+ dns + + list[str] | null + + Список DNS-серверов IPv6. +
+ id + + str | null + + Идентификатор конфигурации DHCPv6. +
+ lease_time + + int | null + + Время аренды адреса в секундах. +
+ server_mac + + str | null + + MAC-адрес DHCP-сервера. +
+ enabled + + bool | null + + Включён ли DHCPv6. +
+ display_name + + str + + Отображаемое имя сегмента. +
+ enabled + + bool + + Включён ли сегмент. +
+ id + + str + + Идентификатор сегмента. +
+ l2_connection_port + + dict[str, any] | null + + Параметры L2-подключения к внешней сети. +
+ access_group_id + + str + + Идентификатор группы доступа. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ created_by + + str + +
+ id + + str + + Идентификатор порта подключения. +
+ l2_external_network + + dict[str, any] + + Параметры внешней L2-сети. +
+ bridge_network_name + + str + + Имя сетевого моста. +
+ created_at + + str + + Дата и время создания в формате ISO 8601. +
+ created_by + + str + +
+ description + + str + + Описание внешней сети. +
+ display_name + + str + + Отображаемое имя внешней сети. +
+ hypervisors + + list[str] + + Список идентификаторов гипервизоров. +
+ id + + str + + Идентификатор внешней L2-сети. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ updated_by + + str + +
+ version_id + + int + + Идентификатор версии объекта. +
+ updated_at + + str + + Дата и время обновления в формате ISO 8601. +
+ updated_by + + str + +
+ version_id + + int + + Идентификатор версии объекта. +
+ logical_ports_info + + list[dict[str, any]] | null + + Список логических портов, привязанных к сегменту. +
+ display_name + + str + + Отображаемое имя логического порта. +
+ id + + str + + Идентификатор логического порта. +
+ routers_info + + list[dict[str, any]] | null + + Список маршрутизаторов, связанных с сегментом. +
+ display_name + + str + + Отображаемое имя маршрутизатора. +
+ id + + str + + Идентификатор маршрутизатора. +
+ status + + dict[str, any] | null + + Статус. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ hypervisors + + list[dict[str, any]] + + Список гипервизоров с деталями синхронизации. +
+ display_name + + str + + Отображаемое имя гипервизора. +
+ hypervisor_status + + str + + Статус гипервизора. +
+ name + + str + + Имя гипервизора. +
+ operation_status + + str + + Статус обработки. +
+ synced_at + + str | null + + Время синхронизации в формате ISO 8601. +
+ operation_status + + str + + Статус обработки. +
+ subnet_v4 + + str | null + + Подсеть IPv4. +
+ subnet_v6 + + str | null + + Подсеть IPv6. +
+ type + + str + + Тип сегмента. +
+ updated_at + + str + + Дата и время последнего обновления в формате ISO 8601. +
+ version_id + + int + + Идентификатор версии объекта. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по признаку включён ли сегмент +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + enabled: true +``` + +### С фильтрацией по признаку синхронизирован ли сегмент +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + is_synced: true +``` + +### С фильтрацией по отображаемому имени сегмента +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + display_name: "{{ display_name }}" +``` + +### С фильтрацией по подсети сегмента +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + subnet: "{{ subnet }}" +``` + +### С фильтрацией по идентификатору группы доступа +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + access_group_id: "{{ access_group_id }}" +``` + +### С фильтрацией по дате создания, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + created_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате создания, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + created_to: "2026-04-15T23:59:59Z" +``` + +### С фильтрацией по дате обновления, не ранее указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + updated_from: "2026-04-15T00:00:00Z" +``` + +### С фильтрацией по дате обновления, до указанной +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + updated_to: "2026-04-15T23:59:59Z" +``` + +### С фильтрацией по статусу обработки сегмента +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + filter: + operation_status: Synchronized +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + pagination: + size: 10 + number: 2 +``` + +### С сортировкой +``` +- name: Example + hosts: localhost + tasks: + - name: Get SDN segment list + decort_sdn_segment_list: + # Параметры для авторизации упущены + sorting: + field: updated_at + asc: false +``` diff --git a/12.0.0/модуль-decort_security_group.md b/12.0.0/модуль-decort_security_group.md new file mode 100644 index 0000000..95f8d0a --- /dev/null +++ b/12.0.0/модуль-decort_security_group.md @@ -0,0 +1,632 @@ +# Модуль decort_security_group +## Обзор модуля + +Модуль **decort_security_group** предназначен для выполнения следующих действий над группой безопасности: +- **получить информацию** (см. [примеры](#получить-информацию)) +- **создать** (см. [примеры](#создать)) + - **с указанием описания** (см. [параметр description](#description) и [примеры](#с-указанием-описания)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) +- **изменить** (см. [примеры](#изменить)) + - **название** (см. [параметр name](#param_name) и [примеры](#название)) + - **описание** (см. [параметр description](#description) и [примеры](#описание)) + - **правила** (см. [параметр rules](#rules) и [примеры](#правила)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_security_group** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ account_id + + (int) + + Идентификатор аккаунта. Обязательный при создании.
Не поддерживается изменение для существующей группы безопасности. +
+ + description + + + (str) + + Описание. +
+ id + + (int) + + Идентификатор. +
+ + name + + + (str) + + Название. Обязательный при создании. +
+ + rules + + + (dict) + + Словарь, описывающий правила группы безопасности. +
+ mode + + (str) +
Значения: +
delete +
match +
update +
Default: update +
+ Режим работы параметра. +
delete - указанные управила отсутствуют. +
match - существуют только указанные правила. +
update - указанные правила существуют. +
+ objects + + (list) + + Cписок словарей, описывающих целевые правила. +
+ direction + + (str) +
Значения: +
INBOUND +
OUTBOUND +
+ Направление трафика. Обязательный параметр. +
+ ethertype + + (str) +
Значения: +
IPV4 +
IPV6 +
+ Протокол, инкапсулированный в Ethernet-кадр.
Значение по умолчанию при создании правила: IPV4 +
+ id + + (int) + + Идентификатор правила. +
+ port_range + + (dict) + + Диапазон портов TCP/UDP. +
+ min + + (int) + + Нижняя граница диапазона. +
+ max + + (int) + + Верхняя граница диапазона. +
+ protocol + + (str) +
Значения: +
ICMP +
TCP +
UDP +
+ Протокол, инкапсулированный в IP-пакет. +
+ remote_net_cidr + + (str) + + Подсеть, в которую должен входить IP-адрес удалённого хоста. +
+ + state + + + (str) +
Значения: +
absent +
present +
+ Целевое состояние. +
absent - безвозвратно удалён или не существует. +
present - существует и не удалён. +
Значение по умолчанию, если объект не найден: present +
+ +## Возвращаемые значения + +Модуль **decort_security_group** возвращает информацию о группе безопасности в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ created_by + + str + + Пользователь, создавший объект. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ description + + str + + Описание. +
+ id + + int + + Идентификатор. +
+ name + + str + + Название. +
+ rules + + list + + Список словарей, описывающих правила. +
+ direction + + str + + Направление трафика. +
+ ethertype + + str + + Протокол, инкапсулированный в Ethernet-кадр. +
+ id + + int + + Идентификатор правила. +
+ port_range + + dict + + Диапазон портов TCP/UDP. +
+ min + + int + + Нижняя граница диапазона. +
+ max + + int + + Верхняя граница диапазона. +
+ protocol + + str | null + + Протокол, инкапсулированный в IP-пакет. +
+ remote_net_cidr + + str + + Подсеть, в которую должен входить IP-адрес удалённого хоста. +
+ updated_by + + str + + Пользователь, обновивший объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ +## Примеры использования + +### Получить информацию +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group info + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" +``` + +### Создать +``` +- name: Example + hosts: localhost + tasks: + - name: Create security group + decort_security_group: + # Параметры для авторизации упущены + account_id: "{{ account_id }}" + name: "{{ security_group_name }}" + state: present +``` + +#### С указанием описания +``` +- name: Example + hosts: localhost + tasks: + - name: Create security group with description + decort_security_group: + # Параметры для авторизации упущены + account_id: "{{ account_id }}" + name: "{{ security_group_name }}" + description: "{{ description }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete security group + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + state: absent +``` + +### Изменить +#### Название +``` +- name: Example + hosts: localhost + tasks: + - name: Change security group name + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + name: "{{ new_security_group_name }}" +``` + +#### Описание +``` +- name: Example + hosts: localhost + tasks: + - name: Change security group description + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + description: "{{ new_security_group_description }}" +``` + +#### Правила +#### Обновить +``` +- name: Example + hosts: localhost + tasks: + - name: Update security group rules + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + rules: + mode: update + objects: + - direction: "{{ rule1_direction }}" + ethertype: "{{ rule1_ethertype }}" + port_range: + min: "{{ rule1_port_min }}" + max: "{{ rule1_port_max }}" + protocol: "{{ rule1_protocol }}" + remote_net_cidr: "{{ rule1_remote_net_cidr }}" + - direction: "{{ rule2_direction }}" + ethertype: "{{ rule2_ethertype }}" + port_range: + min: "{{ rule2_port_min }}" + max: "{{ rule2_port_max }}" + protocol: "{{ rule2_protocol }}" + remote_net_cidr: "{{ rule2_remote_net_cidr }}" +``` + +#### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete security group rules + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + rules: + mode: delete + objects: + - id: "{{ rule_id }}" +``` + +#### Привести в соответствие +``` +- name: Example + hosts: localhost + tasks: + - name: Match security group rules + decort_security_group: + # Параметры для авторизации упущены + id: "{{ security_group_id }}" + mode: match + objects: + - id: "{{ rule1_id }}" + - id: "{{ rule2_id }}" + - direction: "{{ rule3_direction }}" + ethertype: "{{ rule3_ethertype }}" + port_range: + min: "{{ rule3_port_min }}" + max: "{{ rule3_port_max }}" + protocol: "{{ rule3_protocol }}" + remote_net_cidr: "{{ rule3_remote_net_cidr }}" +``` diff --git a/12.0.0/модуль-decort_security_group_list.md b/12.0.0/модуль-decort_security_group_list.md new file mode 100644 index 0000000..554fb53 --- /dev/null +++ b/12.0.0/модуль-decort_security_group_list.md @@ -0,0 +1,568 @@ +# Модуль decort_security_group_list +## Обзор модуля + +Модуль **decort_security_group_list** предназначен для получения списка доступных пользователю групп безопасности (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_security_group_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ created_after_timestamp + + (int) + + Созданные после заданной временной метки. +
+ created_before_timestamp + + (int) + + Созданные до заданной временной метки. +
+ description + + (str) + + По описанию. +
+ id + + (int) + + По идентификатору. +
+ name + + (str) + + По имени. +
+ updated_after_timestamp + + (int) + + Обновленные после заданной временной метки. +
+ updated_before_timestamp + + (int) + + Обновленные до заданной временной метки. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_security_group_list** возвращает информацию о доступных группах безопасности в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ created_by + + str + + Имя пользователя, создавшего группу безопасности. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ description + + str + + Описание. +
+ id + + int + + Идентификатор. +
+ name + + str + + Название. +
+ rules + + list[dict[str, any]] + + Список словарей, описывающих правила. +
+ ethertype + + str + + Протокол, инкапсулированный в Ethernet-кадр. +
+ id + + int + + Идентификатор. +
+ port_range_max + + int | null + + Верхняя граница диапазона портов TCP/UDP. +
+ port_range_min + + int | null + + Нижняя граница диапазона портов TCP/UDP. +
+ protocol + + str | null + + Протокол, инкапсулированный в IP-пакет. +
+ remote_group_id + + str | null + + Идентификатор удалённой группы хостов. +
+ remote_net_cidr + + str | null + + Подсеть, в которую должен входить IP-адрес удалённого хоста. +
+ direction + + str + + Направление трафика. +
+ updated_by + + str | null + + Имя пользователя, обновившего группу безопасности. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int | null + + Unix-время обновления. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по созданным после заданной временной метки. +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + created_after_timestamp: "{{ created_after_timestamp }}" +``` + +### С фильтрацией по созданным до заданной временной метки. +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + created_before_timestamp: "{{ created_before_timestamp }}" +``` + +### С фильтрацией по описанию +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + description: "{{ description }}" +``` + +### С фильтрацией по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по обновленным после заданной временной метки. +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + updated_after_timestamp: "{{ updated_after_timestamp }}" +``` + +### С фильтрацией по обновленным до заданной временной метки. +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + filter: + updated_before_timestamp: "{{ updated_before_timestamp }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get security group list + decort_security_group_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_storage_policy.md b/12.0.0/модуль-decort_storage_policy.md new file mode 100644 index 0000000..a23c9ac --- /dev/null +++ b/12.0.0/модуль-decort_storage_policy.md @@ -0,0 +1,220 @@ +# Модуль decort_storage_policy +## Обзор модуля + +Модуль **decort_storage_policy** предназначен для получения информации о политике хранения (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получение-информации-о-политике-хранения)). + + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_storage_policy** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + +
ПараметрТипОписание
+ + id + + + (int) + + Идентификатор политики хранения. +
+ +## Возвращаемые значения +Модуль **decort_storage_policy** возвращает информацию о политике хранения в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ description + + str + + Описание. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ iops_limit + + int + + Ограничение ввода/вывода. +
+ name + + str + + Название. +
+ sep_pools + + list + + Список словарей, описывающих пулы СХД. +
+ pool_names + + list[str] + + Список названий пулов системы хранения данных. +
+ sep_id + + int + + Идентификатор системы хранения данных. +
+ sep_name + + str | null + + Название системы хранения данных. +
+ sep_tech_status + + str + + Технический статус системы хранения данных. +
+ status + + str + + Статус. +
+ usage + + dict + + Тенанты, для которых добавлена политика хранения. +
+ account_ids + + list + + Список идентификаторов аккаунтов, для которых добавлена политика. +
+ rg_ids + + list + + Список идентификаторов ресурсных групп, для которых добавлена политика. +
+ +## Примеры использования + +### Получение информации о политике хранения +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy info + decort_storage_policy: + # Параметры для авторизации упущены + id: 1 +``` diff --git a/12.0.0/модуль-decort_storage_policy_list.md b/12.0.0/модуль-decort_storage_policy_list.md new file mode 100644 index 0000000..14dcfb0 --- /dev/null +++ b/12.0.0/модуль-decort_storage_policy_list.md @@ -0,0 +1,577 @@ +# Модуль decort_storage_policy_list +## Обзор модуля + +Модуль **decort_storage_policy_list** предназначен для получения списка доступных пользователю политик хранения (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_storage_policy_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ description + + (str) + + По описанию. +
+ id + + (int) + + По идентификатору. +
+ iops_limit + + (int) + + По ограничению ввода/вывода. +
+ name + + (str) + + По имени. +
+ rg_id + + (int) + + По идентификатору ресурсной группы. +
+ sep_id + + (int) + + По идентификатору системы хранения данных. +
+ sep_pool_name + + (str) + + По названию пула системы хранения данных. +
+ status + + (str) +
Значения: +
DISABLED +
ENABLED +
+ По статусу. +
+ sep_tech_status + + (str) +
Значения: +
DISABLED +
ENABLED +
+ По техническому статусу системы хранения данных. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_storage_policy_list** возвращает информацию о доступных политиках хранения в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ sep_pools + + list + + Список словарей, описывающих пулы СХД. +
+ pool_names + + list[str] + + Список названий пулов системы хранения данных. +
+ sep_id + + int + + Идентификатор системы хранения данных. +
+ sep_name + + str | null + + Имя системы хранения данных. +
+ sep_tech_status + + str | null + + Технический статус системы хранения данных. +
+ description + + str + + Описание. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ iops_limit + + int + + Ограничение ввода/вывода. +
+ name + + str + + Название. +
+ status + + str + + Статус. +
+ usage + + dict[str, list[int]] + + Тенанты, для которых добавлена политика хранения. +
+ account_ids + + list[int] + + Список идентификаторов аккаунтов. +
+ rg_ids + + list[int] + + Список идентификаторов ресурсных групп. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по описанию +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + description: "{{ description }}" +``` + +### С фильтрацией по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по ограничению ввода/вывода. +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + iops_limit: "{{ iops_limit }}" +``` + +### С фильтрацией по имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по идентификатору ресурсной группы +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + rg_id: "{{ rg_id }}" +``` + +### С фильтрацией по идентификатору системы хранения данных +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + sep_id: "{{ sep_id }}" +``` + +### С фильтрацией по названию пула системы хранения данных +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + sep_pool_name: "{{ sep_pool_name }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по техническому статусу системы хранения данных +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + filter: + sep_tech_status: "{{ sep_tech_status }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + pagination: + size: 2 + number: 1 +``` + +### С сортировкой по идентификатору по возрастанию +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + sorting: + field: id +``` + +### С сортировкой по идентификатору по убыванию +``` +- name: Example + hosts: localhost + tasks: + - name: Get storage policy list + decort_storage_policy_list: + # Параметры для авторизации упущены + sorting: + asc: false + field: id +``` diff --git a/12.0.0/модуль-decort_trunk.md b/12.0.0/модуль-decort_trunk.md new file mode 100644 index 0000000..dab0758 --- /dev/null +++ b/12.0.0/модуль-decort_trunk.md @@ -0,0 +1,281 @@ +# Модуль decort_trunk +## Обзор модуля + +Модуль **decort_trunk** предназначен для получения информации о транковом порте (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получение-информации-о-транковом-порте)). + + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_trunk** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + +
ПараметрТипОписание
+ + id + + + (int) + + Идентификатор транкового порта. +
+ +## Возвращаемые значения + +Модуль **decort_trunk** возвращает информацию о транковом порте в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_ids + + list[int] | null + + Список идентификаторов аккаунтов. +
+ created_by + + str + + Пользователь, создавший объект. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str | null + + Пользователь, удаливший объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int | null + + Unix-время удаления. +
+ description + + str + + Описание. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ mac + + str + + MAC-адрес. +
+ mtu + + int + + MTU интерфейса. +
+ name + + str + + Название. +
+ native_vlan_id + + int | null + + Идентификатор VLAN для нетегированного трафика. +
+ ovs_bridge + + str + + Сетевой мост Open vSwitch. +
+ status + + str + + Статус. +
+ updated_by + + str | null + + Пользователь, обновивший объект. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int | null + + Unix-время обновления. +
+ vlan_ids + + str + + Строка со списком идентификаторов VLAN. +
+ +## Примеры использования + +### Получение информации о транковом порте +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk info + decort_trunk: + # Параметры для авторизации упущены + id: 1 +``` diff --git a/12.0.0/модуль-decort_trunk_list.md b/12.0.0/модуль-decort_trunk_list.md new file mode 100644 index 0000000..3941023 --- /dev/null +++ b/12.0.0/модуль-decort_trunk_list.md @@ -0,0 +1,485 @@ +# Модуль decort_trunk_list +## Обзор модуля + +Модуль **decort_trunk_list** предназначен для получения списка доступных пользователю транковых портов (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_trunk_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_ids + + (list[int]) + + По идентификаторам аккаунтов. +
+ ids + + (list[int]) + + По идентификаторам. +
+ status + + (str) +
Значения: +
CREATED +
DESTROYED +
DESTROYING +
DISABLED +
ENABLED +
ENABLING +
MODELED +
+ По статусу. +
+ vlan_ids + + (str) + + По идентификаторам VLAN. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_trunk_list** возвращает информацию о доступных транковых портах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_ids + + list | null + + Идентификаторы аккаунтов. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ created_by + + str + + Имя пользователя, создавшего объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int | null + + Unix-время удаления. +
+ deleted_by + + str | null + + Имя пользователя, удалившего объект. +
+ description + + str + + Описание. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ mac + + str + + MAC-адрес. +
+ mtu + + int + + MTU порта. +
+ name + + str + + Название. +
+ native_vlan_id + + int | null + + Идентификатор VLAN нетегированного трафика. +
+ ovs_bridge + + str + + Сетевой мост Open vSwitch. +
+ status + + str + + Статус. +
+ vlan_ids + + str + + Список идентификаторов VLAN. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int | null + + Unix-время обновления. +
+ updated_by + + str | null + + Имя пользователя, изменившего объект. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификаторам аккаунтов +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + filter: + account_ids: + - "{{ account1_id }}" + - "{{ account2_id }}" +``` + +### С фильтрацией по идентификаторам +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + filter: + ids: + - "{{ id1 }}" + - "{{ id2 }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по идентификаторам VLAN +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + filter: + vlan_ids: "{{ vlan_ids }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get trunk list + decort_trunk_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_user.md b/12.0.0/модуль-decort_user.md new file mode 100644 index 0000000..22ec6fd --- /dev/null +++ b/12.0.0/модуль-decort_user.md @@ -0,0 +1,607 @@ +# Модуль decort_user +## Обзор модуля + +Модуль **decort_user** предназначен для получения следующей информации о пользователе: +- **основная информация** (см. [возвращаемые значения](#основная-информация) и [примеры](#получение-основной-информации-о-пользователе)) +- **используемые и зарезервированные ресурсы** (см. [параметр resource_consumption](#resource_consumption), [возвращаемые значения](#используемые-и-зарезервированные-ресурсы) и [примеры](#получение-информации-об-используемых-и-зарезервируемых-ресурсах)) +- **доступные методы API** (см. [параметр api_methods](#api_methods), [возвращаемые значения](#доступные-методы-api) и [примеры](#получение-доступных-методов-api)) +- **поиск доступных объектов по строке** (см. [параметр objects_search](#objects_search), [возвращаемые значения](#найденные-объекты) и [примеры](#поиск-доступных-объектов)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_user** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + api_methods + + + (bool) +
Default: false +
+ Получить методы API, к которым имеет доступ пользователь. +
+ + objects_search + + + (str) + + Получить информацию о доступных пользователю объектах, + найденных по строчному значению данного параметра. +
+ + resource_consumption + + + (bool) +
Default: false +
+ Получить информацию об используемых и зарезервированных ресурсах, + к которым имеет доступ пользователь. +
+ +## Возвращаемые значения + +Модуль **decort_user** возвращает информацию о пользователе в виде словаря `facts` со следующими ключами: + +### Основная информация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ admin + + bool + + Наличие административных прав. +
+ data + + dict + + Дополнительные данные. +
+ email_addresses + + list + + Адреса эл. почты. +
+ name + + str + + Имя/идентификатор. +
+ roles + + list + + Группы доступа. +
+ +### Используемые и зарезервированные ресурсы + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ + consumed + + + dict[str, any] + + Используемые ресурсы. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ ext_ip_count + + int + + Количество внешних IP-адресов. +
+ gpu_count + + int + + Количество графических процессоров. +
+ ram_size_mb + + int + + Объём оперативной памяти в МБ. +
+ storage_size_gb_by_disk_max + + int + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + int | float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ sep_pools + + dict[str, dict[str, float]] + + Объём дисков по пулам СХД. +
+ (идентификатор СХД) + + str + + Идентификатор пула СХД. +
+ (название пула) + + dict[str, float] + + Пул СХД. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_policies + + dict[str, dict[str, any]] + + Объём дисков по политикам хранения. +
+ (идентификатор политики хранения) + + str + + Идентификатор политики хранения. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ storage_size_quota_gb + + int | null + + Квота на объём хранилища в ГБ. +
+ sep_pools + + dict[str, dict[str, float]] + + Объём дисков по пулам СХД в рамках политики хранения. +
+ (идентификатор СХД) + + str + + Идентификатор СХД. +
+ (название пула) + + dict[str, float] + + Словарь пула СХД. +
+ storage_size_gb_by_disk_max + + float + + Объём дисков в ГБ, подсчитанный с использованием данных о максимальном объёме дисков. +
+ storage_size_gb_by_real_usage + + float + + Объём дисков в ГБ, подсчитанный с использованием реальных данных о занятом пространстве в дисках, для которых есть возможность эти данные получить. +
+ reserved + + dict[str, any] + + Зарезервированные ресурсы. +
Структура словаря аналогична словарю + consumed. +
+ +### Доступные методы API + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ api_methods + + dict + + Словарь, описывающий доступные методы API. +
+ (название группы методов API) + + dict + + Доступные методы группы. +
+ (название подгруппы методов API) + + list + + Методы подгруппы. +
+ ALL + + bool + + Доступ ко всем методам группы. +
+ +### Найденные объекты + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ objects_search + + list + + Список словарей, описывающих найденные объекты. +
+ +## Примеры использования + +### Получение основной информации о пользователе +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic user info + decort_user: + # Параметры для авторизации упущены +``` + +### Получение информации об используемых и зарезервируемых ресурсах +``` +- name: Example + hosts: localhost + tasks: + - name: Get user info with resource consumption + decort_user: + # Параметры для авторизации упущены + resource_consumption: true +``` + +### Получение доступных методов API +``` +- name: Example + hosts: localhost + tasks: + - name: Get user info with API methods + decort_user: + # Параметры для авторизации упущены + api_methods: true +``` + +### Поиск доступных объектов +``` +- name: Example + hosts: localhost + tasks: + - name: Get user info with found objects + decort_user: + # Параметры для авторизации упущены + objects_search: test +``` diff --git a/12.0.0/модуль-decort_vins.md b/12.0.0/модуль-decort_vins.md new file mode 100644 index 0000000..c5ae173 --- /dev/null +++ b/12.0.0/модуль-decort_vins.md @@ -0,0 +1,2639 @@ +# Модуль decort_vins +## Обзор модуля decort_vins + +Модуль decort_vins предназначен для управления внутренними сетями (Virtual Network Segment, ViNS) и позволяет производить с ними следующие действия: +- создавать + - на уровне ресурсной группы (если РГ задана) + - на уровне аккаунта (если РГ не задана) +- удалять (в корзину или безвозвратно) +- восстанавливать из корзины +- запрашивать информацию +- включать/отключать +- соединять (необходимы права администратора) +- изменять: + - включать/отключать SSH-доступ к виртуальному маршрутизатору (необходимы права администратора) + - включать/отключать режим **Custom Config** для виртуального маршрутизатора (необходимы права администратора) + - сохранять конфигурацию виртуального маршрутизатора для возможности последующего отката к ней (необходимы права администратора) + - зону + +## Параметры модуля decort_vins +Ниже приведен список параметров для модуля **decort_vins** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + +| Параметр | Тип, допустимые значения | Описание | +| ------ | ------ | ------ | +| account_id | (int) | Уникальный целочисленный идентификатор аккаунта, которому принадлежит данная внутреняя сеть. При идентификации внутренней сети по имени (см. параметр `vins_name`) должен быть задан либо идентификатор, либо имя аккаунта (см. параметр `account_name`). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется.| +| account_name | (string) | Имя аккаунта, которому принадлежит данная внутренняя сеть. При идентификации внутренней сети по имени (см. параметр `vins_name`) должно быть задано либо имя, либо идентификатор аккаунта (см. параметр account_id). Если одновременно заданы и `account_id`, и `account_name`, то `account_name` игнорируется.| +|description | (string)| Текстовое описание внутренней сети. Данный аргумент является опциональным и учитывается только при создании внутренней сети, а при всех прочих операциях игнорируется.| +| ext_net_id | (int) | Идентификатор внешней сети, к которой должна быть подключена внутренняя сеть. Если задать значение `0`, то платформой будет выбрана внешняя сеть по умолчанию. | +| ext_ip_addr | (string) | IP-адрес внешней сети, заданной через параметр `ext_net_id`. Если не задан, то IP-адрес для внешней сети будет выбран платформой автоматически. +| ipcidr | (string) | Адрес сети для создаваемой внутренней сети. Если этот параметр не задан, то платформа назначит адрес автоматически. Обратите внимание, что внутренние сети, принадлежащие одному и тому же аккаунту, не могут иметь пересекающихся сетей.| +|rg_id | (int) | Идентификатор ресурсной группы, в которой должна быть создана или уже существует внутренняя сеть. Если одновременно заданы `rg_id` и `rg_name`, то `rg_name` игнорируется.| +| rg_name | (string) | Имя ресурсной группы, в которой должна быть создана или уже существует внутренняя сеть. Если одновременно заданы `rg_name` и `rg_id`, то `rg_name` игнорируется.| +| state | (string)
Значения:
`present`
`absent`
`enabled`
`disabled` | Целевое состояние внутренней сети.
Значение по умолчанию если объект не существует или безвозвратно удалён: `present` | +| permanently | (bool)
Default: `false` | Параметр, использующийся для удаления внутренней сети. При значении `true` - внутренняя сеть удалится безвозвратно, а при `false` - попадёт в корзину. | +| vins_id | (int) | Идентификатор внутренней сети. Соответствующая внутренная сеть должна существовать. Таким образом, с помощью `vins_id` нельзя создать новую внутреннюю сеть, а только управлять уже имеющимися. Если задан данный параметр, то параметры `vins_name`, `account_name`, `account_id`, `rg_name` и `rg_id` игнорируются.| +| vins_name| (string) | Имя внутренней сети. Для идентификации внутренней сети требуется либо `vins_name` и информация об аккаунте/ресурсной группе, которой принадлежит сеть, либо `vins_id`. Обратите внимание, что это имя уникально только в рамках ресурсной группы или аккаунта, на уровне которого существует данная внутренняя сеть.| +| mgmtaddr | (list) | Список существующих IP-адресов виртуального маршрутизатора во внутренней сети, через которые необходимо разрешить SSH-доступ к виртуальному маршрутизатору. +| custom_config | (bool)
Default: `false` | Включить/отключить режим пользовательской конфигурации виртуального маршрутизатора. | +| config_save | (bool)
Default: `false` | Выполнить сохранение текущей конфигурации виртуального маршрутизатора для возможности последующего отката к ней. | +| connect_to | (list) | Список словарей, содержащих информацию о внутренних сетях, к которым необходимо подключить данную. См. примеры. +| zone_id | (int) | Идентификатор зоны.| +| security_group_mode | (bool) | Включить/выключить группы безопасности. Не поддерживается изменение в существующей внутренней сети.
Значение по умолчанию если объект не существует или безвозвратно удалён: `false` | + +## Возвращаемые значения модуля decort_vins + +Модуль **decort_vins** возвращает информацию о внутренней сети в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ account_name + + str + + Имя аккаунта. +
+ created_by + + str + + Имя пользователя, создавшего сеть. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ default_qos + + dict[str, any] + + QoS по умолчанию для сети. +
+ egress_rate + + int + + Скорость исходящего трафика. +
+ guid + + str + + Идентификатор. +
+ ingress_burst + + int + + Пиковая нагрузка входящего трафика. +
+ ingress_rate + + int + + Скорость входящего трафика. +
+ deleted_by + + str + + Имя пользователя, удалившего сеть. +
+ deleted_datetime + + str + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str | null + + Описание. +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ manager_id + + int + + Идентификатор менеджера. +
+ manager_type + + str + + Тип менеджера. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя. +
+ net_ip + + str + + IP-адрес сети. +
+ net_prefix + + int + + Префикс сети. +
+ pre_reservation_count + + int + + Количество забронированных IP-aдресов в сети. +
+ redundant + + bool +
+ rg_id + + int + + Идентификатор ресурсной группы. +
+ rg_name + + str + + Имя ресурсной группы. +
+ secondary_vnfdev_id + + int +
+ security_group_mode + + bool + + Включены ли группы безопасности. +
+ status + + str + + Статус. +
+ updated_by + + str + + Пользователь, обновивший сеть. +
+ updated_datetime + + str + + Дата и время обновления сети. +
+ updated_timestamp + + int + + Unix-время обновления сети. +
+ user_managed + + bool + + Управляется ли пользователем. +
+ vms + + list[int] + + Список идентификаторов виртуальных машин с внутренней сетью. +
+ vnfdev + + dict[str, any] + + Словарь описывающий маршрутизатор. +
+ account_id + + int + + Идентификатор аккаунта. +
+ capabilities + + list[str] + + Список типов виртуальных функций. +
+ config + + dict[str, any] + + Кофигурация маршрутизатора. +
+ mgmt + + dict[str, str] + + Параметры управления устройством. +
+ ip_addr + + str + + IP-адрес. +
+ password + + str + + Пароль. +
+ ssh_public_key + + str + + SSH ключ. +
+ user_name + + str + + Имя. +
+ resources + + dict[str, any] + + Выделенные ресурсы. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ node_id + + int + + Идентификатор физического узла. +
+ ram_size_mb + + int + + Объём оперативной памяти в МБ. +
+ uuid + + str + + Идентификатор. +
+ config_saved + + bool +
+ custom_pre_cfg + + bool +
+ description + + str + + Описание. +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ interfaces + + list[dict[str, any]] + + Сетевые интерфейсы маршрутизатора. +
+ bus_num + + int + + Номер шины. +
+ conn_id + + int + + Идентификатор соединения. +
+ conn_type + + str + + Тип соединения. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ enabled + + bool + + Включен ли сетевой интерфейс. +
+ flip_group_id + + int + + Идентификатор группы с плавающим IP-адресом. +
+ guid + + str + + Идентификатор. +
+ ip_addr + + str + + IP-адрес. +
+ libvirt_settings + + dict[str, any] + + Настройки libvirt. +
+ event_idx + + str +
+ guid + + str + + Идентификатор. +
+ ioeventfd + + str +
+ queues + + int +
+ rx_queue_size + + int +
+ tx_mode + + str +
+ tx_queue_size + + int +
+ listen_ssh + + bool +
+ mac + + str + + MAC-адрес. +
+ mtu + + int + + MTU сетевого интерфейса. +
+ name + + str + + Имя. +
+ net_id + + int + + Идентификатор сети. +
+ net_prefix + + int + + Префикс сети. +
+ net_type + + str + + Тип сети. +
+ node_id + + int + + Идентификатор физического узла. +
+ pci_slot_num + + int + + Номер слота PCI. +
+ qos + + dict[str, any] + + Quality of Service +
+ egress_rate + + int + + Скорость исходящего трафика. +
+ guid + + str + + Идентификатор. +
+ ingress_burst + + int + + Пиковая нагрузка входящего трафика. +
+ ingress_rate + + int + + Скорость входящего трафика. +
+ sdn_logical_port_id + + str + + Идентификатор логического порта SDN. +
+ security_group_ids + + list[int] + + Список идентификаторов групп безопасности. +
+ security_group_mode + + bool + + Включены ли группы безопасности. +
+ target + + str +
+ type + + str + + Тип. +
+ vnf_ids + + list[int] + + Идентификаторы виртуальных функций. +
+ live_migration_job_id + + int + + Идентификатор задачи live-миграции. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя. +
+ status + + str + + Статус. +
+ tech_status + + str + + Технический статус. +
+ type + + str + + Тип. +
+ vins_ids + + list[int] + + Идентификаторы внутренних сетей. +
+ vnc_password + + str + + Пароль, используемый для подключения к ВМ через VNC. +
+ zone_id + + int + + Идентификатор зоны. +
+ vnfs + + dict[str, dict[str, any] | null] + + Словарь описывающий функции виртуальной сети. +
+ dhcp + + dict[str, any] + + Словарь описывающий DHCP-сервер. +
+ account_id + + int + + Идентификатор аккаунта. +
+ config + + dict[str, any] + + Кофигурация DHCP-сервера. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ dns_servers + + list[str] + + Список dns. +
+ ip_pool_end + + str +
+ ip_pool_start + + str +
+ lease_time + + int +
+ net_ip + + str + + IP-адрес сети. +
+ net_prefix + + int + + Префикс сети. +
+ reservations + + list[dict[str, any]] +
+ account_id + + int + + Идентификатор аккаунта. +
+ client_type + + str + + Тип клиентов. +
+ description + + str + + Описание. +
+ domain_name + + str + + Имя домена. +
+ hostname + + str + + Имя хоста. +
+ ip_addr + + str + + IP-адрес. +
+ mac + + str + + MAC-адрес. +
+ type + + str + + Тип. +
+ vm_id + + int + + Идентификатор виртуальной машины. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ devices + + dict[str, any] +
+ primary + + dict[str, any] +
+ device_id + + int +
+ iface01_name + + str +
+ iface02_name + + str +
+ secondary + + dict[str, any] +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ owner_id + + int +
+ owner_type + + str +
+ pure_virtual + + bool +
+ routes + + list[dict[str, any]] +
+ status + + str + + Статус. +
+ tech_status + + str + + Технический статус. +
+ type + + str + + Тип. +
+ zone_id + + int + + Идентификатор зоны. +
+ gw + + dict[str, any] + + Словарь описывающий шлюз. +
+ account_id + + int + + Идентификатор аккаунта. +
+ config + + dict[str, any] + + Кофигурация шлюза. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ ext_net_id + + int + + Идентификатор внешней сети. +
+ ext_net_ip + + str + + IP-адрес внешней сети. +
+ ext_net_prefix + + int + + Префикс внешней сети. +
+ qos + + dict[str, any] + + Quality of Service +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ devices + + dict[str, any] +
+ primary + + dict[str, any] +
+ device_id + + int +
+ iface01_name + + str +
+ iface02_name + + str +
+ secondary + + dict[str, any] +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ owner_id + + int +
+ owner_type + + str +
+ pure_virtual + + bool +
+ routes + + list[dict[str, any]] +
+ status + + str + + Статус. +
+ tech_status + + str + + Технический статус. +
+ type + + str + + Тип. +
+ zone_id + + int + + Идентификатор зоны. +
+ nat + + dict[str, any] + + Словарь описывающий NAT. +
+ account_id + + int + + Идентификатор аккаунта. +
+ config + + dict[str, any] + + Кофигурация NAT. +
+ net_ip + + str + + IP-адрес сети. +
+ net_prefix + + int + + Префикс сети. +
+ rules + + list[dict[str, any]] + + Правила. +
+ created_datetime + + str + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ devices + + dict[str, any] +
+ primary + + dict[str, any] +
+ device_id + + int +
+ iface01_name + + str +
+ iface02_name + + str +
+ secondary + + dict[str, any] +
+ grid_id + + int + + Идентификатор ЦОД. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ lock_status + + str + + Статус блокировки. +
+ milestones + + int + + Количество событий. +
+ owner_id + + int +
+ owner_type + + str +
+ pure_virtual + + bool +
+ routes + + list[dic[str, any]] +
+ status + + str + + Статус. +
+ tech_status + + str + + Технический статус. +
+ type + + str + + Тип. +
+ zone_id + + int + + Идентификатор зоны. +
+ vxlan_id + + int + + Идентификатор VXLAN. +
+ zone_id + + int + + Идентификатор зоны. +
+ + + +## Пример использования модуля decort_vins + +В данном примере создаётся внутренняя сеть с именем "MyVins01" (vins_name: "MyVins01"). + +Внутренняя сеть создаётся на уровне ресурсной группы "MyRg01" (rg_name: "MyRg01"), принадлежащей аккаунту "MyMainAccount" (account_name: "MyMainAccount"). Внутренняя сеть будет иметь подключение во внешнюю сеть по умолчанию (ext_net_id: 0). +Результат исполнения модуля decort_vins записывается в переменную my_vins, которую можно дальше использовать в Ansible playbooks. +``` + - name: Manage ViNS on resource group level + decort_vins: + account_name: "MyMainAccount" + rg_name: "MyRg01" + authenticator: jwt + jwt: "{{ my_jwt.jwt }}" + controller_url: "https://ds1.digitalenergy.online" + ext_net_id: 0 + vins_name: "MyVins01" + register: my_vins + ``` + +В данном примере идёт создание внутренней сети, а потом её привязка к внутренним сетям с id 864 и 196. +``` + - name: Manage ViNS on resource group level + decort_vins: + authenticator: jwt + jwt: "{{ my_jwt.jwt }}" + controller_url: "https://cloud.digitalenergy.online" + vins_name: "ViNS_connected_by_decort_vins_module" + rg_id: 98 + connect_to: + - id: 864 + ipaddr: 192.168.5.66 + netmask: 24 + - id: 196 + ipaddr: 192.168.9.133 + netmask: 24 + register: managed_vins + +``` + + diff --git a/12.0.0/модуль-decort_vins_list.md b/12.0.0/модуль-decort_vins_list.md new file mode 100644 index 0000000..85df5ce --- /dev/null +++ b/12.0.0/модуль-decort_vins_list.md @@ -0,0 +1,615 @@ +# Модуль decort_vins_list +## Обзор модуля + +Модуль **decort_vins_list** предназначен для получения списка доступных пользователю внутренних сетей (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_vins_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ ext_net_ip + + (str) + + По внешнему IP-адресу. +
+ id + + (int) + + По идентификатору. +
+ include_deleted + + (bool) + + Включая удалённые в корзину. +
+ name + + (str) + + По имени. +
+ rg_id + + (int) + + По идентификатору ресурсной группы. +
+ status + + (str) +
Значения: +
MODELED +
CREATED +
ENABLED +
ENABLING +
DISABLED +
DISABLING +
DELETED +
DELETING +
DESTROYED +
DESTROYING +
+ По статусу. +
+ vnfdev_id + + (int) + + По идентификатору виртуального маршрутизатора. +
+ zone_id + + (int) + + По идентификатору зоны. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_vins_list** возвращает информацию о доступных внутренних сетях в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ account_name + + str + + Имя аккаунта. +
+ created_by + + str + + Имя пользователя, создавшего объект. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deleted_by + + str + + Имя пользователя, удалившего объект. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ ext_net_id + + int + + Идентификатор внешней сети. +
+ ext_net_ip + + str + + IP-адрес внешней сети. +
+ free_ip_count + + int + + Количество свободных IP-адресов. +
+ id + + int + + Идентификатор. +
+ name + + str + + Имя. +
+ net_ip + + str + + IP-адрес сети. +
+ rg_id + + int + + Идентификатор ресурсной группы. +
+ rg_name + + str + + Имя ресурсной группы. +
+ status + + str + + Статус. +
+ updated_by + + str + + Имя пользователя, обновившего объект. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ vxlan_id + + int + + Идентификатор VXLAN. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по внешнему IP-адресу +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + ext_net_ip: "{{ ext_net_ip }}" +``` + +### С фильтрацией по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией, включая удалённые в корзину +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + include_deleted: true +``` + +### С фильтрацией по имя +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по идентификатору ресурсной группы +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + rg_id: "{{ rg_id }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по идентификатору виртуального маршрутизатора +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + vnfdev_id: "{{ vnfdev_id }}" +``` + +### С фильтрацией по идентификатору зоны +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + filter: + zone_id: "{{ zone_id }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get VINS list + decort_vins_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_vm.md b/12.0.0/модуль-decort_vm.md new file mode 100644 index 0000000..4b0ea0c --- /dev/null +++ b/12.0.0/модуль-decort_vm.md @@ -0,0 +1,3652 @@ +# Модуль decort_vm +## Обзор модуля decort_vm + +Модуль **decort_vm** предназначен для выполнения следующих действий над виртуальными машинами: +- **создать** (см. [примеры](#создать)) + - **с указанием описания** (см. [параметр description](#description) и [примеры](#с-указанием-описания)) + - **с указанием объёма загрузочного диска** (см. [параметр boot.disk_size](#boot_disk_size) и [примеры](#с-указанием-объёма-загрузочного-диска)) + - **с указанием СХД** (см. [параметр sep_id](#sep_id) и [параметр pool](#pool) и [примеры](#с-указанием-схд)) + - **с указанием Cloud-init user data** (см. [параметр ci_user_data](#ci_user_data) и [примеры](#с-указанием-cloud-init-user-data)) + - **с указанием SSH-ключа** (см. [параметр ssh_key](#ssh_key) и [параметр ssh_key_user](#ssh_key_user) и [примеры](#с-указанием-ssh-ключа)) + - **с указанием NUMA Affinity** (см. [параметр numa_affinity](#numa_affinity) и [примеры](#с-указанием-numa-affinity)) + - **с указанием запуска на выделенных ядрах ЦП** (см. [параметр cpu_pin](#cpu_pin) и [примеры](#с-указанием-запуска-на-выделенных-ядрах-цп)) + - **с использованием Huge Pages** (см. [параметр hp_backed](#hp_backed) и [примеры](#с-использованием-huge-pages)) + - **с указанием custom_fields** (см. [параметр custom_fields](#custom_fields) и [примеры](#с-указанием-custom_fields)) + - **с указанием affinity-метки** (см. [параметр affinity_label](#affinity_label) и [примеры](#с-указанием-affinity-метки)) + - **с указанием affinity правил** (см. [параметр aff_rule](#aff_rule) и [примеры](#с-указанием-affinity-правил)) + - **с указанием anti-affinity правил** (см. [параметр aaff_rule](#aaff_rule) и [примеры](#с-указанием-anti-affinity-правил)) + - **с указанием тэгов** (см. [параметр tag](#tag) и [примеры](#с-указанием-тэгов)) + - **с образом** (см. [параметр image_id](#image_id) и [примеры](#с-образом)) + - **без образа** (см. [параметр image_id](#image_id) и [примеры](#без-образа)) + - **с загрузочным диском** (см. [параметр boot.disk_size](#boot_disk_size) и [примеры](#с-загрузочным-диском)) + - **без загрузочного диска** (см. [примеры](#без-загрузочного-диска)) + - **с указанием режима загрузки** (см. [параметр boot.mode](#boot_mode) и [примеры](#с-указанием-режима-загрузки)) + - **с указанием типа загрузчика ОС** (см. [параметр boot.loader_type](#boot_loader_type) и [примеры](#с-указанием-типа-загрузчика-ос)) + - **с указанием именования сетевых интерфейсов** (см. [параметр network_interface_naming](#network_interface_naming) и [примеры](#с-указанием-именования-сетевых-интерфейсов)) + - **с поддержкой изменения объема ОЗУ и количества ЦП у запущенной ВМ** (см. [параметр hot_resize](#hot_resize) и [примеры](#с-поддержкой-изменения-объема-озу-и-количества-цп-у-запущенной-вм)) + - **с включением автоматического запуска ВМ после перезапуска вычислительного узла, за которым она закреплена** (см. [параметр auto_start](#auto_start) и [примеры](#с-включением-автоматического-запуска-вм-после-перезапуска-вычислительного-узла-за-которым-она-закреплена)) + - **с указанием чипсета** (см. [параметр chipset](#chipset) и [примеры](#с-указанием-чипсета)) + - **с указанием предпочтительных ядер** (см. [параметр preferred_cpu_cores](#preferred_cpu_cores) и [примеры](#с-указанием-предпочтительных-ядер)) + - **путём клонирования другой ВМ** (см. [параметр clone_from](#clone_from) и [примеры](#путём-клонирования-другой-вм)) + - **с указанием зоны** (см. [параметр zone_id](#zone_id) и [примеры](#с-указанием-зоны)) + - **с указанием версии операционной системы** (см. [параметр os_version](#os_version) и [примеры](#с-указанием-версии-операционной-системы)) +- **получить основную информацию** (см. [возвращаемые значения](#основная-информация) и [примеры](#получение-основной-информации-о-виртуальной-машине)) +- **получить ссылку на консоль** (см. [параметр get_console_url](#get_console_url) и [примеры](#получение-ссылки-на-консоль)) +- **остановить/приостановить/запустить** (см. [параметр state](#state) и [примеры](#остановитьприостановитьзапустить)) + - **запустить с загрузкой с образа CD-ROM** (см. [параметр boot.from_cdrom](#boot_from_cdrom) и [примеры](#запустить-с-загрузкой-с-образа-cd-rom)) +- **подключить/отключить диски** (см. [параметр disks](#disks) и [примеры](#подключитьотключить-диски)) +- **подключить/отключить сети** (см. [параметр networks](#networks) и [параметр network_order_changing](#network_order_changing) и [примеры](#подключитьотключить-сети)) +- **включить/выключить сетевой интерфейс** (см. [параметр networks.enabled](#networks_enabled) и [примеры](#включитьвыключить-сетевой-интерфейс)) +- **откатить ВМ к состоянию снимка** (см. [параметр rollback_to](#rollback_to) и [примеры](#откатить-вм-к-состоянию-снимка)) +- **взаимодействовать c QEMU Guest Agent** (см. [параметр guest_agent](#guest_agent) и [примеры](#взаимодействовать-c-qemu-guest-agent)) +- **получить статус копирования данных из удаляемого снимка на СХД Shared** (см. [параметр get_snapshot_merge_status](#get_snapshot_merge_status) и [примеры](#получение-статуса-копирования-данных-из-удаляемого-снимка-на-схд-shared)) +- **взаимодействовать с CD-ROM** (см. [параметр cdrom](#cdrom) и [примеры](#взаимодействовать-с-cd-rom)) +- **получить статус клонирования** (см. [параметр get_cloning_status](#get_cloning_status) и [примеры](#получение-статуса-клонирования)) +- **отменить клонирование** (см. [параметр abort_cloning](#abort_cloning) и [примеры](#отменить-клонирование)) +- **изменить** (см. [примеры](#изменить)) + - **объём загрузочного диска в большую сторону** (см. [параметр boot.disk_size](#boot_disk_size) и [примеры](#объём-загрузочного-диска-в-большую-сторону)) + - **количество ЦП** (см. [параметр cpu](#cpu) и [примеры](#количество-цп)) + - **объём ОЗУ** (см. [параметр ram](#ram) и [примеры](#объём-озу)) + - **тэги** (см. [параметр tag](#tag) и [примеры](#тэги)) + - **affinity метку** (см. [параметр affinity_label](#affinity_label) и [примеры](#affinity-метку)) + - **affinity правила** (см. [параметр aff_rule](#aff_rule) и [примеры](#affinity-правила)) + - **anti-affinity правила** (см. [параметр aaff_rule](#aaff_rule) и [примеры](#anti-affinity-правила)) + - **описание** (см. [параметр description](#description) и [примеры](#описание)) + - **чипсет** (см. [параметр chipset](#chipset) и [примеры](#чипсет)) + - **правило NUMA Affinity** (см. [параметр numa_affinity](#numa_affinity) и [примеры](#правило-numa-affinity)) + - **запуск на выделенных ядрах ЦП** (см. [параметр cpu_pin](#cpu_pin) и [примеры](#запуск-на-выделенных-ядрах-цп)) + - **использование Huge Pages** (см. [параметр hp_backed](#hp_backed) и [примеры](#использование-huge-pages)) + - **имя** (см. [параметр name](#param_name) и [примеры](#имя)) + - **XML виртуальной машины** (см. [параметр custom_fields](#custom_fields) и [примеры](#xml-виртуальной-машины)) + - **автоматический запуск ВМ после перезапуска вычислительного узла, за которым она закреплена** (см. [параметр auto_start](#auto_start) и [примеры](#автоматический-запуск-вм-после-перезапуска-вычислительного-узла-за-которым-она-закреплена)) + - **предпочтительные ядра** (см. [параметр preferred_cpu_cores](#preferred_cpu_cores) и [примеры](#предпочтительные-ядра)) + - **загрузочный диск** (см. [параметр boot.disk_id](#boot_disk_id) и [примеры](#загрузочный-диск)) + - **режим загрузки** (см. [параметр boot.mode](#boot_mode) и [примеры](#режим-загрузки)) + - **тип загрузчика ОС** (см. [параметр boot_loader_type](#boot_loader_type) и [примеры](#тип-загрузчика-ос)) + - **именование сетевых интерфейсов** (см. [параметр network_interface_naming](#network_interface_naming) и [примеры](#именование-сетевых-интерфейсов)) + - **поддержку изменения объема ОЗУ и количества ЦП у запущенной ВМ** (см. [параметр hot_resize](#hot_resize) и [примеры](#поддержку-изменения-объема-озу-и-количества-цп-у-запущенной-вм)) + - **MAC-адрес сетевого интерфейса** (см. [параметр networks.mac](#networks_mac) и [примеры](#mac-адрес-сетевого-интерфейса)) + - **зону ВМ** (см. [параметр zone_id](#zone_id) и [примеры](#зону-вм)) + - **порядок загрузки** (см. [параметр boot.order](#boot_order) и [примеры](#порядок-загрузки)) + - **образ загрузочного диска** (см. [параметр image_id](#image_id) и [примеры](#с-изменением-образа)) + - **группы безопасности сетевого интерфейса** (см. [параметр networks.security_group_ids](#networks_security_group_ids) и [параметр networks.security_group_mode](#networks_security_group_mode) и [примеры](#группы-безопасности-сетевого-интерфейса)) + - **версию операционной системы** (см. [параметр os_version](#os_version) и [примеры](#версию-операционной-системы)) + - **длину сетевого префикса** (см. [параметр networks.net_prefix](#networks_net_prefix) и [примеры](#длину-сетевого-префикса)) +- **пересоздать загрузочный диск** (см. [параметр boot.disk_redeploy](#boot_disk_redeploy) и [примеры](#пересоздать-загрузочный-диск)) +- **удалить (безвозвратно)** (см. [параметр state](#state) и [примеры](#безвозвратно)) + +## Параметры модуля decort_vm +Ниже приведен список параметров для модуля **decort_vm** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + aaff_rule + + + (list) + + Список словарей, описывающих anti-affinity правила. +
Чтобы очистить anti-affinity правила, нужно указать пустой список []. +
+ topology + + (str) +
Значения: +
node +
compute +
+ Назначение правила. +
+ policy + + (str) +
Значения: +
RECOMMENDED +
REQUIRED +
+ Степень "необходимости" этого правила. +
+ mode + + (str) +
Значения: +
EQ +
NE +
ANY +
+ Режим сравнения. +
EQ - должно соответствовать. +
NE - не должно соответствовать. +
ANY - любое. +
+ key + + (str) + + Ключ, который учитывается при анализе данного правила. +
+ value + + (str) + + Значение ключа, учитываемого при анализе данного правила (зависит от ключа mode). +
+ + account_id + + + (int) + + Идентификатор аккаунта. Этот параметр является опциональным и используется в сценариях, когда уже существующая ресурсная группа задается комбинацией account_id и rg_name. +
Если задан account_id, то account_name игнорируется. +
+ + account_name + + + (str) + + Имя аккаунта. Этот параметр является опциональным и используется в сценариях, когда уже существующая ресурсная группа задается комбинацией account_name и rg_name. +
Если задан account_id, то account_name игнорируется. +
+ + aff_rule + + + (list) + + Список словарей, описывающих affinity правила. +
Чтобы очистить affinity правила, нужно указать пустой список []. +
+ topology + + (str) +
Значения: +
node +
compute +
+ Назначение правила. +
+ policy + + (str) +
Значения: +
RECOMMENDED +
REQUIRED +
+ Степень "необходимости" этого правила. +
+ mode + + (str) +
Значения: +
EQ +
NE +
ANY +
+ Режим сравнения. +
EQ - должно соответствовать. +
NE - не должно соответствовать. +
ANY - любое. +
+ key + + (str) + + Ключ, который учитывается при анализе данного правила. +
+ value + + (str) + + Значение ключа, учитываемого при анализе данного правила (зависит от ключа mode). +
+ + affinity_label + + + (str) + + Метка affinity. +
Чтобы очистить метку affinity, нужно указать пустую строку "". +
+ + auto_start + + + (bool) + + Включить/выключить автоматический запуск ВМ после перезапуска вычислительного узла, за которым она закреплена. +
Если параметр не задан при создании ВМ, то значение будет выбрано платформой. +
+ + abort_cloning + + + (bool) + + Отменить клонирование ВМ. Может быть задан только для существующей ВМ. +
+ + boot + + + (dict) + + Параметры загрузки. +
+ + disk_id + + + (int) + + Идентификатор диска, который будет установлен как загрузочный. +
+ + disk_size + + + (int) + + Объём загрузочного диска виртуальной машины в ГБ. Если параметр не задан, размер будет равен размеру образа. Если не заданы этот параметр и параметр image_id, то виртуальная машина будет создана без загрузочного диска. +
+ + mode + + + (str) +
Значения: +
bios +
uefi +
+ Режим загрузки. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: bios. +
+ + loader_type + + + (str) +
Значения: +
linux +
windows +
unknown +
+ Тип загрузчика операционной системы. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: unknown. +
+ + from_cdrom + + + (int) + + Идентификатор образа CD-ROM, с которого должна загрузиться ВМ при запуске. +
+ + order + + + (list) +
Значения: +
cdrom +
hd +
network +
+ Порядок загрузки. +
+ + disk_redeploy + + + (bool) + + Пересоздание загрузочного диска. +
+ + cdrom + + + (dict) + + Словарь параметров для взаимодействия с CD-ROM. +
+ image_id + + (int) + + Идентификатор образа CD-ROM. +
+ mode + + (str) +
Значения: +
insert +
eject +
Default: insert +
+ Режим работы. +
+ + chipset + + + (str) +
Значения: +
Q35 +
i440fx +
+ Эмулируемый чипсет. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: Q35. +
+ + ci_user_data + + + (dict) + + Конфигурация для cloud-init. +
+ + clone_from + + + (dict) + + Словарь параметров для создания ВМ путём клонирования другой ВМ. +
Для создания клона также должен быть указан параметр name для указания имени клона. +
+ id + + (int) + + Идентификатор клонируемой ВМ (обязательный). +
+ force + + (bool) +
Default: false +
+ Игнорировать, что ВМ запущена. +
+ sep_pool_name + + (str) + + Название пула СХД. +
+ sep_id + + (int) + + Идентификатор СХД. +
+ snapshot + + (dict) + + Параметры клонируемого снимка ВМ. +
+ name + + (str) + + Название снимка. +
+ + timestamp + + + (int) + + Unix-время. +
+ datetime + + (str) + + Дата и время в формате ггггммддччммсс, альтернатива параметру timestamp. Допустимо использовать любой разделитель между группами цифр для повышения читаемости, например, гггг-мм-дд чч:мм:сс. +
+ storage_policy_id + + (int) + + Идентификатор политики хранения. Обязательный параметр. +
+ + cpu + + + (int) + + Количество виртуальных процессоров, выделяемых виртуальной машине. +
+ + cpu_pin + + + (bool) + + Запуск виртуальной машины на выделенных ядрах ЦП. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: false. +
+ + custom_fields + + + (dict) + + Словарь, управляющий XML виртуальной машины. +
+ disable + + (bool) + + Отключение управления виртуальной машиной через XML. Значение по умолчанию, если объект не найден или безвозвратно удалён: true. +
+ fields + + (dict) + + Поля для управления XML виртуальной машины. +
+ + description + + + (str) + + Опциональное описание виртуальной машины. +
+ + disks + + + (dict) + + Словарь, описывающий диски ВМ. +
+ mode + + (str) +
Значения: +
update +
detach +
delete +
match +
Default: update +
+ Режим работы параметра. +
update - указанные диски подключены. +
detach - указанные диски отключены. +
delete - указанные диски отключены и удалены; удаляются только отключаемые диски. +
match - подключены только указанные диски. +
+ objects + + (list) + + Список словарей, описывающих диски. +
+ id + + (int) + + Идентификатор диска. Обязательный параметр. +
+ pci_slot_num_hex + + (str) + + Номер слота PCI. +
+ bus_num_hex + + (str) + + Номер шины. +
+ + get_console_url + + + (bool) +
Default: false +
+ Получить ссылку на консоль ВМ. +
+ + get_cloning_status + + + (bool) + + Получить статус клонирования ВМ. +
+ + get_snapshot_merge_status + + + (bool) + + Получить статус копирования данных из удаляемого снимка на СХД Shared. +
+ + guest_agent + + + (dict) + + Параметры для взаимодействия с QEMU Guest Agent. +
+ enabled + + (bool) + + Включить/выключить QEMU Guest Agent. +
+ exec + + (dict) + + Команда, которую необходимо выполнить. +
+ cmd + + (str) + + Название. Обязательный параметр. +
+ args + + (dict) +
Default: {} +
+ Аргументы. +
+ update_available_commands + + (bool) + + Обновить список доступных команд. +
+ + hot_resize + + + (bool) + + Поддержка изменения объёма ОЗУ и количества процессоров у запущенной ВМ. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: false. +
+ + hp_backed + + + (bool) + + Использовать Huge Pages для выделения оперативной памяти виртуальной машины. Система должна быть предварительно сконфигурирована путем выделения Huge Pages на физическом узле. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: false. +
+ + id + + + (int) + + Уникальный цифровой идентификатор виртуальной машины. Этот параметр используется как один из методов идентификации существующей ВМ (альтернатива – по комбинации name, rg_name и account_name). +
Если при вызове модуля decort_vm существующая ВМ идентифицируется по id, то параметры account_id, account_name, rg_id и rg_name игнорируются. +
+ + image_id + + + (int) + + Уникальный цифровой идентификатор образа. +
Если этот параметр не задан при создании ВМ, то ВМ будет создана без образа. +
Изменение образа у существующей ВМ возможно только при пересоздании загрузочного диска (см. disk_redeploy). +
+ + name + + + (str) + + Имя ВМ. Чтобы модуль decort_vm мог управлять сервером по его названию, также необходимо задать комбинацию account_name и rg_name или rg_id. +
Если для существующей ВМ указаны и name, и id, то параметр name используется для переименования. +
+ + network_interface_naming + + + (str) +
Значения: +
ens +
eth +
+ Шаблон именования сетевых интерфейсов в ОС Linux. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: ens. +
+ + network_order_changing + + + (bool) +
Default: false +
+ Соблюдение очерёдности сетей при их изменении. +
Если true, то сравнение списка уже подключённых к ВМ сетей со списком из параметра networks будет производится с учётом очерёдности сетей и, при выявлении несоответствия, сначала будет произведено отключение всех сетей от ВМ, а затем подключение сетей в соответствии с параметром networks. +
Если false, то очерёдность при сравнении учитываться не будет. Соответственно, сети, которые имеются в списке параметра networks и уже подключены к ВМ, переподключаться не будут, что может кратно уменьшить время выполнения изменения сетей. +
+ + networks + + + (list) + + Список словарей, описывающих сети ВМ. +
+
ВМ не может одновременно быть подключена к сети DPDK и к сети другого типа, кроме EMPTY. +
+
ВМ не может одновременно быть подключена к сети SDN и к сети другого типа, кроме EMPTY, VFNIC. +
+
Чтобы отключить все сети, нужно указать пустой список []. +
+ + enabled + + + (bool) + + Включен или выключен сетевой интерфейс. Изменение доступно для сетей VINS, EXTNET, DPDK, SDN, TRUNK. +
Значение по умолчанию при подключении новой сети: true. +
+ type + + (str) +
Значения: +
VINS +
EXTNET +
VFNIC +
DPDK +
SDN +
TRUNK +
EMPTY +
+ Тип сети. Обязательный параметр. +
+ id + + (int | str) + + Идентификатор внутренней/внешней/DPDK сети, пула вирт. функций или логического порта SDN. +
+ ip_addr + + (str) + + IP-адрес, используемый для подключения к данной сети. +
Применимо только для VINS, EXTNET, DPDK, VFNIC. +
+ + mac + + + (str) + + MAC-адрес сетевого интерфейса. +
Не применим для сети типа EMPTY. +
+ mtu + + (int) + + MTU интерфейса. +
Применимо только для EXTNET, DPDK, TRUNK. +
+ + net_prefix + + + (int) + + Длина сетевого префикса. +
Применимо только для DPDK, VFNIC. +
+ + security_group_ids + + + (list) + + Идентификаторы групп безопасности. +
+ + security_group_mode + + + (bool) + + Включить/выключить группы безопасности. +
Значение по умолчанию при подключении новой сети: false. +
+ + numa_affinity + + + (str) +
Значения: +
strict +
loose +
none +
+ Правило применения NUMA affinity к виртуальной машине. +
strict - строго с NUMA affinity. +
loose - использовать NUMA affinity, если возможно. +
none - отменить применение NUMA affinity. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: none. +
+ + os_version + + + (str) + + Версия операционной системы. Если не задано при создании ВМ с образом или при пересоздании загрузочного диска, то наследуется от названия образа. +
+ + pool + + + (str) + + Пул СХД, заданной параметром sep_id. Если пул не задан, то он будет выбран платформой. +
+ + preferred_cpu_cores + + + (list) + + Список номеров предпочтительных выделенных ядер ЦП (см. параметр cpu_pin). +
Чтобы очистить список номеров предпочтительных выделенных ядер ЦП, нужно указать пустой список []. +
+ + ram + + + (int) + + Объем оперативной памяти в МБ, выделенной данной ВМ. Параметр является обязательным при создании. Если указать его для уже существующей ВМ, то будет выполнена попытка изменить объем выделенной памяти. +
+ + rg_id + + + (int) + + Уникальный цифровой идентификатор уже существующей ресурсной группы, в которой будет создана новая или находится уже существующая ВМ. +
Данный параметр является одним из методов идентификации существующей РГ (альтернативой является задание комбинации account_name и rg_name). +
+ + rg_name + + + (str) + + Имя уже существующей ресурсной группы, в которой будет создана новая или находится уже существующая ВМ. +
Данный параметр является одним из методов идентификации существующей РГ, когда задается пара account_name и rg_name (альтернативой является задание rg_id). +
Если заданы и rg_id, и rg_name, то параметр rg_name игнорируется. +
+ + rollback_to + + + (str) + + Имя снимка, к состоянию которого необходимо совершить откат ВМ. +
+ + sep_id + + + (int) + + Идентификатор СХД для загрузочного диска ВМ. Если не задан, то будет использоваться СХД образа. +
+ + ssh_key + + + (str) + + Открытая часть SSH-ключа, который необходимо добавить на создаваемую ВМ для пользователя, заданного параметром ssh_key_user. +
Данный параметр применим только для ОС Linux, используется только при создании и игнорируется при других операциях. +
+ + ssh_key_user + + + (str) + + Имя пользователя в гостевой ОС (только для Linux), для которого добавляется SSH-ключ, заданный параметром ssh_key. +
Данный параметр является обязательным, если задан ssh_key. Используется только при создании и игнорируется при других операциях. +
+ + state + + + (str) +
Значения: +
present +
absent +
started +
stopped +
paused +
+ Целевое состояние ВМ. +
present - виртуальная машина существует и не удалена. Если удалена в корзину, то будет восстановлена из корзины. +
absent - виртуальная машина безвозвратно удалена. +
started - виртуальная машина запущена. Если остановлена, то будет запущена. Если удалена в корзину, то будет восстановлена из корзины. +
stopped - виртуальная машина остановлена. Если запущена, то будет остановлена. +
paused - виртуальная машина приостановлена. +
Значение по умолчанию, если объект не найден или безвозвратно удалён: present +
+ + storage_policy_id + + + (int) + + Идентификатор политики хранения. Обязателен при создании виртуальной машины с диском/дисками.
Необязателен при пересоздании загрузочного диска.
Не поддерживается изменение в существующей виртуальной машине. +
+ + tag + + + (dict) + + Словарь, пары ключ-значение которого, описывают тэги для ВМ. +
Чтобы очистить теги, нужно указать пустой словарь {}. +
+ + zone_id + + + (int) + + Идентификатор зоны ВМ. +
+ +## Возвращаемые значения модуля decort_vm + +Модуль **decort_vm** возвращает информацию о виртуальной машине в виде словаря `facts` со следующими ключами: + +### Основная информация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
КлючТипОписание
+ account_id + + int + + Идентификатор аккаунта. +
+ affinity_label + + str + + Метка affinity. +
+ affinity_rules + + list + + Список словарей, описывающих affinity правила. +
+ anti_affinity_rules + + list + + Список словарей, описывающих anti-affinity правила. +
+ arch + + str + + Архитектура ВМ. +
+ auto_start + + bool + + Автоматический запуск ВМ после перезапуска вычислительного узла, за которым она закреплена. +
+ boot_mode + + str + + Режим загрузки. +
+ cd_image_id + + int + + Идентификатор диска CD-ROM. +
+ clones + + list + + Список идентификаторов клонов ВМ. +
+ clone_reference + + int + + Идентификатор ВМ, клоном которой является данная ВМ. +
+ chipset + + str + + Эмулируемый чипсет. +
+ cpu + + int + + Количество виртуальных процессоров. +
+ cpu_pin + + bool + + Запуск виртуальной машины на выделенных ядрах ЦП. +
+ custom_fields + + dict | null + + Словарь, управляющий XML виртуальной машины. +
Если null, то управление виртуальной машиной через XML отключено, иначе - управление через XML включено. +
+ disks + + list + + Список словарей, описывающих диски, подключенные к ВМ. +
+ disk_size + + int + + Размер загрузочного диска в ГБ. +
+ guest_agent + + dict + + Информация о QEMU Guest Agent ВМ. +
+ enabled + + bool + + Включен/выключен. +
+ enabled_agent_features + + list + + Список доступных команд. +
+ exec_result + + any + + Результат выполнения команды. +
+ guid + + str + + Идентификатор. +
+ last_update + + int + + Временная метка последнего обновления доступных команд. +
+ user + + str + + Пользователь, совершивший последнее обновление доступных команд. +
+ hot_resize + + bool + + Поддержка изменения объёма ОЗУ и количества процессоров у запущенной ВМ. +
+ hp_backed + + bool + + Использовать Huge Pages для выделения оперативной памяти виртуальной машины. +
+ id + + int + + Идентификатор ВМ. +
+ image_id + + int | null + + Идентификатор образа. +
+ interfaces + + list + + Список словарей, описывающих сетевые интерфейсы ВМ, отсортированный по номеру слота PCI. +
+ boot_loader_type + + str + + Тип загрузчика операционной системы. +
+ boot_loader_metaiso + + dict | null + + Информация об образе загрузчика ВМ. +
+ device_name + + str + + Имя устройства +
+ path + + str + + Путь к файлу образа. +
+ name + + str + + Имя ВМ. +
+ network_interface_naming + + str + + Шаблон именования сетевых интерфейсов в ОС Linux. +
+ numa_affinity + + str + + Правило применения NUMA affinity к виртуальной машине. +
+ os_version + + str + + Версия операционной системы. +
+ password + + str + + Пароль пользователя ОС по умолчанию. +
+ pinned_to_node + + bool + + ВМ привязана к вычислительному узлу. +
+ preferred_cpu_cores + + list + + Список номеров предпочтительных выделенных ядер ЦП. +
+ private_ips + + list + + Список IP-адресов на сетевых интерфейсах ВМ, которые подключены к внутренним сетям. +
+ public_ips + + list + + Список IP адресов на сетевых интерфейсах ВМ, которые подключены к внешним сетям. +
+ ram + + int + + Объём ОЗУ ВМ в МБ. +
+ read_only + + bool + + Ограничена ли возможность изменения ВМ. +
+ rg_id + + int + + Идентификатор ресурсной группы, которой принадлежит данная ВМ. +
+ snapshots + + list + + Список словарей, описывающих снимки ВМ. +
+ state + + str + + Состояние ВМ. +
+ tags + + dict + + Словарь, пары ключ-значение которого, описывают тэги ВМ. +
+ tech_status + + str + + Технический статус ВМ. +
+ username + + str + + Имя пользователя ОС по умолчанию. +
+ vnc_password + + str + + Пароль, используемый для подключения к ВМ через VNC. +
+ zone_id + + int + + Идентификатор зоны ВМ. +
+ weight + + int + + Вес. +
+ +### Ссылка на консоль + + + + + + + + + + + +
КлючТипОписание
+ console_url + + str + + Ссылка на консоль ВМ. +
+ +### Статус копирования данных из удаляемого снимка на СХД Shared + + + + + + + + + + + +
КлючТипОписание
+ snapshot_merge_status + + dict + + Словарь, где ключ - идентификатор диска, а значение - статус. +
+ +### Статус клонирования + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
КлючТипОписание
+ cloning_status + + dict + + Словарь, описывающий статус клонирования. +
+ disk_id + + int + + Идентификатор клонируемого диска +
+ status + + dict + + Словарь с подробным описанием статуса. +
Может быть пустым словарем {}. +
+ type + + int + + Тип клонирования. +
+ bandwidth + + int + + Скорость клонирования данных. +
+ cur + + int + + Объём переданных данных. +
+ end + + int + + Общий объём передаваемых данных. +
+ ready + + bool + + Готовность клонирования. +
+ progress_percent + + int + + Прогресс клонирования в процентах. +
+ +## Примеры использования + +### Создать + +#### С указанием описания +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + description: vm description + state: present +``` + +#### С указанием объёма загрузочного диска +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + boot: + disk_size: 10 + state: present +``` + +#### С указанием СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + sep_id: "{{ sep_id }}" + pool: "{{ sep_pool_name }}" + state: present +``` + +#### С указанием Cloud-init user data +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + ci_user_data: + packages: + - apache2 + write_files: + - content: | +
+ Hello World! +
+ owner: user:user + path: /var/www/html/index.html + hostname: test-apache + ssh_keys: + - rsa_public: ssh-rsa AAAAOasDmLxnD= user@pc + state: present +``` + +#### С указанием SSH-ключа +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + ssh_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA... + ssh_key_user: user + state: present +``` + +#### С указанием NUMA Affinity +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + numa_affinity: strict + state: present +``` + +#### С указанием запуска на выделенных ядрах ЦП +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + cpu_pin: true + state: present +``` + +#### С использованием Huge Pages +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + hp_backed: true + state: present +``` + +#### С указанием custom_fields +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + custom_fields: + fields: + title: Title + cpu: + mode: custom + vendor: Intel + cache: + mode: disable + topology: + sockets: 1 + cores: 14 + threads: 1 + match: minimum + check: partial + state: present +``` + +#### С указанием affinity-метки +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with affinity-label + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + affinity_label: label + state: present +``` + +#### С указанием affinity правил +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with affinity rules + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + aff_rule: + - topology: compute + policy: RECOMMENDED + mode: EQ + key: key + value: value + state: present +``` + +#### С указанием anti-affinity правил +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with anti-affinity rules + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + aaff_rule: + - topology: node + policy: REQUIRED + mode: ANY + key: key + value: value + state: present +``` + +#### С указанием тэгов +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with tags + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + tag: + tag1_key: tag1_value + tag2_key: tag2_value + state: present +``` + +#### С образом +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with image + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + image_id: "{{ image_id }}" + storage_policy_id: "{{ storage_policy_id }}" + state: present +``` + +#### Без образа + +##### С загрузочным диском +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and with boot disk + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + boot: + disk_size: 10 + state: present +``` + +##### Без загрузочного диска +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and without boot disk + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + state: present +``` + +##### С указанием режима загрузки +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and with boot mode + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + boot: + mode: bios +``` + +##### С указанием типа загрузчика ОС +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and with loader type + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + boot: + loader_type: linux +``` + +##### С указанием именования сетевых интерфейсов +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and with network interface naming + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + network_interface_naming: ens +``` + +##### С поддержкой изменения объема ОЗУ и количества ЦП у запущенной ВМ +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM without image and with hot resize + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + hot_resize: true +``` + +#### С включением автоматического запуска ВМ после перезапуска вычислительного узла, за которым она закреплена +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + auto_start: true + state: present +``` + +#### С указанием чипсета +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + chipset: i440fx + state: present +``` + +### С указанием предпочтительных ядер +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with preferred CPU cores + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + cpu_pin: true + preferred_cpu_cores: + - 0 + - 1 + state: present +``` + +### Путём клонирования другой ВМ + +#### Без указания снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM clone + decort_vm: + # Параметры для авторизации упущены + name: vm_clone + clone_from: + id: "{{ vm_id }}" + force: true + storage_policy_id: "{{ storage_policy_id }}" +``` + +#### С указанием имени снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM clone + decort_vm: + # Параметры для авторизации упущены + name: vm_clone + clone_from: + id: "{{ vm_id }}" + snapshot: + name: snapshot_01 + force: true + storage_policy_id: "{{ storage_policy_id }}" +``` + +#### С указанием временной метки снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM clone + decort_vm: + # Параметры для авторизации упущены + name: vm_clone + clone_from: + id: "{{ vm_id }}" + snapshot: + timestamp: 1739792809 + force: true + storage_policy_id: "{{ storage_policy_id }}" +``` + +#### С указанием даты создания снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM clone + decort_vm: + # Параметры для авторизации упущены + name: vm_clone + clone_from: + id: "{{ vm_id }}" + snapshot: + datetime: 2024-02-17 14:50:22 + force: true + storage_policy_id: "{{ storage_policy_id }}" +``` + +#### С указанием СХД +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM clone + decort_vm: + # Параметры для авторизации упущены + name: vm_clone + clone_from: + id: "{{ vm_id }}" + force: true + sep_pool_name: "{{ sep_pool_name }}" + sep_id: "{{ sep_id }}" + storage_policy_id: "{{ storage_policy_id }}" +``` + +### С указанием зоны +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with zone id + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + zone_id: 2 + state: present +``` + +### С указанием версии операционной системы +``` +- name: Example + hosts: localhost + tasks: + - name: Create VM with OS version + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" + cpu: 1 + ram: 512 + storage_policy_id: "{{ storage_policy_id }}" + os_version: "{{ os_version }}" + state: present +``` + +### Получение основной информации о виртуальной машине + +#### По идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic VM info by ID + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" +``` + +#### По имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic VM info by name + decort_vm: + # Параметры для авторизации упущены + rg_id: "{{ rg_id }}" + name: "{{ vm_name }}" +``` + +### Получение ссылки на консоль +``` +- name: Example + hosts: localhost + tasks: + - name: Get VM console URL + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + get_console_url: true +``` + +### Остановить/приостановить/запустить + +#### Остановить +``` +- name: Example + hosts: localhost + tasks: + - name: Stop VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + state: stopped +``` + +#### Запустить +``` +- name: Example + hosts: localhost + tasks: + - name: Start VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + state: started +``` + +#### Приостановить +``` +- name: Example + hosts: localhost + tasks: + - name: Pause VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + state: paused +``` + +#### Запустить с загрузкой с образа CD-ROM +``` +- name: Example + hosts: localhost + tasks: + - name: Boot from CD-ROM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + from_cdrom: 10 + state: started +``` + +### Подключить/отключить диски + +#### Подключить +``` +- name: Example + hosts: localhost + tasks: + - name: Connect data disks to VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + disks: + mode: update + objects: + - id: "{{ datadisk1_id }}" + pci_slot_num_hex: "{{ pci_slot_num_hex }}" + bus_num_hex: "{{ bus_num_hex }}" + - id: "{{ datadisk2_id }}" +``` + +#### Отключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disconnect data disks from VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + disks: + mode: match + objects: [] +``` + +### Подключить/отключить сети + +#### Подключить VINS/EXTNET/VFNIC-сети +``` +- name: Example + hosts: localhost + tasks: + - name: Connect networks to VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: VINS + id: "{{ vins_id }}" + ip_addr: 192.168.4.0 + mac: "00:11:22:33:44:55" + - type: EMPTY + - type: EXTNET + id: "{{ extnet_id }}" + mtu: 1500 + ip_addr: 35.21.230.0 + - type: VFNIC + id: "{{ vfpool_id }}" + ip_addr: 192.168.4.5 + net_prefix: 10 + - type: TRUNK + id: "{{ trunk_id }}" + mtu: 2000 + state: stopped +``` + +#### Подключить VINS/EXTNET/VFNIC-сети с соблюдением очередности +``` +- name: Example + hosts: localhost + tasks: + - name: Connect networks to VM with network order changing + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: VINS + id: "{{ vins_id }}" + ip_addr: 192.168.4.0 + mac: "00:11:22:33:44:55" + - type: EMPTY + - type: EXTNET + id: "{{ extnet_id }}" + mtu: 1500 + ip_addr: 35.21.230.0 + - type: VFNIC + id: "{{ vfpool_id }}" + ip_addr: 192.168.4.5 + - type: TRUNK + id: "{{ trunk_id }}" + mtu: 2000 + network_order_changing: true + state: stopped +``` + +#### Подключить DPDK сети +``` +- name: Example + hosts: localhost + tasks: + - name: Connect DPDK networks to VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + hp_backed: true + networks: + - type: DPDK + id: "{{ dpdk1_id }}" + - type: DPDK + id: "{{ dpdk2_id }}" + mtu: 1500 + ip_addr: 192.168.4.1 + net_prefix: 10 + state: stopped +``` + +#### Подключить сеть с выключенным интерфейсом +``` +- name: Example + hosts: localhost + tasks: + - name: Connect network with disabled interface + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: "{{ network_type }}" + id: "{{ network_id }}" + enabled: false + state: stopped +``` + +#### Подключить SDN сеть +``` +- name: Example + hosts: localhost + tasks: + - name: Connect SDN network to VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: SDN + mac: "11:22:33:44:55:66" + id: "{{ sdn_logical_port_id }}" + state: stopped +``` + +#### Отключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disconnect networks from VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: [] + state: stopped +``` + +### Включить/выключить сетевой интерфейс + +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Enable VM interface + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: "{{ network_type }}" + id: "{{ network_id }}" + enabled: true +``` + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable VM interface + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: "{{ network_type }}" + id: "{{ network_id }}" + enabled: false +``` + +### Откатить ВМ к состоянию снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Rollback VM to snapshot + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + rollback_to: snapshot_01 + state: stopped +``` + +### Взаимодействовать c QEMU Guest Agent +#### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Enable guest agent + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + guest_agent: + enabled: true +``` + +#### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable guest agent + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + guest_agent: + enabled: false +``` + +#### Обновить список доступных команд +``` +- name: Example + hosts: localhost + tasks: + - name: Update available guest agent commands + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + guest_agent: + update_available_commands: true +``` + +#### Выполнить команду +``` +- name: Example + hosts: localhost + tasks: + - name: Execute guest agent command + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + guest_agent: + exec: + cmd: guest-set-user-password + args: + username: user + password: newPassword +``` + +### Получение статуса копирования данных из удаляемого снимка на СХД Shared +``` +- name: Example + hosts: localhost + tasks: + - name: Get snapshot merge status + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + get_snapshot_merge_status: true +``` + +### Получение статуса клонирования +``` +- name: Example + hosts: localhost + tasks: + - name: Get cloning status + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + get_cloning_status: true +``` + +### Отменить клонирование +``` +- name: Example + hosts: localhost + tasks: + - name: Abort cloning + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + abort_cloning: true +``` + +### Взаимодействовать с CD-ROM +#### Вставить диск +``` +- name: Example + hosts: localhost + tasks: + - name: Insert disk + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + cdrom: + mode: insert + image_id: 19 +``` + +#### Извлечь диск +``` +- name: Example + hosts: localhost + tasks: + - name: Eject disk + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + cdrom: + mode: eject +``` + +### Изменить + +#### Объём загрузочного диска в большую сторону +``` +- name: Example + hosts: localhost + tasks: + - name: Increase boot disk size + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + disk_size: 15 + state: stopped +``` + +#### Количество ЦП +``` +- name: Example + hosts: localhost + tasks: + - name: Change CPU amount + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + cpu: 1 + state: stopped +``` + +#### Объём ОЗУ +``` +- name: Example + hosts: localhost + tasks: + - name: Change RAM size + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + ram: 512 + state: stopped +``` + +#### Тэги +``` +- name: Example + hosts: localhost + tasks: + - name: Change tags + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + tag: + tag1_key: tag1_value + tag2_key: tag2_value +``` + +#### Affinity метку +``` +- name: Example + hosts: localhost + tasks: + - name: Change affinity label + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + affinity_label: Affinity label 1 +``` + +#### Affinity правила +``` +- name: Example + hosts: localhost + tasks: + - name: Change affinity rules + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + aff_rule: + - topology: compute + policy: REQUIRED + mode: EQ + key: app + value: main + - topology: node + policy: RECOMMENDED + mode: NE + key: state + value: started +``` + +#### Anti-affinity правила +``` +- name: Example + hosts: localhost + tasks: + - name: Change anti-affinity rules + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + aaff_rule: + - topology: compute + policy: REQUIRED + mode: ANY + key: app + value: main +``` + +#### Описание +``` +- name: Example + hosts: localhost + tasks: + - name: Change description + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + description: vm description +``` + +#### Чипсет +``` +- name: Example + hosts: localhost + tasks: + - name: Change chipset + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + chipset: i440fx + state: stopped +``` + +#### Правило NUMA Affinity +``` +- name: Example + hosts: localhost + tasks: + - name: Change NUMA affinity rule + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + numa_affinity: loose + state: stopped +``` + +#### Запуск на выделенных ядрах ЦП +``` +- name: Example + hosts: localhost + tasks: + - name: Change CPU Pinning usage + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + cpu_pin: true + state: stopped +``` + +#### Использование Huge Pages +``` +- name: Example + hosts: localhost + tasks: + - name: Change Huge Pages usage + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + hp_backed: true + state: stopped +``` + +#### Имя +``` +- name: Example + hosts: localhost + tasks: + - name: Rename VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + name: "{{ new_vm_name }}" +``` + +#### XML виртуальной машины + +##### Изменение +``` +- name: Example + hosts: localhost + tasks: + - name: Change XML management + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + custom_fields: + fields: + cpu: + mode: custom + vendor: Intel + cache: + mode: enable + os: + type: + machine: pc-i440fx-artful +``` + +##### Отключение управления ВМ через XML +``` +- name: Example + hosts: localhost + tasks: + - name: Disable XML management + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + custom_fields: + disable: true +``` + +#### Автоматический запуск ВМ после перезапуска вычислительного узла, за которым она закреплена + +##### Включить +``` +- name: Example + hosts: localhost + tasks: + - name: Enable auto starting pinned VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + auto_start: true +``` + +##### Выключить +``` +- name: Example + hosts: localhost + tasks: + - name: Disable auto starting of pinned VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + auto_start: false +``` + +#### Предпочтительные ядра +``` +- name: Example + hosts: localhost + tasks: + - name: Change preferred CPU cores + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + cpu_pin: true + preferred_cpu_cores: + - 0 + - 1 + - 2 + state: stopped +``` + +#### Загрузочный диск +``` +- name: Example + hosts: localhost + tasks: + - name: Make the disk bootable + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + disk_id: "{{ vm_disk1_id }}" +``` + +#### Режим загрузки +``` +- name: Example + hosts: localhost + tasks: + - name: Change boot mode + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + mode: uefi +``` + +#### Тип загрузчика ОС +``` +- name: Example + hosts: localhost + tasks: + - name: Change loader type + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + loader_type: windows +``` + +#### Именование сетевых интерфейсов +``` +- name: Example + hosts: localhost + tasks: + - name: Change network interface naming + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + network_interface_naming: eth +``` + +#### Поддержку изменения объема ОЗУ и количества ЦП у запущенной ВМ +``` +- name: Example + hosts: localhost + tasks: + - name: Change hot resize support + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + hot_resize: true +``` + +#### MAC-адрес сетевого интерфейса +``` +- name: Example + hosts: localhost + tasks: + - name: Change network interface MAC address + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: VINS + id: "{{ vins_id }}" + mac: "11:22:33:44:55:66" +``` + +#### Зону ВМ +``` +- name: Example + hosts: localhost + tasks: + - name: Change VM zone + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + zone_id: 2 +``` + +#### Порядок загрузки +``` +- name: Example + hosts: localhost + tasks: + - name: Change boot order + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + order: + - hd + - network + - cdrom +``` + +#### Группы безопасности сетевого интерфейса +``` +- name: Example + hosts: localhost + tasks: + - name: Change interface's security groups + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: VINS + id: "{{ vins_id }}" + security_group_mode: true + security_group_ids: + - "{{ security_group1_id }}" + - "{{ security_group2_id }}" +``` + +#### Версию операционной системы +``` +- name: Example + hosts: localhost + tasks: + - name: Change VM OS version + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + os_version: "{{ os_version }}" +``` + +#### Длину сетевого префикса +``` +- name: Example + hosts: localhost + tasks: + - name: Change interface net prefix + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + networks: + - type: DPDK + id: "{{ dpdk_id }}" + net_prefix: 22 +``` + +### Пересоздать загрузочный диск +#### Без изменения образа +``` +- name: Example + hosts: localhost + tasks: + - name: Redeploy boot disk + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + disk_redeploy: true +``` +#### С изменением образа +``` +- name: Example + hosts: localhost + tasks: + - name: Redeploy boot disk with image changing + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + disk_redeploy: true + image_id: "{{ image_id }}" +``` + +#### С указанием политики хранения +``` +- name: Example + hosts: localhost + tasks: + - name: Redeploy boot disk with storage policy + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + storage_policy_id: "{{ storage_policy_id }}" + boot: + disk_redeploy: true +``` + +#### С указанием версии операционной системы +``` +- name: Example + hosts: localhost + tasks: + - name: Redeploy boot disk with os version + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + os_version: "{{ os_version }}" + boot: + disk_redeploy: true +``` + +#### С указанием размера загрузочного диска +``` +- name: Example + hosts: localhost + tasks: + - name: Redeploy boot disk with disk size + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + boot: + disk_redeploy: true + disk_size: 10 +``` + +### Удалить + +#### Безвозвратно +``` +- name: Example + hosts: localhost + tasks: + - name: Delete VM + decort_vm: + # Параметры для авторизации упущены + id: "{{ vm_id }}" + state: absent +``` diff --git a/12.0.0/модуль-decort_vm_list.md b/12.0.0/модуль-decort_vm_list.md new file mode 100644 index 0000000..4388251 --- /dev/null +++ b/12.0.0/модуль-decort_vm_list.md @@ -0,0 +1,1972 @@ +# Модуль decort_vm_list +## Обзор модуля + +Модуль **decort_vm_list** предназначен для получения списка доступных пользователю виртуальных машин (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_vm_list** (за исключением [общих параметров авторизации](./введение.md#общие-параметры-модулей-для-авторизации)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ account_id + + (int) + + По идентификатору аккаунта. +
+ ext_net_id + + (int) + + По идентификатору внешней сети. +
+ ext_net_name + + (str) + + По имени внешней сети. +
+ id + + (int) + + По идентификатору. +
+ include_deleted + + (bool) + + Включая удалённые в корзину. +
+ ip_addr + + (str) + + По IP-адресу. +
+ name + + (str) + + По имени. +
+ rg_id + + (int) + + По идентификатору ресурсной группы. +
+ rg_name + + (str) + + По имени ресурсной группы. +
+ status + + (str) +
Значения: +
CREATED +
DELETED +
DELETING +
DESTROYED +
DESTROYING +
DISABLED +
ENABLED +
MODELED +
REDEPLOYING +
+ По статусу. +
+ tech_status + + (str) +
Значения: +
BACKUP_RUNNING +
BACKUP_STOPPED +
CLONING +
DOWN +
MERGE +
MIGRATING +
MIGRATING_IN +
MIGRATING_OUT +
PAUSED +
PAUSING +
ROLLBACK +
SCHEDULED +
SNAPCREATE +
STARTED +
STARTING +
STOPPED +
STOPPING +
+ По техническому статусу. +
+ zone_id + + (int) + + По идентификатору зоны. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_vm_list** возвращает информацию о доступных виртуальных машинах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_id + + int + + Идентификатор аккаунта. +
+ account_name + + str + + Имя аккаунта. +
+ acl + + list[any] + +
+ affinity_label + + str + + Метка affinity. +
+ affinity_rules + + list[dict[str, str]] + + Список словарей, описывающих affinity правила. +
+ guid + + str + + Идентификатор. +
+ key + + str + + Ключ. +
+ mode + + str + + Режим. +
+ policy + + str + + Политика. +
+ topology + + str + + Топология. +
+ value + + str + + Значение. +
+ affinity_weight + + int + +
+ anti_affinity_rules + + list[dict[str, str]] + + Список словарей, описывающих anti-affinity правила. +
+ guid + + str + + Идентификатор. +
+ key + + str + + Ключ. +
+ mode + + str + + Режим. +
+ policy + + str + + Политика. +
+ topology + + str + + Топология. +
+ value + + str + + Значение. +
+ arch + + str + + Архитектура ВМ. +
+ auto_start + + bool + + Автоматический запуск ВМ после перезапуска вычислительного узла, за которым она закреплена. +
+ boot_disk_size_gb + + int + + Объём загрузочного диска виртуальной машины в ГБ. +
+ boot_image_id + + int + + Идентификатор образа загрузочного диска. +
+ boot_loader_type + + str + + Тип загрузчика операционной системы. +
+ boot_mode + + str + + Режим загрузки. +
+ boot_order + + list[str] + + Порядок загрузки. +
+ cdrom_image_id + + int + + Идентификатор образа CD-ROM. +
+ chipset + + str + + Эмулируемый чипсет. +
+ clone_ids + + list[int] + + Список идентификаторов клонов ВМ. +
+ clone_reference + + int + + Идентификатор ВМ, клоном которой является данная ВМ. +
+ cpu_count + + int + + Количество виртуальных процессоров. +
+ cpu_pin + + bool + + Запуск виртуальной машины на выделенных ядрах ЦП. +
+ created_by + + str + + Имя пользователя, создавшего ВМ. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ custom_fields + + dict[str, any] + +
+ deleted_by + + str + + Имя пользователя, удалившего ВМ. +
+ deleted_datetime + + str | null + + Дата и время удаления. +
+ deleted_timestamp + + int + + Unix-время удаления. +
+ description + + str + + Описание ВМ. +
+ disks + + list[dict[str, int]] + + Список словарей, описывающих диски, подключенные к ВМ. +
+ id + + int + + Идентификатор диска. +
+ sep_id + + int + + Идентификатор СХД диска. +
+ driver + + str + + Драйвер ВМ. +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guest_agent + + dict[str, any] + + Информация о QEMU Guest Agent ВМ. +
+ available_commands + + list[str] + + Список доступных команд. +
+ enabled + + bool + + Включен/выключен. +
+ guid + + str + + Идентификатор. +
+ last_update_datetime + + str | null + + Дата и время последнего обновления доступных команд. +
+ last_update_timestamp + + int + + Временная метка последнего обновления доступных команд. +
+ user_name + + str + + Имя пользователя, совершившего последнее обновление доступных команд. +
+ guid + + int + + Идентификатор ВМ. +
+ hot_resize + + bool + + Поддержка изменения объёма ОЗУ и количества процессоров у запущенной ВМ. +
+ hp_backed + + bool + + Использовать Huge Pages для выделения оперативной памяти виртуальной машины. +
+ id + + int + + Идентификатор ВМ. +
+ interfaces + + list[dict[str, any]] + + Список словарей, описывающих сетевые интерфейсы ВМ. +
+ bus_num + + int + + Номер шины. +
+ conn_id + + int + + Идентификатор соединения. +
+ conn_type + + str + + Тип соединения. +
+ default_gw + + str + + Шлюз по умолчанию. +
+ enabled + + bool + + Включен ли сетевой интерфейс. +
+ flip_group_id + + int + + Идентификатор группы с плавающим IP-адресом. +
+ guid + + int + + Идентификатор сетевого интерфейса. +
+ ip_addr + + str + + IP-адрес сетевого интерфейса. +
+ libvirt_settings + + dict[str, any] + + Настройки libvirt. +
+ event_idx + + str + +
+ guid + + str + + Идентификатор. +
+ ioeventfd + + str + +
+ queues + + int + +
+ rx_queue_size + + int + +
+ tx_mode + + str + +
+ tx_queue_size + + int + +
+ listen_ssh + + bool + +
+ mac + + str + + MAC-адрес сетевого интерфейса. +
+ mtu + + int + + MTU сетевого интерфейса. +
+ name + + str + + Имя. +
+ net_id + + int + + Идентификатор сети. +
+ net_prefix + + str + + Префикс сети. +
+ net_type + + str + + Тип сети. +
+ node_id + + int + + Идентификатор физического узла. +
+ pci_slot_num + + int + + Номер слота PCI. +
+ sdn_logical_port_id + + str + + Идентификатор логического порта SDN. +
+ security_group_ids + + list[int] + + Список идентификаторов групп безопасности. +
+ security_group_mode + + bool + + Включены ли группы безопасности. +
+ target + + str + +
+ trunk_vlan_ids + + str | null + + Идентификаторы транковых портов. +
+ type + + str + + Тип сетевого интерфейса. +
+ vnf_ids + + list[int] + + Идентификаторы виртуальных функций. +
+ live_migration_job_id + + int + + Идентификатор задачи live-миграции. +
+ lock_status + + str + + Статус блокировки. +
+ manager_id + + int + +
+ manager_type + + str + +
+ migration_job_id + + int + + Идентификатор задачи миграции. +
+ milestones + + int + + Количество событий. +
+ name + + str + + Имя ВМ. +
+ need_reboot + + bool + + Требуется ли перезагрузка. +
+ network_interface_naming + + str + + Шаблон именования сетевых интерфейсов в ОС Linux. +
+ numa_affinity + + str + + Правило применения NUMA affinity к виртуальной машине. +
+ numa_node_id + + int + + Идентификатор узла NUMA. +
+ os_version + + str + + Версия операционной системы. +
+ pci_devices + + dict[str, int] + + Словарь, описывающий PCI устройства, где ключ - шина и порт подключения, а значение - идентификатор устройства. +
+ pinned_to_node + + bool + + ВМ привязана к вычислительному узлу. +
+ preferred_cpu_cores + + list[int] + + Список номеров предпочтительных выделенных ядер ЦП. +
+ ram_size_mb + + int + + Объём ОЗУ в МБ. +
+ read_only + + bool + + Ограничена ли возможность изменения ВМ. +
+ reference_id + + str + +
+ res_name + + str + + Имя ресурса. +
+ reserved_cpu_cores + + list[int] + + Список номеров зарезервированных ядер ЦП. +
+ rg_id + + int + + Идентификатор ресурсной группы. +
+ rg_name + + str + + Имя ресурсной группы. +
+ snapshot_sets + + list + + Список словарей, описывающих наборы снимков ВМ. +
+ disk_ids + + list[int] + + Список идентификаторов дисков. +
+ guid + + str + + Идентификатор. +
+ label + + str + + Метка снимка. +
+ datetime + + str | null + + Дата и время создания снимка. +
+ timestamp + + int + + Временная метка создания снимка. +
+ stateless_sep_id + + int | null + + Идентификатор СХД для stateless-дисков. +
+ stateless_sep_type + + str | null + + Тип СХД для stateless-дисков. +
+ status + + str + + Статус. +
+ tags + + dict[str, any] + + Словарь, пары ключ-значение которого, описывают тэги ВМ. +
+ tech_status + + str + + Технический статус ВМ. +
+ total_disks_size_gb + + int + + Общий размер дисков в ГБ. +
+ updated_by + + str + + Имя пользователя, обновившего ВМ. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ user_managed + + bool + + Управляется ли пользователем. +
+ vgpu_ids + + list[int] + + Список идентификаторов виртуальных графических процессоров. +
+ vins_count + + int + + Количество внутренних сетей. +
+ vm_ci_id + + int + +
+ weight + + int + + Вес. +
+ zone_id + + int + + Идентификатор зоны ВМ. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по идентификатору аккаунта. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + account_id: "{{ account_id }}" +``` + +### С фильтрацией по идентификатору внешней сети. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + ext_net_id: "{{ ext_net_id }}" +``` + +### С фильтрацией имени внешней сети. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + ext_net_name: "{{ ext_net_name }}" +``` + +### С фильтрацией по идентификатору. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией, включая удалённые в корзину. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + include_deleted: true +``` + +### С фильтрацией по IP-адресу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + ip_addr: "{{ ip_addr }}" +``` + +### С фильтрацией по имени. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по идентификатору ресурсной группы. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + rg_id: "{{ rg_id }}" +``` + +### С фильтрацией по имени ресурсной группы. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + rg_name: "{{ rg_name }}" +``` + +### С фильтрацией по статусу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С фильтрацией по техническому статусу. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + tech_status: "{{ tech_status }}" +``` + +### С фильтрацией по идентификатору зоны. +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + filter: + zone_id: "{{ zone_id }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + pagination: + size: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get VMs + decort_vm_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/12.0.0/модуль-decort_vm_snapshot.md b/12.0.0/модуль-decort_vm_snapshot.md new file mode 100644 index 0000000..052a989 --- /dev/null +++ b/12.0.0/модуль-decort_vm_snapshot.md @@ -0,0 +1,275 @@ +# Модуль decort_vm_snapshot +## Обзор модуля + +Модуль **decort_vm_snapshot** предназначен для выполнения следующих действий над снимками виртуальных машин: +- **создать** (см. [параметр state](#state) и [примеры](#создать)) +- **удалить** (см. [параметр state](#state) и [примеры](#удалить)) +- **отменить копирование данных из удаляемого снимка на СХД Shared** (см. [параметр state](#state) и [примеры](#отменить-копирование-данных-из-удаляемого-снимка-на-схд-shared)) +- **получить основную информацию о снимке** (см. [возвращаемые значения](#основная-информация) и [примеры](#получить-основную-информацию-о-снимке)) +- **получить информацию о размере снимка** (см. [параметр usage](#usage), [возвращаемые значения](#размер-снимка) и [примеры](#получить-информацию-о-размере-снимка)) + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_vm_snapshot** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ + label + + + (str) + + Метка снимка виртуальной машины. Если метка не указана при создании, она будет сгенерирована автоматически на основе даты и времени - vm_name_2024-12-10_16-40-52. +
+ + state + + + (str) +
Значения: +
absent +
merge_aborted +
present +
+ Целевое состояние. +
absent - снимок удален. +
merge_aborted - копирование данных из удаляемого снимка на СХД Shared отменено. +
present - снимок существует. +
+ + usage + + + (bool) +
Default:false +
+ Получить информацию о реальном размере снимка виртуальной машины. +
+ + vm_id + + + (int) + + Идентификатор виртуальной машины. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_vm_snapshot** возвращает информацию о снимке виртуальной машины в виде словаря `facts` со следующими ключами: + +### Основная информация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ datetime + + str + + Дата и время создания. +
+ disk_ids + + list[int] + + Идентификаторы дисков. +
+ guid + + str + + Идентификатор снимка +
+ label + + str + + Метка снимка +
+ timestamp + + int + + Временная метка создания снимка +
+ vm_id + + int + + Идентификатор виртуальной машины +
+ +### Размер снимка + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ stored + + float + + Размер снимка +
+ +## Примеры использования + +### Создать + +#### С указанием метки +``` +- name: Example + hosts: localhost + tasks: + - name: Create snapshot + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + label: "{{ snapshot_label }}" + state: present +``` + +#### Без указания метки +``` +- name: Example + hosts: localhost + tasks: + - name: Create snapshot + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + state: present +``` + +### Удалить +``` +- name: Example + hosts: localhost + tasks: + - name: Delete snapshot + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + label: "{{ snapshot_label }}" + state: absent +``` + +### Отменить копирование данных из удаляемого снимка на СХД Shared +``` +- name: Example + hosts: localhost + tasks: + - name: Abort merge + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + label: "{{ snapshot_label }}" + state: merge_aborted +``` + +### Получить основную информацию о снимке +``` +- name: Example + hosts: localhost + tasks: + - name: Get basic snapshot info + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + label: "{{ snapshot_label }}" +``` + +### Получить информацию о размере снимка +``` +- name: Example + hosts: localhost + tasks: + - name: Get snapshot usage + decort_vm_snapshot: + # Параметры для авторизации упущены + vm_id: "{{ vm_id }}" + label: "{{ snapshot_label }}" + usage: true +``` diff --git a/12.0.0/модуль-decort_zone.md b/12.0.0/модуль-decort_zone.md new file mode 100644 index 0000000..0df1a19 --- /dev/null +++ b/12.0.0/модуль-decort_zone.md @@ -0,0 +1,402 @@ +# Модуль decort_zone +## Обзор модуля + +Модуль **decort_zone** предназначен для получения информации о зоне (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#получение-информации-о-зоне)). + + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_zone** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + +
ПараметрТипОписание
+ + id + + + (int) + + Идентификатор зоны. +
+ +## Возвращаемые значения + +Модуль **decort_zone** возвращает информацию о зоне в виде словаря `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ account_ids + + list[int] + + Идентификаторы аккаунтов. +
+ bservice_ids + + list[int] + + Идентификаторы базовых служб. +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deletable + + bool + + Возможность удаления. +
+ description + + str + + Описание. +
+ drs + + bool + + Включён ли DRS. +
+ drs_broadcast_ip_addr + + str + + IP-адрес для широковещательных сообщений DRS. +
+ drs_bvs_domain + + str + + Домен BVS для аутентификации DRS для запросов к Dynamix. +
+ drs_dx_app_id + + str + + Идентификатор приложения API-ключа для запросов DRS к Dynamix. +
+ drs_dx_ssl_skip_verify + + bool + + Отключена ли проверка SSL-сертификата для запросов DRS к Dynamix. +
+ drs_dx_sso_type + + str + + Тип провайдера аутентификации для запросов DRS к Dynamix. +
+ drs_dx_sso_url + + str + + URL SSO для аутентификации DRS в Dynamix. +
+ drs_dx_url + + str + + URL для запросов DRS к Dynamix. +
+ drs_name + + str + + Имя кластера DRS. +
+ drs_ping_ip_addr + + str + + IP-адрес контрольного хоста, который отвечает на запросы ICMP Echo-Request от DRS. +
+ drs_uid + + str + + Идентификатор кластера DRS. +
+ extnet_ids + + list[int] + + Идентификаторы внешних сетей. +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ k8s_ids + + list[int] + + Идентификаторы кластеров. +
+ lb_ids + + list[int] + + Идентификаторы балансировщиков нагрузки. +
+ name + + str + + Название. +
+ node_auto_start + + bool + + Автоматический запуск узла. +
+ node_ids + + list[int] + + Идентификаторы физических узлов. +
+ status + + str + + Статус. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ vins_ids + + list[int] + + Идентификаторы внутренних сетей. +
+ vm_ids + + list[int] + + Идентификаторы виртуальных машин. +
+ +## Примеры использования + +### Получение информации о зоне +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone info + decort_zone: + # Параметры для авторизации упущены + id: 1 +``` diff --git a/12.0.0/модуль-decort_zone_list.md b/12.0.0/модуль-decort_zone_list.md new file mode 100644 index 0000000..5c1d6d3 --- /dev/null +++ b/12.0.0/модуль-decort_zone_list.md @@ -0,0 +1,593 @@ +# Модуль decort_zone_list +## Обзор модуля + +Модуль **decort_zone_list** предназначен для получения списка доступных пользователю зон (см. [возвращаемые значения](#возвращаемые-значения) и [примеры](#примеры-использования)). + +## Параметры модуля +Ниже приведен список параметров для модуля **decort_zone_list** (за исключением [общих параметров](./введение.md#общие-параметры-модулей)): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПараметрТипОписание
+ filter + + (dict) + + Фильтр. +
+ deletable + + (bool) + + По возможности удалить. +
+ description + + (str) + + По описанию. +
+ grid_id + + (int) + + По идентификатору ЦОДа. +
+ id + + (int) + + По идентификатору. +
+ name + + (str) + + По имени. +
+ node_id + + (int) + + По идентификатору физического узла. +
+ status + + (str) +
Значения: +
CREATED +
DESTROYED +
+ По статусу. +
+ pagination + + (dict) + + Постраничный вывод. +
+ number + + (int) +
Default: 1 +
+ Номер страницы. +
+ size + + (int) + + Размер страниц. +
Обязательный параметр. +
+ sorting + + (dict) + + Сортировка. +
+ asc + + (bool) +
Default: true +
+ Сортировать по возрастанию. +
true - по возрастанию. +
false - по убыванию. +
+ field + + (str) + + Название поля, по которому сортировать. +
Обязательный параметр. +
+ +## Возвращаемые значения + +Модуль **decort_zone_list** возвращает информацию о доступных зонах в виде списка словарей `facts` со следующими ключами: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ключ + + Тип +
данных +
+ Описание +
+ created_datetime + + str | null + + Дата и время создания. +
+ created_timestamp + + int + + Unix-время создания. +
+ deletable + + bool + + Возможность удаления. +
+ description + + str + + Описание. +
+ drs + + bool + + Включён ли DRS. +
+ drs_broadcast_ip_addr + + str + + IP-адрес для широковещательных сообщений DRS. +
+ drs_bvs_domain + + str + + Домен BVS для аутентификации DRS для запросов к Dynamix. +
+ drs_dx_app_id + + str + + Идентификатор приложения API-ключа для запросов DRS к Dynamix. +
+ drs_dx_ssl_skip_verify + + bool + + Отключена ли проверка SSL-сертификата для запросов DRS к Dynamix. +
+ drs_dx_sso_type + + str + + Тип провайдера аутентификации для запросов DRS к Dynamix. +
+ drs_dx_sso_url + + str + + URL SSO для аутентификации DRS в Dynamix. +
+ drs_dx_url + + str + + URL для запросов DRS к Dynamix. +
+ drs_name + + str + + Имя кластера DRS. +
+ drs_ping_ip_addr + + str + + IP-адрес контрольного хоста, который отвечает на запросы ICMP Echo-Request от DRS. +
+ drs_uid + + str + + Идентификатор кластера DRS. +
+ grid_id + + int + + Идентификатор ЦОДа. +
+ guid + + int + + Идентификатор. +
+ id + + int + + Идентификатор. +
+ name + + str + + Название. +
+ node_auto_start + + bool + + Автоматический запуск узла. +
+ node_ids + + list[int] + + Идентификаторы физических узлов. +
+ status + + str + + Статус. +
+ updated_datetime + + str | null + + Дата и время обновления. +
+ updated_timestamp + + int + + Unix-время обновления. +
+ +## Примеры использования + +### Без использования параметров вывода +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены +``` + +### С фильтрацией по возможности удалить. +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + deletable: "{{ deletable }}" +``` + +### С фильтрацией по описанию. +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + description: "{{ description }}" +``` + +### С фильтрацией по идентификатору ЦОДа. +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + grid_id: "{{ grid_id }}" +``` + +### С фильтрацией по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + id: "{{ id }}" +``` + +### С фильтрацией по имени +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + name: "{{ name }}" +``` + +### С фильтрацией по идентификатору физического узла. +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + node_id: "{{ node_id }}" +``` + +### С фильтрацией по статусу +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + filter: + status: "{{ status }}" +``` + +### С постраничным выводом +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + pagination: + size: 2 + number: 2 +``` + +### С сортировкой по идентификатору +``` +- name: Example + hosts: localhost + tasks: + - name: Get zone list + decort_zone_list: + # Параметры для авторизации упущены + sorting: + field: id +``` diff --git a/Home.md b/Home.md index faaf9be..f59fa04 100644 --- a/Home.md +++ b/Home.md @@ -1,5 +1,6 @@ ## Документация: +- [Модули Ansible версии 12.0.0](./12.0.0/Home.md) - [Модули Ansible версии 11.0.0](./11.0.0/Home.md) - [Модули Ansible версии 10.0.0](./10.0.0/Home.md) - [Модули Ansible версии 9.0.0](./9.0.0/Home.md)