Gestión de clústeres del servicio de virtualización

Virtual Private Cloud 4.21 and later Bare metal worker nodes only RHCOS only

Aprende a gestionar tu clúster del Servicio de virtualización de OpenShift, lo que incluye trabajar con componentes preconfigurados, gestionar los nodos de trabajo y realizar tareas de mantenimiento.

Comprensión de los componentes gestionados

Los clústeres del Servicio de Virtualización incluyen varios componentes preconfigurados que se gestionan de forma diferente a como se hace en los clústeres estándar de « OpenShift ».

Componentes básicos (no se pueden desactivar)

Los siguientes componentes son esenciales para el Servicio de virtualización y no se pueden desactivar:

OpenShift Complemento de virtualización
El complemento « openshift-virtualization » se activa automáticamente en todos los clústeres de Virtualization Service y no se puede desactivar. Este complemento gestiona la instalación y las actualizaciones de los operadores de virtualización « OpenShift », «NMState» y « Node Maintenance». Para obtener más información, consulte la guía « Administración del complemento de virtualización de OpenShift ».
Operador de virtualización de OpenShift
Ofrece funciones de gestión de máquinas virtuales. Este operador se instala automáticamente mediante el complemento y se actualiza como parte del ciclo de vida del clúster. Se ha bloqueado la instalación desde Red Hat OperatorHub.
Operador de NMState
Gestiona la configuración de red de las máquinas virtuales y los nodos. El complemento instala automáticamente este operador.
Node Operario de mantenimiento
Se encarga de las operaciones de mantenimiento de nodos para las cargas de trabajo de máquinas virtuales. El complemento instala automáticamente este operador.
OpenShift Data Foundation (ODF)
Ofrece almacenamiento para discos de « VM » y permite la migración en vivo. ODF viene preconfigurado para utilizar almacenamiento NVMe local en nodos bare metal.

Ver complementos gestionados

Mostrar todos los complementos de tu clúster:

ibmcloud ks cluster addon ls --cluster CLUSTER_NAME

Salida de ejemplo:

Name                         Version   Health State   Health Status
ibm-storage-operator         1.0       normal         Addon Ready. For more info: http://ibm.biz/addon-state (H1500)
openshift-virtualization     4.21      normal         Addon Ready. For more info: http://ibm.biz/addon-state (H1500)

El complemento « openshift-virtualization » se activa automáticamente y no se puede desactivar en los clústeres de Virtualization Service.

Para obtener información detallada sobre la gestión del complemento de virtualización de « OpenShift », incluyendo cómo consultar los detalles, comprobar las versiones y actualizarlo, consulte «Gestión del complemento de virtualización de « OpenShift ».

Gestión de los nodos de trabajo

Visualización de los nodos de trabajo

Enumera todos los nodos de trabajo de tu clúster:

ibmcloud ks workers --cluster CLUSTER_NAME

O bien, utiliza la interfaz de línea de comandos de OpenShift:

oc get nodes

Adición de nodos trabajadores

Añadir nodos de trabajo a un grupo de trabajo ya existente:

ibmcloud ks worker-pool resize --cluster CLUSTER_NAME \
  --worker-pool default \
  --size-per-zone NUMBER_OF_WORKERS

Todos los nodos de trabajo de un clúster de Virtualization Service deben utilizar versiones de hardware sin sistema operativo compatibles.

Sustitución de nodos de trabajo

Sustituir un nodo de trabajo:

ibmcloud ks worker replace --cluster CLUSTER_NAME --worker WORKER_ID

El trabajador sustituto se configura con los mismos parámetros que el original.

Recarga de los nodos de trabajo

Antes de reiniciar un nodo de trabajo, pon el nodo en modo de mantenimiento mediante el operador de mantenimiento de Node o migra las máquinas virtuales en ejecución a otros nodos. Para obtener más información, consulta Poner un nodo en mantenimiento y Migración en vivo de máquinas virtuales.

Reinicia un nodo de trabajo para aplicar actualizaciones o solucionar problemas:

ibmcloud ks worker reload --cluster CLUSTER_NAME --worker WORKER_ID

Gestión de plantillas de trabajadores

Visualización de grupos de trabajadores

ibmcloud ks worker-pool ls --cluster CLUSTER_NAME

Creación de grupos de trabajadores adicionales

Crea un nuevo grupo de trabajadores con una variante de servidor físico diferente:

ibmcloud ks worker-pool create vpc-gen2 \
  --name POOL_NAME \
  --cluster CLUSTER_NAME \
  --flavor BARE_METAL_FLAVOR \
  --size-per-zone NUMBER_OF_WORKERS

Todos los grupos de trabajadores de un clúster de Virtualization Service deben utilizar configuraciones de hardware puro compatibles con la oferta « openshift-vs ».

Añadir zonas a los grupos de trabajadores

Añadir una zona a un grupo de trabajadores existente:

ibmcloud ks zone add vpc-gen2 \
  --cluster CLUSTER_NAME \
  --zone ZONE \
  --subnet-id SUBNET_ID \
  --worker-pool POOL_NAME

Actualización del clúster

Comprobación de actualizaciones

Comprueba si hay actualizaciones disponibles para tu clúster:

ibmcloud ks cluster get --cluster CLUSTER_NAME | grep "Master Version"

Ver versiones disponibles:

ibmcloud ks versions --show-version openshift

Actualización del nodo maestro del clúster

Actualizar el clúster maestro a una nueva versión:

ibmcloud ks cluster master update --cluster CLUSTER_NAME --version VERSION

La actualización principal suele tardar entre 30 y 60 minutos. Durante este tiempo, no podrás acceder a la API de Kubernetes ni a la consola de OpenShift.

Actualización de nodos trabajadores

Después de actualizar el nodo maestro, actualiza los nodos de trabajo:

ibmcloud ks worker update --cluster CLUSTER_NAME --worker WORKER_ID

O actualizar todos los trabajadores de un grupo de trabajadores:

ibmcloud ks worker-pool update --cluster CLUSTER_NAME --worker-pool POOL_NAME

Antes de actualizar los nodos de trabajo, pon cada nodo en modo de mantenimiento mediante el operador de mantenimiento de Node o migra las máquinas virtuales en ejecución a otros nodos. Para obtener más información, consulta Poner un nodo en mantenimiento y Migración en vivo de máquinas virtuales.

Supervisión del estado del clúster

Comprobación del estado del clúster

ibmcloud ks cluster get --cluster CLUSTER_NAME

Busque:

  • Estado: Debería ser normal
  • Estado maestro: Debería ser Ready
  • Master Health: Debería ser normal

Supervisión del estado de los componentes

Comprueba el estado de la virtualización de OpenShift:

oc get hyperconverged -n openshift-cnv

Comprobar el estado del ODF:

oc get storagecluster -n openshift-storage

Visualización de los registros del clúster

Ver la actividad del clúster:

ibmcloud ks cluster get --cluster CLUSTER_NAME --show-resources

Para obtener un registro detallado, configura IBM Log Analysis. Consulte la sección «Registro» para los clústeres.

Gestión de máquinas virtuales

Ver máquinas virtuales

Mostrar todas las máquinas virtuales del clúster:

oc get vms -A

Ver máquinas virtuales en un espacio de nombres específico:

oc get vms -n NAMESPACE

Poner un nodo en modo de mantenimiento

Antes de realizar acciones de mantenimiento, como actualizar, recargar o sustituir un nodo de trabajo bare metal, pon el nodo en modo de mantenimiento. El operador de mantenimiento de Node aísla el nodo y expulsa o migra en tiempo real automáticamente todas las cargas de trabajo de máquinas virtuales que cumplan los requisitos a otros nodos de la misma zona sin interrumpir dichas cargas de trabajo.

Si su clúster utiliza una base de datos OpenShift (ODF), los nodos que ejecutan componentes de almacenamiento ODF deben seguir los procedimientos de actualización y mantenimiento de ODF en lugar de este proceso. Puede obtener información adicional consultando Qué es OpenShift Data Foundation.

Iniciar el mantenimiento del nodo desde la consola web

Puede iniciar el mantenimiento de los nodos directamente desde la consola web de Red Hat OpenShift.

  1. En la perspectiva de administrador de la consola web de OpenShift, ve a Compute > Nodes.
  2. Busca el nodo de trabajo bare metal en el que quieras realizar el mantenimiento.
  3. Haz clic en el menú de acciones (tres puntos verticales) de ese nodo y selecciona Iniciar mantenimiento.
  4. En el cuadro de diálogo de confirmación, revisa la configuración de mantenimiento y haz clic en Iniciar.
  5. Comprueba que el estado del nodo se muestre como Scheduling disabled y que el menú de acciones muestre Detener mantenimiento en lugar de Iniciar mantenimiento. Espera a que todas las instancias de VM se hayan migrado a otros nodos disponibles antes de continuar con tu acción a nivel de nodo (como ibmcloud ks worker reload o ibmcloud ks worker update).
  6. Una vez finalizada la acción de mantenimiento y cuando el nodo se encuentre en buen estado, vuelve a Compute > Nodes, haz clic en el menú de acciones del nodo y selecciona Detener mantenimiento.

Iniciar el mantenimiento del nodo desde la CLI

También puedes iniciar el mantenimiento de un nodo creando un recurso personalizado NodeMaintenance.

  1. Crea un archivo YAML llamado con node-maintenance.yaml la definición del recurso personalizado NodeMaintenance. Especifica el nombre del nodo de trabajo bare metal de destino en el campo nodeName.

    apiVersion: nodemaintenance.medik8s.io/v1beta1
    kind: NodeMaintenance
    metadata:
      name: nodemaintenance-NODE_NAME
    spec:
      nodeName: NODE_NAME
      reason: Node maintenance for update or reload
    
  2. Aplica el recurso personalizado para poner el nodo en modo de mantenimiento:

    oc apply -f node-maintenance.yaml
    
  3. Supervisa el estado del recurso NodeMaintenance para comprobar que la operación de vaciado se ha realizado correctamente:

    oc get nodemaintenance nodemaintenance-NODE_NAME -o jsonpath='{.status.phase}'
    

    Comprueba que los informes de fase estén correctos antes Succeeded de proceder a recargar, actualizar o sustituir el nodo.

  4. Realice la acción prevista a nivel de nodo, como recargar o actualizar el nodo de trabajo:

    ibmcloud ks worker reload --cluster CLUSTER_NAME --worker WORKER_ID
    
  5. Una vez completada la recarga o actualización del nodo y cuando el estado del nodo en oc get nodes sea Ready, elimine el nodo del mantenimiento borrando el recurso NodeMaintenance:

    oc delete nodemaintenance nodemaintenance-NODE_NAME
    

Migración manual de máquinas virtuales en tiempo real

Si desea iniciar manualmente una migración en vivo para una máquina virtual concreta en lugar de utilizar el operador de mantenimiento Node:

  1. Enumera las instancias de máquina virtual del espacio de nombres para identificar el nombre de la máquina virtual VM que deseas migrar:

    oc get vmi -n NAMESPACE
    
  2. Iniciar una migración en vivo para el servicio VM:

    virtctl migrate VM_NAME -n NAMESPACE
    

Si un servidor de base de datos VM tiene una interfaz de red virtual (VNI) conectada, la migración en vivo solo es compatible dentro de la misma zona. La migración de un VM de este tipo entre zonas se realiza con éxito, pero el VM acaba con una red averiada porque los VNI no pueden conectarse entre zonas.

Detener e iniciar máquinas virtuales

Detener un VM:

virtctl stop VM_NAME -n NAMESPACE

Iniciar un VM:

virtctl start VM_NAME -n NAMESPACE

Gestión de Almacenamiento

Supervisión de la capacidad de almacenamiento

Comprueba la capacidad de almacenamiento de ODF:

oc get cephcluster -n openshift-storage -o jsonpath='{.items[0].status.ceph.capacity}'

Ver el uso del almacenamiento:

oc get cephblockpool -n openshift-storage

Gestión de reclamaciones de volúmenes persistentes

Enumerar los PVC utilizados por las máquinas virtuales:

oc get pvc -A | grep virtualmachine

Ver detalles del PVC:

oc describe pvc PVC_NAME -n NAMESPACE

Resolución de problemas

Para resolver problemas habituales en los clústeres del Servicio de virtualización, consulte los siguientes temas:

Próximos pasos