8.2.1. cluster-overview()
Получение обзора кластера: состояние его компонентов (узлы, сервисы), утилизация ресурсов (RAM, CPU, пулы).
Запрос:
{ "jsonrpc": "2.0", "method": "cluster-overview", "id": "e4b01804-7cd5-45d3-b440-0f6005b9b8c5" }
Ответ:
{ "id" : "e4b01804-7cd5-45d3-b440-0f6005b9b8c5", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "1" : { "cores" : 15, "node_cpu_cores" : 40, "node_name" : "q9u001.z.vstack.com", "node_ram" : 51539607552, "pools" : [ { "capacity_pct" : 1, "guid" : "4182847010042355858", "name" : "z05", "provisioned_pct" : 3 } ], "ram" : 13, "utilization_cores_pct" : "0.00", "utilization_ram_pct" : "4.07" }, "2" : { "cores" : 45, "node_cpu_cores" : 20, "node_name" : "q9u002.z.vstack.com", "node_ram" : 51539607552, "pools" : [ { "capacity_pct" : 2, "guid" : "9286176334769597033", "name" : "z04", "provisioned_pct" : 5 } ], "ram" : 19, "utilization_cores_pct" : "0.00", "utilization_ram_pct" : "6.14" }, "3" : { "cores" : 40, "node_cpu_cores" : 20, "node_name" : "q9u003.z.vstack.com", "node_ram" : 51539607552, "pools" : [ { "capacity_pct" : 2, "guid" : "14523019082101348142", "name" : "z03", "provisioned_pct" : 8 } ], "ram" : 75, "utilization_cores_pct" : "0.00", "utilization_ram_pct" : "9.66" }, "4" : { "cores" : 0, "node_name" : "q9u004.z.vstack.com", "ram" : 0, "utilization_cores_pct" : "0.0", "utilization_ram_pct" : "0.0" }, "5" : { "cores" : 70, "node_cpu_cores" : 20, "node_name" : "q9u005.z.vstack.com", "node_ram" : 51539607552, "pools" : [ { "capacity_pct" : 3, "guid" : "5210166094835362280", "name" : "z01", "provisioned_pct" : 4 }, { "capacity_pct" : 1, "guid" : "16231361151942834019", "name" : "z02", "provisioned_pct" : 3 } ], "ram" : 29, "utilization_cores_pct" : "0.30", "utilization_ram_pct" : "21.93" } } } }
8.2.2. cluster-totals()
Получение суммарных значений имеющихся и потребляемых ресурсов (RAM, CPU, пространство хранения).
Запрос:
{ "jsonrpc": "2.0", "id": "349b4b08-724e-11ed-bfe5-7ca8afb91e77", "method": "cluster-totals" }
Ответ:
{ "id" : "22623740-6a3c-11ed-bf97-85ebafb91e77", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : { "cpu_cores_provisioned" : 99, "cpu_cores_total" : 120, "ram_provisioned" : 73014444032, "ram_total" : 177167400960, "space_provisioned" : 4793870697100, "space_total" : 21990232555520 } } }
8.2.3. cluster-node-action()
Действия с узлом кластера.
В данном методе непосредственно глагол определяется параметром action; каждый глагол имеет собственный ответ.
Параметр node_ID используется для идентификаторов глаголов 2,3,4.
Словарь глаголов:
0 | list |
1 | status |
2 | enable |
3 | disable |
4 | exit |
Запрос:
{ "jsonrpc": "2.0", "id": "9bacee04-1237-11ed-aef9-9ea6afb91e77", "method": "cluster-node-action", "params": { "action": 1, "node_ID": 2 } }
Ответ:
{ "id" : "9bacee04-1237-11ed-aef9-9ea6afb91e77", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : [ { "enabled" : true, "id" : 1, "nodename" : "q9u001.z.vstack.com", "state" : "ONLINE" }, { "enabled" : true, "id" : 2, "nodename" : "q9u002.z.vstack.com", "state" : "ONLINE" }, { "enabled" : true, "id" : 3, "nodename" : "q9u003.z.vstack.com", "state" : "ONLINE" }, { "enabled" : true, "id" : 4, "nodename" : "q9u004.z.vstack.com", "state" : "ONLINE" }, { "enabled" : true, "id" : 5, "nodename" : "q9u005.z.vstack.com", "state" : "ONLINE" } ] } }
8.2.4. cluster-service-stop()
Остановка сервиса кластера.
Крайне рекомендуется использовать асинхронный режим вызова данного метода.
Запрос:
{ "jsonrpc": "2.0", "id": "a6ca3996-1303-11ed-970a-1689afb91e77", "method": "cluster-service-stop", "params": { "service_name": "zpool_z03" } }
Ответ:
{ "id" : "a6ca3996-1303-11ed-970a-1689afb91e77", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : null } }
8.2.5. cluster-service-start()
Запуск сервиса кластера.
Крайне рекомендуется использовать асинхронный режим вызова данного метода.
Запрос:
{ "jsonrpc": "2.0", "id": "05f0e294-1304-11ed-ad4c-03a9afb91e77", "method": "cluster-service-start", "params": { "service_name": "zpool_z03", "node_ID": 4 } }
Ответ:
{ "id" : "05f0e294-1304-11ed-ad4c-03a9afb91e77", "jsonrpc" : "2.0", "result" : { "code" : 1, "data" : null } }