media server logo
Mostrar u ocultar la navegación
Inicio de Callaba

Nodos del clúster

Usa Nodos del clúster para adjuntar, activar, consultar y eliminar instancias de Engine en un despliegue multinodo de Callaba.

Qué haceAñadir capacidad al clúster

Elige este módulo cuandoUn despliegue necesita nodos regionales o adicionales de Engine dentro de una relación de confianza.

Usa otro módulo cuandoUsa una sola instancia de Engine si no necesitas capacidad distribuida ni ubicación regional.

1Registra el nodo2Sincroniza el estado3Asigna la carga
POST /api/clusterNodes/create
10 endpoints

Antes de empezar

Todos los métodos requieren un x-access-token administrativo. Los nodos deben ser accesibles a través de las rutas de red necesarias, tener el rol previsto y usar datos únicos de identidad y dirección.

Qué puedes hacer

  • create, update, getAll, getCount y getById gestionan los registros de nodos.
  • attachNode y detachNode modifican la pertenencia al clúster.
  • start y stop controlan un nodo registrado.
  • remove elimina el registro de un nodo que ya no se necesita.

Flujo de ejemplo

  1. Crea el nodo con su rol y una dirección accesible.
  2. Adjúntalo al clúster correspondiente.
  3. Inícialo y comprueba su estado antes de asignarle trabajo.
  4. Detén y separa el nodo antes de realizar mantenimiento o eliminarlo.

Casos de uso habituales

  • Añadir un nodo regional de procesamiento para un evento cerca de sus señales de contribución.
  • Mantener un nodo de pruebas separado de las asignaciones de producción.
  • Drenar y separar un nodo para mantenimiento sin eliminar el clúster.

Límites y resolución de problemas

Los roles incorrectos, direcciones duplicadas, hosts inaccesibles o permisos de red insuficientes pueden impedir que un nodo se adjunte o se inicie. Separar o detener un nodo puede afectar a los recursos asignados: mueve o detén primero el trabajo que dependa de él.

Siguientes pasos

Cuando el nodo esté activo, crea los recursos de ingesta o procesamiento que deban ejecutarse en el clúster.

Receta de solución REST

Conectar un worker a un clúster de Callaba

Crea el nodo, conéctalo al master revisado e inícialo solo tras validar red y versión.

  1. Crear el nodoRegistra el host revisado y su rol.POST /api/clusterNodes/create
  2. Conectar el nodoUne el nodo a la relación de clúster prevista.POST /api/clusterNodes/attachNode
  3. Iniciar el workerInicia solo tras validar la conexión y el estado.POST /api/clusterNodes/start

Los métodos de clúster requieren acceso administrativo. Prueba conectividad y compatibilidad antes de mover cargas.

POST
/api/clusterNodes/create
Requiere token de administrador

Registra un nodo interno nuevo en el clúster. Úsalo para ampliar la capacidad, incorporar un nodo secundario a la topología de confianza o preparar un nodo de prueba antes de un despliegue.

En los nodos secundarios, el token de API del nodo forma parte del establecimiento de confianza. No uses una IP pública: esta relación está diseñada para infraestructura interna.

Nodo de control principal

Utiliza esta configuración cuando un nodo interno deba actuar como punto principal de coordinación del clúster y el resto de los nodos deban conectarse a él.

Nodo de control principal
Copiar código
curl --request POST \
--url http://localhost/api/clusterNodes/create \
--header 'x-access-token: <your_api_token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Primary cluster node",
"host": "10.20.0.10",
"node_type": "CLUSTER_NODES_TYPE_MASTER",
"active": true
}'
Nodo secundario conectado

Utiliza esta configuración para incorporar un nodo secundario a un clúster interno de confianza. El token de API del nodo secundario es necesario para completar la conexión.

Nodo secundario conectado
Copiar código
curl --request POST \
--url http://localhost/api/clusterNodes/create \
--header 'x-access-token: <your_api_token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Istanbul slave node",
"host": "10.20.0.25",
"node_type": "CLUSTER_NODES_TYPE_SLAVE",
"api_token": "<child_node_jwt_token>",
"active": true
}'
Nodo de prueba o validación

Utiliza esta configuración para preparar un nodo de validación, ensayo o pruebas aisladas antes de incorporarlo a una ruta de producción.

Nodo de prueba o validación
Copiar código
curl --request POST \
--url http://localhost/api/clusterNodes/create \
--header 'x-access-token: <your_api_token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Test validation node",
"host": "10.20.0.40",
"node_type": "CLUSTER_NODES_TYPE_TEST",
"active": false
}'
Parámetros del cuerpo de la solicitud
Identidad
name
string
Copiar enlace directo

Etiqueta del panel: Nombre del nodo.

Nombre descriptivo del nodo interno.

node_type
string
Copiar enlace directo

Etiqueta del panel: Tipo.

Los valores utilizados por el producto son CLUSTER_NODES_TYPE_MASTER, CLUSTER_NODES_TYPE_SLAVE y CLUSTER_NODES_TYPE_TEST.

Conectividad
host
string
Copiar enlace directo

Etiqueta del panel: Host.

Dirección interna del nodo. El panel advierte que no se debe utilizar aquí una IP pública.

Confianza
api_token
string
Copiar enlace directo

Etiqueta del panel: Token de API.

Token JWT del nodo secundario utilizado para conectarlo al clúster. Solo se aplica cuando el tipo de nodo es CLUSTER_NODES_TYPE_SLAVE.

Runtime
active
boolean
Copiar enlace directo

Etiqueta del panel: Habilitado.

Define si el nodo debe quedar activo inmediatamente después de crearlo.

Crear nodo del clúster
Copiar código
curl --request POST \
--url http://localhost/api/clusterNodes/create \
--header 'x-access-token: <your_api_token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Istanbul slave node",
"host": "10.20.0.25",
"node_type": "CLUSTER_NODES_TYPE_SLAVE",
"api_token": "<child_node_jwt_token>",
"active": true
}'
Respuesta
success
boolean
Copiar enlace directo

La operación de creación confirma que la solicitud ha sido aceptada.

Respuesta: Crear nodo del clúster
JSON
Copiar código
{
"success": true
}
POST
/api/clusterNodes/getCount
Requiere token de administrador
POST
/api/clusterNodes/getAll
Requiere token de administrador
POST
/api/clusterNodes/getById
Requiere token de administrador
POST
/api/clusterNodes/update
Requiere token de administrador
POST
/api/clusterNodes/start
Requiere token de administrador
POST
/api/clusterNodes/stop
Requiere token de administrador
POST
/api/clusterNodes/attachNode
Requiere token de administrador
POST
/api/clusterNodes/detachNode
Requiere token de administrador
DELETE
/api/clusterNodes/remove
Requiere token de administrador