Saltar al contenido principal

Puesta en servicio de un nodo nuevo

Los clústeres crecen añadiendo nodos. La instalación del hardware, la instalación del sistema en un nodo y la admisión del nodo en el clúster se realizan fuera de vStack Center, mediante el proceso de instalación y Cluster Manager. vStack Center interviene en el procedimiento más adelante, cuando el nodo ya es visible para el clúster, pero todavía no ejecuta cargas de trabajo, no se ha inventariado y no ha puesto sus discos a disposición.

Las responsabilidades están estrictamente repartidas. Cluster Manager mantiene la pertenencia al clúster y los estados de los nodos; vStack Center muestra su vista y le reenvía comandos. El agente del nodo informa del hardware, las versiones de los paquetes y la configuración del sistema. Estos datos se almacenan en la base de datos de vStack Center y se muestran en la ficha del nodo.

Por eso todo el trabajo con un nodo se realiza en dos fases. La recopilación del inventario y de las versiones de software es un comando al agente del nodo, y el propio comando no informa del resultado. El resultado aparece en pantalla más tarde, cuando el nodo responde. Use la columna Last_seen para comprobar lo recientes que son los datos: muestra cuándo informó el nodo por última vez.

Los discos de un nodo nuevo pasan por dos pasos independientes, y confundirlos puede salir caro. Poner un disco en línea lo hace visible para todos los nodos del clúster. Esto no lo convierte en miembro de un pool ZFS: el pool se ensambla en el nodo y vStack Center no ofrece esta operación.

Fase de la puesta en servicio de un nodoLa realizaDónde se realiza
Instalación del hardware, instalación del sistema, admisión en el clústerProceso de instalación y Cluster ManagerFuera de vStack Center; consulte la documentación de vStack OS
Habilitar el nodo para que acepte cargas de trabajoCluster Manager, por un comando de vStack CenterNo disponible en la interfaz web; use la API
Recopilación de hardware y versiones de softwareAgente del nodoFicha del nodo: sección Hardware, botón Software
Alineación de la configuración del sistemaAgente del nodoFicha del nodo: botón Configure
Puesta en línea de los discos en el clústerAgente del nodoNo disponible en la interfaz web; use la API
Ensamblaje de un pool ZFS con los discos del nodoNodoNo disponible en vStack Center
Inicio del servicio del pool en el nodoCluster ManagerFicha del pool: Actions → Start pool
Verificación de la capacidad del clústervStack CenterPantallas Overview, Server Nodes, Storage Resources

Requisitos previos​

  • El rol Cluster master (role_id=1), necesario para todas las operaciones de este procedimiento, incluida la recopilación de datos del host;
  • El indicador feature.hardware_inventory: sin él, no se muestran el inventario recopilado ni el uso de los núcleos;
  • El indicador feature.physical_disc_management: sin él, las operaciones con discos físicos no están disponibles, incluidos el listado de discos, el encendido de indicadores luminosos, la puesta en línea de un disco en el clúster y el marcado de un disco como spare (de reserva);
  • El indicador feature.node_config_management: sin él, la configuración del nodo y la recopilación de versiones de software no están disponibles;
  • El nodo ya se ha admitido en el clúster y es visible en la tabla Server Nodes;
  • Una lista de los números de serie de los discos del nodo nuevo: los discos se verifican por número de serie;
  • vStack Center versión 3.0.5.

Los indicadores habilitados figuran en las opciones del clúster. Compruébelos allí.

Paso 1. Asegúrese de que el nodo es visible para el clúster​

Empiece por leer el estado actual. Mientras el nodo no aparezca en la vista de Cluster Manager, cualquier comando para ponerlo en servicio no tendrá destino.

  1. Abra Provider Data Center → Server Nodes. El nodo nuevo aparece como una fila nueva en la tabla con las columnas ID, Name, Health, CPU (Cores) y RAM (GB), y como una pestaña independiente junto a las ya conocidas node01…node05.
  2. Anote el ID del nodo: lo necesitará más adelante tanto para los comandos como para la verificación.
  3. Compruebe Health. Un nodo tiene dos valoraciones de estado independientes: lo que el administrador permite y lo que ocurre realmente. Este par se explica en "Clúster, nodos y servicios".

Cluster Manager proporciona el contenido de la tabla. Si la tabla está vacía y la pantalla informa de un error al obtener el estado, los datos de pertenencia al clúster no están disponibles. Compruebe la disponibilidad de Cluster Manager y no comience la puesta en servicio del nodo.

Paso 2. Habilite el nodo para que acepte cargas de trabajo​

Poner un nodo en servicio concede un permiso administrativo; no inicia el nodo. vStack Center reenvía el comando de habilitación a Cluster Manager, tras lo cual el nodo empieza a aceptar cargas de trabajo.

La habilitación y la deshabilitación de un nodo no están disponibles en la interfaz web. Un administrador realiza la operación a través de la API; consulte la referencia de la API. Compruebe el resultado en la tabla Server Nodes: un nodo habilitado deja de estar marcado como nodo con prohibición de funcionar, y la columna Health muestra su estado real.

Que un comando se acepte significa que Cluster Manager lo ha recibido, no que el nodo ya haya cambiado de estado. Health muestra el cambio real y se actualiza cuando el nodo responde. El identificador del nodo es un número: el clúster rechaza un valor con caracteres ajenos con el código -20122 antes de enviar el comando.

Paso 3. Recopile el inventario de hardware​

Necesita el inventario de inmediato para cotejar el hardware entregado con la lista de envío y localizar los discos en el chasis. Esto se hace en dos fases: recopilación y, después, lectura.

  1. Inicie un inventario del nodo nuevo. La recopilación puede dirigirse a un solo nodo o a todo el clúster, y puede limitarse a una clase de dispositivo. Al poner un nodo en servicio, lo adecuado es un análisis completo: no seleccione ninguna clase y deje que el agente lo recopile todo.

    Clase de dispositivoDatos recopilados
    ifnetInterfaces de red
    sesChasis de discos
    camSubsistema de discos
    nvmeDispositivos NVMe
    smbiosDatos SMBIOS
    Ninguna clase seleccionadaInventario completo
  2. Abra la ficha del nodo y despliegue la sección Hardware. La pestaña Inner view muestra el hardware del nodo en la tabla Manufacturer / Description / Product / Serial number / Version. Las pestañas anidadas Node data, CPU y RAM cambian entre vistas.

  3. Compruebe el hardware de CPU en la pestaña Utilization: muestra el uso de los núcleos por dominio NUMA, con datos de no más de diez minutos de antigüedad. La pestaña Portgroup muestra información de red en las columnas Name, Hash, Last_seen, MAC, Proto y Status.

  4. Compruebe la ubicación de los discos en la sección Disks, en la pestaña Placement. Las columnas Enclosure_device, Enclosure_id, Dev_index y Device proporcionan la información que usará más adelante para localizar un disco en el chasis.

Que la pestaña Utilization esté vacía en un nodo recién habilitado es normal: el agente todavía no ha informado. Vuelva a abrir la ficha más tarde.

Paso 4. Alinee las versiones de software con el resto del clúster​

Las diferencias de versión entre nodos suelen provocar un comportamiento inesperado del clúster. Un nodo nuevo llega con la versión de su imagen, y esa versión casi siempre hay que comprobarla.

  1. Haga clic en Software. El botón está disponible tanto en la lista de nodos como en la ficha del nodo. Se abre la tabla Name / Version / Last_seen, que muestra la versión de cada paquete y la hora en que se detectó por última vez. Las versiones de los paquetes del nodo y las versiones del clúster se muestran por separado.
  2. Compruebe Last_seen. Un valor antiguo significa que el nodo no ha informado desde hace tiempo y que la versión mostrada puede diferir de la instalada. En ese caso, inicie la recopilación de versiones de software y vuelva a abrir la tabla.
  3. Compare el nodo nuevo con cualquier nodo que ya esté en servicio. Si las versiones de los paquetes obligatorios difieren, detenga la puesta en servicio del nodo y actualícelo.

Algunos paquetes son opcionales: vStack-vm-prio, vStack-storage-san y vStack-zpool pueden no figurar en la tabla. Su ausencia en un nodo nuevo no indica un error de recopilación ni es motivo para revertir la puesta en servicio del nodo.

Paso 5. Aplique la configuración del nodo​

La configuración del sistema está agrupada y cada parámetro tiene una clase: un perfil dentro del cual se aplica el valor. El nodo nuevo recibe los mismos valores ya configurados en los nodos en servicio, así que primero lea la configuración de referencia y después aplíquela.

  1. Abra la ficha de un nodo en servicio y haga clic en Configure. Los parámetros se muestran en grupos, con sus valores actuales y las horas de la última detección. Anote los valores que deben coincidir en el nodo nuevo.
  2. Antes de editar un valor, compruebe si el parámetro es numérico o una cadena: esto determina lo que acepta el formulario.
  3. Abra Configure en la ficha del nodo nuevo, introduzca los valores y seleccione la clase en la que deben aplicarse. Dirija el cambio a un solo nodo: no es necesario enviarlo a todo el clúster al poner un nodo en servicio.
  4. Confirme el cambio. El comando se reenvía al agente del nodo, por lo que el resultado no es visible de inmediato. Vuelva a abrir la configuración: se actualizarán el valor y la hora de detección del parámetro modificado.

vStack Center comprueba por sí mismo el intervalo de los parámetros numéricos: un valor inferior al mínimo se rechaza con el código -23124 y un valor superior al máximo, con el código -23125. Estos valores no se envían a los nodos. Un parámetro desconocido se rechaza con el código -23121, y un parámetro sin la clase solicitada, con el código -23123.

Paso 6. Ponga en línea en el clúster los discos del nodo​

Los discos del nodo nuevo están inicialmente "en bruto": el nodo los ve, pero el clúster no. Poner un disco en línea lo hace visible para todos los nodos. La operación es destructiva y no idempotente: volver a poner en línea un disco que ya lo está se rechaza con el código -24706.

La puesta en línea de un disco en el clúster, su marcado como spare y su retirada del clúster no están disponibles en la interfaz web. Un administrador las realiza a través de la API; consulte la referencia de la API. Allí también se indican el tamaño de bloque y el número de serie con los que el disco aparecerá en el clúster.

  1. Compruebe lo que ha detectado el nodo. Abra la sección Disks de la ficha del nodo. Las pestañas muestran distintas vistas de la misma lista: Disk props: ID, Model, Size (GB), Status; ZFS props: Pool name, Vdev_pool_name, Vdev_guid, Vdev_pool_guid; Placement: ubicación en el chasis; LED on panel: Led_fault y Led_locate.
  2. Distinga tres atributos independientes: Status, el estado de salud del disco; el rol del disco (libre, particionado, miembro de un pool, spare); y el indicador "en línea en el clúster". Ninguno puede deducirse de otro. Solo la API muestra el indicador de puesta en línea del disco en el clúster.
  3. Ponga en línea los discos necesarios y vuelva a leer la lista. El rol del disco no cambia: ponerlo en línea en el clúster no afecta a su rol.
  4. Considere marcar algunos discos como spare de inmediato para que una sustitución de emergencia pueda encontrar un disco de reemplazo. Marcar un disco como spare escribe una etiqueta de servicio en el disco, por lo que el nodo rechaza esta operación en un disco con datos activos, salvo que la operación se fuerce.
precaución

Poner un disco en línea en el clúster no lo añade a un pool ZFS. Un pool se ensambla en el nodo con discos en línea; vStack Center no ofrece esta operación. Mientras no exista un pool, los discos del nodo no añadirán ni un solo byte de capacidad al clúster.

Puede encender los indicadores luminosos de un disco en el chasis directamente desde la interfaz: las pestañas Front view e Inner view de la sección Disks ofrecen botones de indicador de localización y de fallo para cada disco. El resultado es visible en la pestaña LED on panel.

Paso 7. Inicie el servicio del pool en el nodo nuevo​

Un pool se ejecuta en un nodo como servicio del clúster. Hasta que el servicio se habilita y se inicia, el pool no aporta capacidad, aunque los discos estén en línea y el pool se haya ensamblado.

  1. Abra Provider Data Center → Storage Resources. La tabla ZFS pools muestra los pools del clúster con las columnas GUID, Name, Health, Consuming, Scrubbing, Resilvering, Current node y Capacity (RAW). Current node indica qué nodo aloja actualmente el pool.
  2. Abra el pool desde la tabla y, en el menú Actions, seleccione Start pool.
  3. Vuelva a Storage Resources y asegúrese de que el pool se muestra como en ejecución y de que Current node apunta al nodo nuevo.

Un servicio tiene dos atributos independientes: el permiso, es decir, si se le permite funcionar, y el estado, es decir, si se está ejecutando ahora. Un servicio deshabilitado no se iniciará, por muchas veces que intente iniciarlo. La habilitación y la deshabilitación de un servicio no están disponibles en la interfaz web; un administrador realiza estas operaciones a través de la API. La secuencia de operaciones y los errores habituales se explican en "Gestión de los servicios del clúster".

Que un comando se acepte confirma que Cluster Manager lo ha recibido, no que el servicio se haya iniciado realmente. El nombre de un servicio de pool consta de letras, dígitos y guiones bajos, por ejemplo zpool_ssd01; el clúster no acepta guiones, puntos ni espacios.

Paso 8. Verifique la capacidad del clúster​

El último paso responde a si el nodo está realmente en servicio o simplemente habilitado. Los recursos del nodo deben aparecer tanto en la vista por nodo como en los totales del clúster.

  1. Abra Provider Data Center → Overview. La pantalla agrega la capacidad, el aprovisionamiento y el consumo real de CPU, memoria y almacenamiento. Los totales deben aumentar en la cantidad de recursos del nodo nuevo.
  2. Vaya a la pestaña Resources: la tabla muestra los nodos con las columnas Node name, Node health y Consuming. El nodo nuevo debe aparecer en la lista.
  3. Verifique la vista por nodo en Server Nodes con las columnas CPU (Cores) y RAM (GB), y los pools del nodo en Storage Resources.

Si los valores de CPU (Cores) y RAM (GB) están vacíos en un nodo recién habilitado, significa que sus métricas todavía no están disponibles. Los valores aprovisionados siguen siendo exactos. Los pools del nodo tampoco aparecerán hasta que el pool se haya ensamblado y su servicio se haya iniciado.

Finalización del trabajo​

  1. Apague los indicadores luminosos que haya encendido durante la instalación: ficha del nodo → sección Disks → pestañas Front view o Inner view. Compruebe el resultado en la pestaña LED on panel, en las columnas Led_fault y Led_locate.
  2. Vuelva a ejecutar el inventario después de los últimos cambios físicos, con las clases ses y cam.
  3. Registre la configuración de referencia: abra Configure y Software del nodo nuevo. Este es el estado con el que comparará el nodo la próxima vez.
  4. Si va a revertir la puesta en servicio del nodo, revoque su permiso para aceptar cargas de trabajo y retire sus discos del clúster. Ambas operaciones usan la API. Un disco que pertenece a un pool activo no se puede retirar de esta forma: el pool quedaría degradado y el nodo rechazará la operación.

Verificación del resultado​

Qué comprobarDónde mirarResultado esperado
El nodo es miembro del clústerServer NodesUna fila nueva con el ID y el Name del nodo
El nodo está habilitado y en ejecuciónServer Nodes, columna HealthEl nodo no está marcado con prohibición de funcionar y se muestra como en ejecución
El hardware está inventariadoFicha del nodo, sección HardwareLa pestaña Inner view tiene datos y Last_seen es reciente
Las versiones coinciden con el clústerBotón SoftwareLa versión del kernel y los paquetes obligatorios coinciden con los de un nodo en servicio
La configuración está aplicadaFicha del nodo, ConfigureLos valores coinciden con la configuración de referencia y las horas de detección son recientes
Los discos son visibles para el clústerFicha del nodo, sección DisksLos discos necesarios aparecen en la lista; la API muestra el indicador "en línea en el clúster"
El servicio del pool está en ejecuciónStorage ResourcesEl pool aparece en la tabla ZFS pools, Current node es el nodo nuevo y Health = ONLINE
La capacidad está contabilizadaOverviewLos totales de CPU, memoria y almacenamiento han aumentado

Si algo sale mal​

Qué veCausaQué hacer
El nodo no figura en la tabla Server NodesCluster Manager todavía no ha admitido el nodo en el clústerNo comience la puesta en servicio del nodo en vStack Center; vuelva a la fase de instalación
La tabla de nodos está vacía, código de error -2Falló la comunicación con Cluster ManagerCompruebe la disponibilidad de Cluster Manager: los datos de pertenencia al clúster no están disponibles
Código de error -713 en los comandos de nodos y serviciosNo se pudo reenviar el comando a Cluster ManagerIgual que en el caso anterior; el comando no llegó a los nodos
Código de error -20122Falló la validación del identificador del nodoIndique el identificador del nodo como un número sin caracteres ajenos
Código de error -20512, -20522Falló la validación del nombre del servicio o del identificador del nodoUse el nombre del servicio de la columna Name de la tabla ZFS pools y el nodo de Server Nodes
Código de error -403 "Access denied"La operación solo está disponible para el rol Cluster masterInicie sesión con un rol a nivel de clúster
Código de error -26001, -26101El indicador feature.hardware_inventory está deshabilitadoHabilite el indicador en las opciones del clúster
Código de error -23110 o -23301El indicador feature.node_config_management está deshabilitadoHaga lo mismo para la gestión de la configuración
Código de error -24201El indicador feature.physical_disc_management está deshabilitadoHaga lo mismo para la gestión de discos físicos
Código de error -200El mapa de estado del clúster no está disponible y no hay nodos de los que recopilar datosEspere a que los nodos vuelvan a ONLINE y vuelva a intentarlo
Código de error -23203Se ha seleccionado una clase de dispositivo no válidaSeleccione una clase de la tabla del paso 3
Código de error -23124 o -23125El valor del parámetro numérico es inferior al mínimo o superior al máximoEstablezca el valor dentro de los límites del parámetro
Código de error -24702, -24704Falló la validación del formato de la ruta del dispositivo o del número de serie del discoCompruebe la ruta y el número de serie con la sección Disks
Código de error -24703Tamaño de bloque no válidoIndique 512 o 4096
Código de error -24706El disco ya está en línea en el clústerNo es necesario reintentar; compruebe el indicador de puesta en línea del disco en el clúster
Código de error -24707El número de serie solicitado ya lo usa otro disco del nodoElija otro valor u omítalo para que el nodo asigne uno
Código de error -24504Ya hay una operación destructiva en curso en el discoEspere la respuesta del nodo al comando anterior
Código de error -24503El disco ya está marcado como spareNo es necesario reintentar
El comando se acepta, pero los datos no han cambiadoLa recopilación y la escritura son asíncronas: el comando solo se ha reenviado al agente del nodoVuelva a abrir la pantalla; compruebe Last_seen para ver lo recientes que son los valores
El disco está en línea, pero la capacidad del clúster no ha aumentadoPoner un disco en línea en el clúster no ensambla un pool ZFSEnsamble el pool en el nodo y, después, habilite e inicie su servicio
El nodo está habilitado, pero CPU (Cores) y RAM (GB) están vacíosEl almacén de métricas todavía no tiene datos del nodoEspere a la recopilación de métricas y compruebe la sección Perfdata de la ficha del nodo

Véase también​

Métodos de la API​

Operaciones de la API de esta página: node-list, get-statusmap, cluster-node-enable, cluster-node-disable, node-inventory, host-inventory, node-hw-list, node-cpu-cores, node-software-inventory, node-software, node-config-map, node-config-get, node-config-set, pd-list, pd-status-map, pd-use, pd-unuse, pd-spare, pd-led, cluster-service-enable, cluster-service-start, cluster-overview, cluster-totals; consulte la referencia de la API.