name | value | type |
id | 77 | int |
name | vDC Msk | string |
description | vDC в Москве для баз данных | string |
quota_ram_gb | 8192 | int |
quota_space_gb | 1048576 | int |
quota_cpu_ghz | 512 | int |
quota_cpu_cores | 128 | int |
quota_space_snapshots | int | |
quota_oversubscription_rate_cpu_cores | 1.2 | float |
quota_oversubscription_rate_cpu_ghz | 1.3 | float |
quota_oversubscription_rate_ram | 1.5 | float |
quota_oversubscription_rate_space_gb | 1.7 | float |
quota_oversubscription_rate_space_snapshots | 1.1 | float |
7.6.1. vdc-list()
vdc-list: получение списка всех vDC с их свойствами
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-list", "id": 3003 }
Ответ:
{ "id" : "501010", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : [ { "created" : 1561630417, "description" : "Redis servers", "id" : "16", "modified" : 1561630417, "name" : "Redis", "quota_cpu_cores" : null, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 0, "vms_total" : 1 }, { "created" : 1561983637, "description" : "vDC для тестов производительности, например", "id" : "18", "modified" : 1561983637, "name" : "PerfTests", "quota_cpu_cores" : null, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 0, "vms_total" : 0 }, { "created" : 1559156601, "description" : "все БД backendов", "id" : "2", "modified" : 1559243013, "name" : "vDC Василия", "quota_cpu_cores" : 1024, "quota_cpu_ghz" : 32768, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : 512, "quota_space_gb" : 1048576, "quota_space_snapshots" : null, "vms_running" : 8, "vms_total" : 11 }, { "created" : 1559156601, "description" : "щляпы тестируются для CI/CD", "id" : "8", "modified" : 1559416406, "name" : "реально тестовый", "quota_cpu_cores" : 2, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : 1.5, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 0, "vms_total" : 2 } ] } }
При указании параметра objective возможно получение альтернативного варианта ответа:
Уровень 1: vdc_id
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-list", "id": "f2658174-d87f-11e9-8b68-985b83008659", "params": { "objective": 1000 } }
Ответ:
{ "id" : "f2658174-d87f-11e9-8b68-985b83008659", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "16" : { "created" : 1561630417, "description" : "IMG tests", "id" : "16", "modified" : 1566398676, "name" : "image test", "quota_cpu_cores" : null, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 0, "vms_total" : 3 }, "18" : { "created" : 1561983637, "description" : "vDC для тестов производительности, например", "id" : "18", "modified" : 1561983637, "name" : "PerfTests", "quota_cpu_cores" : null, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 0, "vms_total" : 0 }, "19" : { "created" : 1567062755, "description" : "для тестов сети", "id" : "19", "modified" : 1567062755, "name" : "Alexander Fedorov", "quota_cpu_cores" : null, "quota_cpu_ghz" : null, "quota_oversubscription_rate_cpu_cores" : null, "quota_oversubscription_rate_cpu_ghz" : null, "quota_oversubscription_rate_ram" : null, "quota_oversubscription_rate_space_gb" : null, "quota_oversubscription_rate_space_snapshots" : null, "quota_ram_gb" : null, "quota_space_gb" : null, "quota_space_snapshots" : null, "vms_running" : 3, "vms_total" : 8 } } } }
7.6.2. vdc-create()
Создание vDC
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-create", "id": 3009, "params": { "name": "crap-test", "description": "голимый vDC для автотестов" } }
Ответ:
{ "id": 3009, "jsonrpc": "2.0", "result" : { "code": 1, "data": { "vdc_id" : 6 } } }
7.6.3. vdc-set()
Модификация vDC
Запрос:
{ "jsonrpc": "2.0", "id": 29051, "method": "vdc-set", "params": { "id": 8, "vdc_params": { "name": "реально тестовый", "description": "щляпы тестируются для CI/CD", "quota_cpu_cores": 72, "quota_oversubscription_rate_cpu_cores": "1.5" } } }
Ответ:
{ "id": 29051, "jsonrpc": "2.0", "result": { "code": 1, } }
7.6.4. vdc-assign-network()
Добавление экземпляра сети в vDC; добавить экземпляр сети в конкретный vDC может пользователь, создавший эту сеть, при наличии у него роли «vDC admin» в конкретно этом vDC.
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-assign-network", "id": 203, "params": { "vdc_id": 2, "network_id": 7 } }
Ответ:
{ "id": 203, "jsonrpc": "2.0", "result" : { "code": 1, } }
7.6.5. vdc-deassign-network()
Удаление экземпляра сети из vDC. Удаление возможно лишь в случае отсутствия назначенных виртуальным машинам портов из удаляемой сети. Удалить экземпляр сети из конкретного vDC может пользователь, создавший эту сеть, при наличии у него роли «vDC admin» в конкретно этом vDC.
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-deassign-network", "id": 304, "params": { "vdc_id": 2, "network_id": 28 } }
Ответ:
{ "id": 304, "jsonrpc": "2.0", "result": { "code" : 1, } }
Ответ в случае наличия назначенных на VM портов:
{ "error": { "message": "There are 2 ports assigned to VMs" }, "id": 305, "jsonrpc": "2.0", "result": { "code": -31, } }
7.6.6. vdc-networks()
Получение вложенного dictionary с назначенными сетями в каждом vDC из scope пользователя. Уровень 1 — vDC; уровень 2 — network.
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-networks", "id": "e3f88954-f40b-11e9-bc25-e459eb73e1e3" }
Ответ:
{ "id" : "e3f88954-f40b-11e9-bc25-e459eb73e1e3", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "16" : { "2" : { "creator" : 3, "id" : 3, "mtu" : 1500, "name" : "Armtek routed", "net_cidr" : "10.100.0.0/16", "network_type_id" : 2, "vlan_id" : 2052, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "3" : { "creator" : 3, "id" : 4, "mtu" : 1500, "name" : "Crap net", "net_cidr" : "10.0.20.0/24", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.3", "vxlan_port" : 9009 }, "59" : { "creator" : 3, "id" : 60, "mtu" : 1500, "name" : "Routed L26", "net_cidr" : "10.78.27.0/24", "network_type_id" : 2, "vlan_id" : 2070, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 16, "name" : "image test" }, "18" : { "2" : { "creator" : 3, "id" : 3, "mtu" : 1500, "name" : "Armtek routed", "net_cidr" : "10.100.0.0/16", "network_type_id" : 2, "vlan_id" : 2052, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "3" : { "creator" : 3, "id" : 4, "mtu" : 1500, "name" : "Crap net", "net_cidr" : "10.0.20.0/24", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.3", "vxlan_port" : 9009 }, "id" : 18, "name" : "PerfTests" }, "19" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "30" : { "creator" : 3, "id" : 31, "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 }, "id" : 19, "name" : "Alexander Fedorov" }, "2" : { "59" : { "creator" : 3, "id" : 60, "mtu" : 1500, "name" : "Routed L26", "net_cidr" : "10.78.27.0/24", "network_type_id" : 2, "vlan_id" : 2070, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "60" : { "creator" : 3, "id" : 61, "mtu" : 1500, "name" : "28_bit_network", "net_cidr" : "172.27.28.192/28", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.68", "vxlan_port" : 9009 }, "id" : 2, "name" : "perftest VDC" }, "20" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "30" : { "creator" : 3, "id" : 31, "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 }, "id" : 20, "name" : "net perftest 20190829" }, "21" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 21, "name" : "image test" }, "22" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 22, "name" : "20190905" }, "23" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 23, "name" : "image test 20190906" }, "24" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 24, "name" : "vgusev" }, "25" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "59" : { "creator" : 3, "id" : 60, "mtu" : 1500, "name" : "Routed L26", "net_cidr" : "10.78.27.0/24", "network_type_id" : 2, "vlan_id" : 2070, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 25, "name" : "ippool depletion test" }, "4" : { "54" : { "creator" : 3, "id" : 55, "mtu" : 1500, "name" : "SBM/CIFS for S3 gateway", "net_cidr" : "192.168.250.0/23", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.64", "vxlan_port" : 9009 }, "55" : { "creator" : 2, "id" : 56, "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 }, "id" : 4, "name" : "k8s" }, "5" : { "24" : { "creator" : 3, "id" : 25, "mtu" : 1500, "name" : "Wifi", "net_cidr" : "172.16.20.0/24", "network_type_id" : 2, "vlan_id" : 2054, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "id" : 5, "name" : "Linux-isolated vDC" }, "6" : { "3" : { "creator" : 3, "id" : 4, "mtu" : 1500, "name" : "Crap net", "net_cidr" : "10.0.20.0/24", "network_type_id" : 1, "vlan_id" : null, "vxlan_multicast_addr" : "239.255.0.3", "vxlan_port" : 9009 }, "id" : 6, "name" : "crap-test" }, "7" : { "23" : { "creator" : 3, "id" : 24, "mtu" : 1500, "name" : "Сеть для AltaVault", "net_cidr" : "192.168.202.0/24", "network_type_id" : 2, "vlan_id" : 2053, "vxlan_multicast_addr" : null, "vxlan_port" : null }, "40" : { "creator" : 3, "id" : 41, "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 }, "id" : 7, "name" : "www" }, "8" : { "30" : { "creator" : 3, "id" : 31, "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 }, "40" : { "creator" : 3, "id" : 41, "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 }, "55" : { "creator" : 2, "id" : 56, "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 }, "id" : 8, "name" : "реально тестовый" } } } }
7.6.7. vdc-network-addr-limit()
Установка лимита на количество IP-адресов, которые возможно использовать в контекста указанного vdc из Указанной сети; сеть уже должна быть назначена в vdc. Снятие назначения сети и повторная установка удаляет выставленное ранее ограничение. Значение null является «отсутствием ограничения».
Запрос:
{ "jsonrpc": "2.0", "method": "vdc-network-addr-limit", "id": "f98ef1b8-7707-11ed-aae8-e11aafb91e77", "params": { "vdc_id": 2, "network_id": 1, "addr_limit": 15 } }
Ответ:
{ "id": "f98ef1b8-7707-11ed-aae8-e11aafb91e77", "jsonrpc": "2.0", "result": { "code": 1, "data": {} } }