name | value | type |
id | 17 | int |
network_type_id | 1 | int |
name | Inner space #52 | string |
net_cidr | 10.239.0.0/16 | cidr |
vlan_id | 1 | int |
mtu | 1500 | int (1500-9000) |
Параметр net_cidr играет роль IP-pool данного экземпляра сети. Параметр mtu является необязательным; при его отсутствии будет использовано значение по-умолчанию 1500.
7.5.1. net-list()
Получение списка всех экземпляров сети в scope видимости запросившего пользователя (пользователь с ролью «Cluster master» видит все сети; остальные пользователи видят только сети, назначенные в vDC, в которых у пользователя есть любая роль)
Запрос:
{ "jsonrpc": "2.0", "method": "net-list", "id": "68d57726-dac2-11e9-ac47-a75083008659", "params": { "vdc_id": 8 } }
Ответ:
{ "id" : "68d57726-dac2-11e9-ac47-a75083008659", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : [ { "creator" : 3, "id" : "30", "mtu" : 1500, "name" : "dNFS unix", "net_cidr" : "10.102.70.0/24", "network_type_id" : 2, "vlan_id" : 2060, "vxlan_multicast_addr" : null, "vxlan_port" : null }, { "creator" : 3, "id" : "40", "mtu" : 1500, "name" : "WWW", "net_cidr" : "172.20.20.0/24", "network_type_id" : 2, "vlan_id" : 2062, "vxlan_multicast_addr" : null, "vxlan_port" : null }, { "creator" : 2, "id" : "55", "mtu" : 1500, "name" : "XSCF network L26", "net_cidr" : "10.200.50.0/24", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.65", "vxlan_port" : 9009 } ] } }
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: network_id
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: network_id
Запрос:
{ "jsonrpc": "2.0", "method": "net-list", "id": "68d57348-dac2-11e9-ac47-a75083008659", "params": { "objective": 101, "vdc_id": 8 } }
Ответ:
{ "id" : "68d57348-dac2-11e9-ac47-a75083008659", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "30" : { "id" : 30, "mtu" : 1500, "name" : "dNFS unix", "net_cidr" : "10.102.70.0/24", "network_type_id" : 2, "vlan_id" : 2060 }, "40" : { "id" : 40, "mtu" : 1500, "name" : "WWW", "net_cidr" : "172.20.20.0/24", "network_type_id" : 2, "vlan_id" : 2062 }, "55" : { "id" : 55, "mtu" : 1500, "name" : "XSCF network L26", "net_cidr" : "10.200.50.0/24", "network_type_id" : 1, "vlan_id" : null } } } }
7.5.2. nets-create()
Создание экземпляра сети; изолированные сети может создавать пользователь, которому назначена роль «vDC admin» в любом vDC.
Запрос (изолированная сеть):
{ "jsonrpc": "2.0", "method": "nets-create", "id": 7013, "params": { "type": 1, "name": "Сеть для iSCSI", "cidr": "192.168.100.0/24" } }
Запрос (маршрутизируемая сеть):
{ "jsonrpc": "2.0", "method": "nets-create", "id": 7014, "params": { "type": 2, "name": "Сеть для AltaVault", "cidr": "192.168.202.0/24", "vlan_id": 80 } }
Ответ:
{ "id": 7015, "jsonrpc": "2.0", "result": { "code": 0, "data": { "message": "Network 29 created" }, "id": 29 } }
7.5.3. nets-delete()
Удаление экземпляра сети
Запрос:
{ "jsonrpc": "2.0", "method": "nets-delete", "id": 3002, "params": { "id": 8 } }
Ответ:
{ "id": 3002, "jsonrpc": "2.0", "result": { "code": 0, "data": { "message" : "Network ID: 8 removed" }, "id": 8 } }
7.5.4. net-ippool-usage()
net-ippool-usage: информация об использовании IP-pool сетей
Запрос:
{ "jsonrpc": "2.0", "method": "net-ippool-usage", "id": "0868871a-c119-11e9-8b86-9d6faace7a14" }
Ответ:
{ "id" : "0868871a-c119-11e9-8b86-9d6faace7a14", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : [ { "address" : "10.52.31.2", "network_id" : 29, "vdc_id" : 8, "vm_id" : 132 }, { "address" : "10.52.31.3", "network_id" : 29, "vdc_id" : 8, "vm_id" : 133 }, { "address" : "10.102.70.26", "network_id" : 30, "vdc_id" : 8, "vm_id" : 131 }, { "address" : "10.102.70.27", "network_id" : 30, "vdc_id" : 8, "vm_id" : 134 }, { "address" : "172.20.20.2", "network_id" : 40, "vdc_id" : 8, "vm_id" : 89 }, { "address" : "172.20.20.3", "network_id" : 40, "vdc_id" : 8, "vm_id" : 90 }, { "address" : "192.168.250.2", "network_id" : 54, "vdc_id" : 8, "vm_id" : 101 }, { "address" : "192.168.250.3", "network_id" : 54, "vdc_id" : 8, "vm_id" : 102 } ] } }
Пользователь с ролью Cluster master может дополнительно в запросе указывать параметр vdc_id, что приведёт к наличию в ответе только сетей, назначенных в данный vDC. Остальные пользователи получают ответ из scope, ограниченного теми vDC, где у пользователя присутствует любая роль (тут можно использовать минимально-достаточную роль вместо любой).
Запрос:
{ "jsonrpc": "2.0", "method": "net-ippool-usage", "id": "0868871a-c119-11e9-8b86-9d6faace7a14", "params": { "vdc_id": 8 } }
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: network_id
Уровень 2: vdc_ud
Уровень 3: vm_id : IP address
Запрос:
{ "jsonrpc": "2.0", "method": "net-ippool-usage", "id": "26c4c7da-c314-11e9-bf1d-b6d9abce7a14", "params": { "objective": 1 } }
Ответ:
{ "id" : "26c4c7da-c314-11e9-bf1d-b6d9abce7a14", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "2" : { "16" : { "129" : "10.100.0.3", "149" : "10.100.0.4", "150" : "10.100.0.5", "88" : "10.100.0.2" } }, "26" : { "16" : { "128" : "172.16.17.2" } }, "27" : { "2" : { "105" : "172.16.30.2" } }, "29" : { "8" : { "132" : "10.52.31.2", "133" : "10.52.31.3" } }, "3" : { "2" : { "100" : "10.0.20.7", "123" : "10.0.20.8", "124" : "10.0.20.9", "125" : "10.0.20.10", "135" : "10.0.20.11", "136" : "10.0.20.12", "137" : "10.0.20.13", "138" : "10.0.20.14", "139" : "10.0.20.15", "140" : "10.0.20.16", "141" : "10.0.20.17", "142" : "10.0.20.18", "143" : "10.0.20.19", "144" : "10.0.20.20", "145" : "10.0.20.21", "146" : "10.0.20.22", "147" : "10.0.20.23", "148" : "10.0.20.24", "91" : "10.0.20.2", "92" : "10.0.20.3", "93" : "10.0.20.4", "94" : "10.0.20.5", "99" : "10.0.20.6" } }, "30" : { "2" : { "41" : "10.102.70.10", "42" : "10.102.70.20", "71" : "10.102.70.21", "72" : "10.102.70.22", "73" : "10.102.70.23", "74" : "10.102.70.24", "76" : "10.102.70.25" }, "8" : { "131" : "10.102.70.26", "134" : "10.102.70.27" } }, "40" : { "2" : { "130" : "172.20.20.4" }, "8" : { "89" : "172.20.20.2", "90" : "172.20.20.3" } }, "54" : { "8" : { "101" : "192.168.250.2", "102" : "192.168.250.3" } } } } }
7.5.5. net-ippool-free()
Информация о количестве свободных IP-адресов в IP-pool
Запрос:
{ "jsonrpc": "2.0", "method": "net-ippool-free", "id": "a1cdc2ba-383f-11ea-8c80-fa66a3df8354" }
Ответ:
{ "id" : "a1cdc2ba-383f-11ea-8c80-fa66a3df8354", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : [ { "free_addresses" : 249, "network_id" : 23, "network_name" : "Сеть для AltaVault" }, { "free_addresses" : 506, "network_id" : 54, "network_name" : "SBM/CIFS for S3 gateway" }, { "free_addresses" : 251, "network_id" : 40, "network_name" : "WWW" }, { "free_addresses" : 229, "network_id" : 59, "network_name" : "Routed L26" }, { "free_addresses" : 251, "network_id" : 30, "network_name" : "dNFS unix" }, { "free_addresses" : 250, "network_id" : 55, "network_name" : "XSCF network L26" }, { "free_addresses" : 11, "network_id" : 60, "network_name" : "28_bit_network" } ] } }
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: network_id
Запрос:
{ "jsonrpc": "2.0", "method": "net-ippool-free", "id": "a1cdc2ec-383f-11ea-8c80-fa66a3df8354", "params": { "objective": "yo" } }
Ответ:
{ "id" : "a1cdc2ec-383f-11ea-8c80-fa66a3df8354", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "23" : { "free_addresses" : 249, "network_id" : 23, "network_name" : "Сеть для AltaVault" }, "30" : { "free_addresses" : 251, "network_id" : 30, "network_name" : "dNFS unix" }, "40" : { "free_addresses" : 251, "network_id" : 40, "network_name" : "WWW" }, "54" : { "free_addresses" : 506, "network_id" : 54, "network_name" : "SBM/CIFS for S3 gateway" }, "55" : { "free_addresses" : 250, "network_id" : 55, "network_name" : "XSCF network L26" }, "59" : { "free_addresses" : 229, "network_id" : 59, "network_name" : "Routed L26" }, "60" : { "free_addresses" : 11, "network_id" : 60, "network_name" : "28_bit_network" } } } }