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
   }
}