#hanode.get

Beschrijving

integer/array hanode.get(object parameters)

Deze methode maakt het mogelijk om een lijst van nodes in de hoog beschikbare cluster op te halen op basis van de opgegeven parameters.

Deze methode is alleen beschikbaar voor gebruikerstypes Superadmin. Zie Gebruikersrollen voor meer informatie.

Parameters

(object) Parameters die de gewenste uitvoer definiëren.

De methode ondersteunt de volgende parameters.

Parameter Type Beschrijving
ha_nodeids string/array Geef alleen knooppunten terug met de opgegeven knooppunt-ID's.
filter object Geef alleen resultaten terug die exact overeenkomen met de opgegeven filter.

Accepteert een array, waarbij de sleutels eigendomsnamen zijn en de waarden ofwel een enkele waarde of een reeks waarden zijn om mee overeen te komen.

Staat filteren toe op de knooppunteigenschappen: name, address, status.
sortfield string/array Sorteer het resultaat op de opgegeven eigenschappen.

Mogelijke waarden: name, lastaccess, status.
countOutput flag Deze parameters, die algemeen zijn voor alle get-methoden, worden in detail beschreven in de referentietoelichting.
limit integer
output query
preservekeys boolean
sortorder string/array

Retourwaarden

(integer/array) Retourneert ofwel:

  • een reeks objecten;
  • het aantal opgehaalde objecten, als de countOutput parameter heeft gebruikt.

Voorbeelden

Krijg een lijst van knooppunten gesorteerd op status

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "hanode.get",
           "params": {
               "preservekeys": true,
               "sortfield": "status",
               "sortorder": "DESC"
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "ckuo7i1nw000h0sajj3l3hh8u": {
                   "ha_nodeid": "ckuo7i1nw000h0sajj3l3hh8u",
                   "name": "node-active",
                   "address": "192.168.1.13",
                   "port": "10051",
                   "lastaccess": "1635335704",
                   "status": "3"
               },
               "ckuo7i1nw000e0sajwfttc1mp": {
                   "ha_nodeid": "ckuo7i1nw000e0sajwfttc1mp",
                   "name": "node6",
                   "address": "192.168.1.10",
                   "port": "10053",
                   "lastaccess": "1635332902",
                   "status": "2"
               },
               "ckuo7i1nv000c0sajz85xcrtt": {
                   "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
                   "name": "node4",
                   "address": "192.168.1.8",
                   "port": "10052",
                   "lastaccess": "1635334214",
                   "status": "1"
               },
               "ckuo7i1nv000a0saj1fcdkeu4": {
                   "ha_nodeid": "ckuo7i1nv000a0saj1fcdkeu4",
                   "name": "node2",
                   "address": "192.168.1.6",
                   "port": "10051",
                   "lastaccess": "1635335705",
                   "status": "0"
               }
           },
           "id": 1
       }

Krijg een lijst van specifieke knooppunten op basis van hun ID's

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "hanode.get",
           "params": {
               "ha_nodeids": ["ckuo7i1nw000e0sajwfttc1mp", "ckuo7i1nv000c0sajz85xcrtt"]
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
                   "name": "node4",
                   "address": "192.168.1.8",
                   "port": "10052",
                   "lastaccess": "1635334214",
                   "status": "1"
               },
               {
                   "ha_nodeid": "ckuo7i1nw000e0sajwfttc1mp",
                   "name": "node6",
                   "address": "192.168.1.10",
                   "port": "10053",
                   "lastaccess": "1635332902",
                   "status": "2"
               }
           ],
           "id": 1
       }

Krijg een lijst van gestopte knooppunten

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "hanode.get",
           "params": {
               "output": ["ha_nodeid", "address", "port"],
               "filter": {
                   "status": 1
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "ha_nodeid": "ckuo7i1nw000g0sajjsjre7e3",
                   "address": "192.168.1.12",
                   "port": "10051"
               },
               {
                   "ha_nodeid": "ckuo7i1nv000c0sajz85xcrtt",
                   "address": "192.168.1.8",
                   "port": "10052"
               },
               {
                   "ha_nodeid": "ckuo7i1nv000d0sajd95y1b6x",
                   "address": "192.168.1.9",
                   "port": "10053"
               }
           ],
           "id": 1
       }

Krijg het aantal stand-by knooppunten

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "hanode.get",
           "params": {
               "countOutput": true,
               "filter": {
                   "status": 0
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": "3",
           "id": 1
       }

Controleer de status van knooppunten op specifieke IP-adressen

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "hanode.get",
           "params": {
               "output": ["name", "status"],
               "filter": {
                   "address": ["192.168.1.7", "192.168.1.13"]
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "name": "node3",
                   "status": "0"
               },
               {
                   "name": "node-active",
                   "status": "3"
               }
           ],
           "id": 1
       }

Bron

CHaNode::get() in ui/include/classes/api/services/CHaNode.php.