En esta página
hanode.get
Descripción
integer/array hanode.get(object parameters)
El método permite recuperar una lista de nodos del clúster de alta disponibilidad según los parámetros proporcionados.
Este método solo está disponible para los tipos de usuario Super admin. Consulte Roles de usuario para más información.
Parámetros
(object) Parámetros que definen la salida deseada.
El método admite los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| ha_nodeids | ID/array | Devolver solo los nodos con los IDs de nodo dados. |
| filter | object | Devolver solo aquellos resultados que coincidan exactamente con el filtro dado. Acepta un objeto, donde las claves son nombres de propiedades y los valores son un único valor o un array de valores con los que comparar. Admite las propiedades: name, address, status. |
| sortfield | string/array | Ordenar el resultado por las propiedades dadas. Valores posibles: name, lastaccess, status. |
| countOutput | flag | Estos parámetros se describen en el comentario de referencia. |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| sortorder | string/array |
Valores de retorno
(integer/array) Devuelve:
- un array de objetos;
- el número de objetos recuperados, si se ha utilizado el parámetro
countOutput.
Ejemplos
Obtener una lista de nodos ordenados por estado
{
"jsonrpc": "2.0",
"method": "hanode.get",
"params": {
"preservekeys": true,
"sortfield": "status",
"sortorder": "DESC"
},
"id": 1
}
Respuesta:
{
"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
}
Obtener una lista de nodos específicos por sus IDs
{
"jsonrpc": "2.0",
"method": "hanode.get",
"params": {
"ha_nodeids": ["ckuo7i1nw000e0sajwfttc1mp", "ckuo7i1nv000c0sajz85xcrtt"]
},
"id": 1
}
Respuesta:
{
"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
}
Obtener una lista de nodos detenidos
{
"jsonrpc": "2.0",
"method": "hanode.get",
"params": {
"output": ["ha_nodeid", "address", "port"],
"filter": {
"status": 1
}
},
"id": 1
}
Respuesta:
{
"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
}
Obtener un recuento de nodos en espera
{
"jsonrpc": "2.0",
"method": "hanode.get",
"params": {
"countOutput": true,
"filter": {
"status": 0
}
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": "3",
"id": 1
}
Comprobar el estado de los nodos en direcciones IP específicas
{
"jsonrpc": "2.0",
"method": "hanode.get",
"params": {
"output": ["name", "status"],
"filter": {
"address": ["192.168.1.7", "192.168.1.13"]
}
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": [
{
"name": "node3",
"status": "0"
},
{
"name": "node-active",
"status": "3"
}
],
"id": 1
}
Fuente
CHaNode::get() en ui/include/classes/api/services/CHaNode.php.