7.5 Экземпляр сети
Описание объекта Экземпляр сети представлено в таблице ниже.
name | value | type |
---|---|---|
id | 17 | int |
network_type_id | 1 | int |
name | Inner space #52 | string |
net_cidr | 10.239.0.0/16 | cidr |
default_gw | 10.239.0.1 | inet |
vlan_id | 1 | int |
mtu | 1500 | int (1500-9000) |
Параметр net_cidr играет роль пула IP-адресов данного экземпляра сети.
Параметр MTU является необязательным, при его отсутствии будет использовано значение по умолчанию 1500.
Параметр default_gw представляет собой значение маршрута по умолчанию для портов этой сети.
Методы¶
7.5.1 net-list()¶
Данный метод позволяет получить список всех экземпляров сети в пределах видимости запросившего пользователя (пользователь с ролью Суперадмина видит все сети. Остальные пользователи видят только сети в тех ВЦОД, в которых им назначена какая-либо роль).
Запрос:
Ответ:
{
"id" : "e3eaa494-9a59-11ee-b778-103379a977b0",
"jsonrpc" : "2.0",
"result" : {
"code" : 1,
"data" : [
{
"backend" : 2,
"creator" : 1,
"gw" : "10.78.27.1",
"id" : "101",
"mtu" : 1500,
"name" : "Q9 routed L26",
"net_cidr" : "10.78.27.0/24",
"network_type_id" : 2,
"vlan_id" : 2070,
"vxlan_multicast_addr" : "239.248.77.79",
"vxlan_port" : null
},
{
"backend" : 2,
"creator" : 1,
"gw" : "10.100.200.1",
"id" : "102",
"mtu" : 9000,
"name" : "Q9 local",
"net_cidr" : "10.100.200.0/22",
"network_type_id" : 1,
"vlan_id" : null,
"vxlan_multicast_addr" : "239.248.77.79",
"vxlan_port" : 9009
},
{
"backend" : 2,
"creator" : 1,
"gw" : "10.110.200.1",
"id" : "103",
"mtu" : 3000,
"name" : "test mtu",
"net_cidr" : "10.110.200.0/24",
"network_type_id" : 1,
"vlan_id" : null,
"vxlan_multicast_addr" : "239.248.77.79",
"vxlan_port" : 9009
}
]
}
}
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: network_id
Запрос:
{
"jsonrpc": "2.0",
"method": "net-list",
"id": "e726c166-9a58-11ee-bfaf-76fa79a977b0",
"params": {
"objective": 1
}
}
Ответ:
{
"id" : "e726c166-9a58-11ee-bfaf-76fa79a977b0",
"jsonrpc" : "2.0",
"result" : {
"code" : 1,
"data" : {
"101" : {
"GW" : "10.78.27.1",
"backend" : 2,
"id" : 101,
"mtu" : 1500,
"name" : "Q9 routed L26",
"net_cidr" : "10.78.27.0/24",
"network_type_id" : 2,
"vlan_id" : 2070
},
"102" : {
"GW" : "10.100.200.1",
"backend" : 2,
"id" : 102,
"mtu" : 9000,
"name" : "Q9 local",
"net_cidr" : "10.100.200.0/22",
"network_type_id" : 1,
"vlan_id" : null
},
"103" : {
"GW" : "10.110.200.1",
"backend" : 2,
"id" : 103,
"mtu" : 3000,
"name" : "test mtu",
"net_cidr" : "10.110.200.0/24",
"network_type_id" : 1,
"vlan_id" : null
}
}
}
}
7.5.2 nets-create()¶
С помощью nets-create() можно создать экземпляр сети.
Изолированные сети может создавать пользователь, которому назначена роль Админа ВЦОД в любом ВЦОД.
Параметр default_gw является опциональным. При отсутствии этого параметра для сети будет использоваться первый свободный IP-адрес.
Запрос (изолированная сеть):
{
"jsonrpc": "2.0",
"method": "nets-create",
"id": "bd555b58-ab9e-11ed-9568-7e7c4f83c07e",
"params": {
"type": 1,
"name": "Сеть для iSCSI",
"cidr": "192.168.100.0/24",
"default_gw": "192.168.100.1"
}
}
Запрос (маршрутизируемая сеть):
{
"jsonrpc": "2.0",
"method": "nets-create",
"id": "bd555b58-ab9e-11ed-9568-7e7c4f83c07e",
"params": {
"type": 2,
"name": "Сеть для AltaVault",
"cidr": "192.168.202.0/24",
"default_gw": "192.168.100.254",
"vlan_id": 80
}
}
Ответ:
{
"id": "bd555b58-ab9e-11ed-9568-7e7c4f83c07e",
"jsonrpc": "2.0",
"result": {
"code": 0,
"data": {
"message": "Network 29 created"
},
"id": 29
}
}
7.5.3 nets-delete()¶
nets-delete() позволяет удалить экземпляр сети.
Запрос:
{
"jsonrpc": "2.0",
"method": "nets-delete",
"id": "d13c3fb0-ab9e-11ed-931c-607d4f83c07e",
"params": {
"id": 8
}
}
Ответ:
{
"id": "d13c3fb0-ab9e-11ed-931c-607d4f83c07e",
"jsonrpc": "2.0",
"result": {
"code": 0,
"data": {
"message" : "Network ID: 8 removed"
},
"id": 8
}
}
7.5.4 net-ippool-usage()¶
С помощью данного метода можно получить информацию об использовании пула IP-адресов сетей.
Запрос:
Ответ:
{
"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
}
]
}
}
Суперадмин может дополнительно указывать в запросе параметр vdc_id, тогда в ответе будут сети, назначенные в данный ВЦОД. Ответ для остальных пользователей будет ограничен теми ВЦОД, где у них назначена минимально достаточная или какая-либо роль.
Запрос:
{
"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-адресов.
Запрос:
Ответ:
{
"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"
}
}
}
}