|
|
|
|
_Data source_ функция **dynamix_vins** служит для получения информации об уже существующем виртуальном сетевом сегменте (Virtual Network Segment, ViNS).
|
|
|
|
|
|
|
|
|
|
## Аргументы
|
|
|
|
|
_Data source_ функция **dynamix_vins** принимает следующие аргументы:
|
|
|
|
|
|
|
|
|
|
| Аргумент | Тип | Обязательный | Описание |
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
| vins_id | int | :heavy_check_mark: | ID виртуальной сети |
|
|
|
|
|
|
|
|
|
|
## Возвращаемые значения
|
|
|
|
|
В случае успешного выполнения _data source_ функция **dynamix_vins** возвращает в указанную при вызове переменную следующие значения:
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| vnf_dev | []Struct{} [см. ниже](#описание-структуры-vnf_dev) | VNFDEV |
|
|
|
|
|
| \_ckey | string | CKey |
|
|
|
|
|
| account_id | int | Уникальный идентификатор подписчика-владельца ViNS. |
|
|
|
|
|
| account_name | string | Имя подписчика ("account"), которому принадлежит ViNS. |
|
|
|
|
|
| computes | []Struct{} [см. ниже](#описание-структуры-computes) | Информация о компьютах |
|
|
|
|
|
| default_gw | string | Шлюз по умолчанию |
|
|
|
|
|
| default_qos | []Struct{} [см. ниже](#описание-структуры-qos) | qos виртуальной сети |
|
|
|
|
|
| desc | string | Текстовое описание ViNS. |
|
|
|
|
|
| gid | int | Grid ID |
|
|
|
|
|
| guid | int | ID ресурса |
|
|
|
|
|
| lock_status | string | Статус доступа виртуальной сети |
|
|
|
|
|
| manager_id | int | ID manager |
|
|
|
|
|
| manager_type | string | Type of manager |
|
|
|
|
|
| milestones | int | Milestones |
|
|
|
|
|
| name | string | Имя ViNS. |
|
|
|
|
|
| net_mask | int | Маска подсети |
|
|
|
|
|
| network | string | Сеть Vins |
|
|
|
|
|
| pre_reservations_num | int | Кол-во зарезервированных ip адресов |
|
|
|
|
|
| redundant | bool | Redudant |
|
|
|
|
|
| rg_id | int | Идентификатор ресурсной группы, на уровне которой создан ViNS. Для ViNS, существующих на уровне "account", данный параметр будет равен 0. |
|
|
|
|
|
| rg_name | string | Имя ресурсной группы |
|
|
|
|
|
| sec_vnf_dev_id | int | ID sec vnf |
|
|
|
|
|
| status | string | Статус |
|
|
|
|
|
| user_managed | bool | Флаг user managed |
|
|
|
|
|
| vnfs | []Struct{} [см. ниже](#описание-структуры-vnfs) | VNFS |
|
|
|
|
|
| vxlan_id | int | ID vxlan |
|
|
|
|
|
|
|
|
|
|
### Описание структуры vnf_dev
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| \_ckey | string | Ckey |
|
|
|
|
|
| account_id | int | ID аккаунта |
|
|
|
|
|
| capabilities | []string | Возможности vnf_dev |
|
|
|
|
|
| config | Struct{} [см. ниже](#описание-структуры-config) | Конфиг VNF |
|
|
|
|
|
| config_saved | bool | Флаг, отвечающий за то сохранен ли конфиг |
|
|
|
|
|
| custom_pre_cfg | bool | Custom |
|
|
|
|
|
| desc | string | Описание |
|
|
|
|
|
| gid | int | Grid ID |
|
|
|
|
|
| guid | int | ID ресурса |
|
|
|
|
|
| vnf_id | int | ID vnf |
|
|
|
|
|
| interfaces | []Struct{} [см. ниже](#описание-структуры-interfaces) | Информация о интерфейсах |
|
|
|
|
|
| lock_status | string | Статус доступа vnf_dev |
|
|
|
|
|
| milestones | int | Этапы |
|
|
|
|
|
| vnf_name | string | Имя VNF |
|
|
|
|
|
| status | string | Статус |
|
|
|
|
|
| tech_status | string | Технический статус |
|
|
|
|
|
| type | string | Тип vnf |
|
|
|
|
|
| vins | []int | Список виртуальных сетей |
|
|
|
|
|
|
|
|
|
|
### Описание структуры config
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| mgmt | Struct{} [см. ниже](#описание-структуры-mgmt) | Config Mgmt |
|
|
|
|
|
| resources | []Struct{} [см. ниже](#описание-структуры-resources) | Config resources |
|
|
|
|
|
|
|
|
|
|
### Описание структуры mgmt
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| ip_addr | string | IP адрес mgmt |
|
|
|
|
|
| password | string | Пароль юзера |
|
|
|
|
|
| ssh_key | string | Публичный SSH ключ |
|
|
|
|
|
| user | string | Имя юзера |
|
|
|
|
|
|
|
|
|
|
### Описание структуры resources
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| cpu | int | Кол-во cpu ресурса |
|
|
|
|
|
| ram | int | Кол-во ram ресурса |
|
|
|
|
|
| stack_id | int | ID stack ресурса |
|
|
|
|
|
| uuid | string | UUID ресурса |
|
|
|
|
|
|
|
|
|
|
### Описание структуры interfaces
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| bus_number | int | Номер шины |
|
|
|
|
|
| conn_id | int | ID коннекта |
|
|
|
|
|
| conn_type | string | Тип коннекта |
|
|
|
|
|
| def_gw | string | Шлюз по умолчанию |
|
|
|
|
|
| flipgroup_id | int | ID flipgroup |
|
|
|
|
|
| guid | string | ID ресурса |
|
|
|
|
|
| ip_address | string | IP адрес интерфейса |
|
|
|
|
|
| libvirt_settings | []Struct{}[см. ниже](#описание-структуры-libvirt_settings) | Параметры libvirt virtio интерфейса |
|
|
|
|
|
| listen_ssh | bool | Флаг, говорящий о том, слушается ли ssh |
|
|
|
|
|
| mac | string | MAC адрес интерфейса |
|
|
|
|
|
| mtu | int | Максимальный размер пакета, который может быть передан по сети без фрагментации |
|
|
|
|
|
| name | string | Имя интерфейса |
|
|
|
|
|
| net_id | int | ID сети |
|
|
|
|
|
| net_mask | int | Маска |
|
|
|
|
|
| net_type | string | Тип сети |
|
|
|
|
|
| node_id | int | ID узла |
|
|
|
|
|
| pci_slot | int | Слот pci |
|
|
|
|
|
| qos | Struct{} [см. ниже](#описание-структуры-qos) | QOS |
|
|
|
|
|
| target | string | Таргет интерфейса |
|
|
|
|
|
| type | string | Тип интерфейса |
|
|
|
|
|
| vnfs | []int | Список ID vnf |
|
|
|
|
|
|
|
|
|
|
### Описание структуры libvirt_settings
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| guid | string | GUID |
|
|
|
|
|
| txmode | string | TX mode |
|
|
|
|
|
| ioeventfd | string | IO event |
|
|
|
|
|
| event_idx | string | Event ID |
|
|
|
|
|
| queues | int | Количество очередей |
|
|
|
|
|
| rx_queue_size | int | Длина очереди RX |
|
|
|
|
|
| tx_queue_size | int | Длина очереди TX |
|
|
|
|
|
|
|
|
|
|
### Описание структуры computes
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| compute_id | int | ID компьюта |
|
|
|
|
|
| compute_name | string | Имя компьюта |
|
|
|
|
|
|
|
|
|
|
### Описание структуры qos
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| e_rate | int | E rate |
|
|
|
|
|
| guid | string | ID ресурса |
|
|
|
|
|
| in_brust | int | In brust |
|
|
|
|
|
| in_rate | int | In rate |
|
|
|
|
|
|
|
|
|
|
### Описание структуры vnfs
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| dhcp | []Struct{} [см. ниже](#описание-структуры-dhcp) | информаиця о DHCP |
|
|
|
|
|
| gw | []Struct{} [см. ниже](#описание-структуры-gw) | GW |
|
|
|
|
|
| nat | []Struct{} [см. ниже](#описание-структуры-nat) | NAT |
|
|
|
|
|
|
|
|
|
|
### Описание структуры dhcp
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| \_ckey | string | CKey |
|
|
|
|
|
| account_id | int | Уникальный идентификатор подписчика-владельца ViNS. |
|
|
|
|
|
| config | Struct{} [см. ниже](#описание-структуры-dhcp-config) | Информация о DHCP конфиге |
|
|
|
|
|
| created_time | int | Время создания |
|
|
|
|
|
| devices | []Struct{} [см. ниже](#описание-структуры-devices) | Информация о девайсах |
|
|
|
|
|
| gid | int | GRID ID |
|
|
|
|
|
| guid | int | ID ресурса |
|
|
|
|
|
| dhcp_id | int | ID dhcp |
|
|
|
|
|
| lock_status | string | Статус доступа виртуальной сети |
|
|
|
|
|
| milestones | int | Milestones |
|
|
|
|
|
| owner_id | int | ID владельца |
|
|
|
|
|
| owner_type | string | Тип владельца |
|
|
|
|
|
| pure_virtual | bool | Флаг, показывающий является ли ресурс чисто виртуальным |
|
|
|
|
|
| status | string | Статус |
|
|
|
|
|
| tech_status | string | Технический статус |
|
|
|
|
|
| type | string | Тип ресурса |
|
|
|
|
|
|
|
|
|
|
### Описание структуры dhcp config
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| default_gw | string | Шлюз по умолчанию |
|
|
|
|
|
| dns | []string | Список dns |
|
|
|
|
|
| ip_end | string | Конец диапазона IP адресов |
|
|
|
|
|
| ip_start | string | Старт диапазона IP адресов |
|
|
|
|
|
| lease | int | срок |
|
|
|
|
|
| netmask | int | Маска сети |
|
|
|
|
|
| network | string | Сеть |
|
|
|
|
|
| reservations | []Struct{} [см. ниже](#описание-структуры-reservations) | Информация о резервациях |
|
|
|
|
|
|
|
|
|
|
### Описание структуры reservations
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| client_type | string | Тип клиента |
|
|
|
|
|
| desc | string | Описание |
|
|
|
|
|
| domainname | string | Имя домена |
|
|
|
|
|
| hostname | string | Имя хоста |
|
|
|
|
|
| ip | string | IP адрес |
|
|
|
|
|
| mac | string | MAC адрес |
|
|
|
|
|
| type | string | Тип |
|
|
|
|
|
| vm_id | int | ID виртуальной машины |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### Описание структуры devices
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| primary | Struct{} [см. ниже](#описание-структуры-primary) | Первичная информация |
|
|
|
|
|
|
|
|
|
|
### Описание структуры primary
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| dev_id | int | ID dev |
|
|
|
|
|
| iface01 | string | Интерфейс 1 |
|
|
|
|
|
| iface02 | string | Интерфейс 2 |
|
|
|
|
|
|
|
|
|
|
### Описание структуры gw
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| \_ckey | string | CKey |
|
|
|
|
|
| account_id | int | Уникальный идентификатор подписчика-владельца ViNS. |
|
|
|
|
|
| config | Struct{} [см. ниже](#описание-структуры-gw-config) | Информация о конфиге |
|
|
|
|
|
| created_time | int | Время создания |
|
|
|
|
|
| devices | []Struct{} [см. ниже](#описание-структуры-devices) | Информация о девайсах |
|
|
|
|
|
| gid | int | GRID ID |
|
|
|
|
|
| guid | int | ID ресурса |
|
|
|
|
|
| gw_id | int | ID GW |
|
|
|
|
|
| lock_status | string | Статус доступа виртуальной сети |
|
|
|
|
|
| milestones | int | Milestones |
|
|
|
|
|
| owner_id | int | ID владельца |
|
|
|
|
|
| owner_type | string | Тип владельца |
|
|
|
|
|
| pure_virtual | bool | Флаг, показывающий является ли ресурс чисто виртуальным |
|
|
|
|
|
| status | string | Статус |
|
|
|
|
|
| tech_status | string | Технический статус |
|
|
|
|
|
| type | string | Тип ресурса |
|
|
|
|
|
|
|
|
|
|
### Описание структуры gw config
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| default_gw | string | Шлюз по умолчанию |
|
|
|
|
|
| ext_net_id | int | ID внешней сети |
|
|
|
|
|
| ext_net_ip | string | IP внешней сети |
|
|
|
|
|
| ext_netmask | int | Маска внешней сети |
|
|
|
|
|
| qos | Struct{} [см. ниже](#описание-структуры-qos) | QOS |
|
|
|
|
|
|
|
|
|
|
### Описание структуры nat
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| \_ckey | string | CKey |
|
|
|
|
|
| account_id | int | Уникальный идентификатор подписчика-владельца ViNS. |
|
|
|
|
|
| created_time | int | Время создания |
|
|
|
|
|
| config | Struct{} [см. ниже](#описание-структуры-nat-config) | Информация о конфиге |
|
|
|
|
|
| devices | []Struct{} [см. ниже](#описание-структуры-devices) | Информация о девайсах |
|
|
|
|
|
| gid | int | GRID ID |
|
|
|
|
|
| guid | int | ID ресурса |
|
|
|
|
|
| nat_id | int | ID NAT |
|
|
|
|
|
| lock_status | string | Статус доступа виртуальной сети |
|
|
|
|
|
| milestones | int | Milestones |
|
|
|
|
|
| owner_id | int | ID владельца |
|
|
|
|
|
| owner_type | string | Тип владельца |
|
|
|
|
|
| pure_virtual | bool | Флаг, показывающий является ли ресурс чисто виртуальным |
|
|
|
|
|
| status | string | Статус |
|
|
|
|
|
| tech_status | string | Технический статус |
|
|
|
|
|
| type | string | Тип ресурса |
|
|
|
|
|
|
|
|
|
|
### Описание структуры nat config
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| net_mask | int | Маска сети |
|
|
|
|
|
| network | string | Сеть |
|
|
|
|
|
| rules | []Struct{} [см. ниже](#описание-структуры-rules) | Правила NAT |
|
|
|
|
|
|
|
|
|
|
### Описание структуры rules
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| rule_id | int | ID правила |
|
|
|
|
|
| local_ip | string | Локальный IP адрес |
|
|
|
|
|
| local_port | int | Локальный порт |
|
|
|
|
|
| protocol | string | Протокол |
|
|
|
|
|
| public_port_end | int | Конец диапазона портов |
|
|
|
|
|
| public_port_start | int | Начало диапазона портов |
|
|
|
|
|
| vm_id | int | ID виртуальной машины |
|
|
|
|
|
| vm_name | string | Имя виртуальной машины |
|
|
|
|
|
|
|
|
|
|
## Пример использования
|
|
|
|
|
Пример вызова _data source_ функции **dynamix_vins**:
|
|
|
|
|
|
|
|
|
|
```terraform
|
|
|
|
|
data "dynamix_vins" "vins" {
|
|
|
|
|
#обязательный параметр
|
|
|
|
|
#id желаемого vins
|
|
|
|
|
#тип - целое число
|
|
|
|
|
vins_id = 10101
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
После успешного завершения такого вызова **dynamix_vins** в переменной `data.dynamix_vins.vins` будут сохранены возвращаемые значения. В частности, для получения идентификатора ViNS следует использовать конструкцию `data.dynamix_vins.vins.id`
|