23 KiB
23 KiB
Модуль decort_sdn_segment
Обзор модуля
Модуль decort_sdn_segment предназначен для выполнения следующих действий над сегментами:
- получить основную информацию (см. возвращаемые значения и примеры)
- создать (см. примеры)
- удалить (см. параметр state и примеры)
- удалить принудительно (см. параметр state и примеры)
- изменить (см. примеры)
- описание (см. параметр description и примеры)
- имя (см. параметр display_name и примеры)
- подсеть v4 (см. параметр subnet_v4 и примеры)
- подсеть v6 (см. параметр subnet_v6 и примеры)
- включить (см. параметр state и примеры)
- выключить (см. параметр state и примеры)
- конфигурация DHCPv4 (см. конфигурация dhcp_v4 и примеры)
- конфигурация DHCPv6 (см. конфигурация dhcp_v6 и примеры)
- тип (см. параметр type и примеры)
Параметры модуля
Ниже приведен список параметров для модуля decort_sdn_segment (за исключением общих параметров):
| Параметр | Тип | Описание | |
|---|---|---|---|
| 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 }}"