Información sobre las comprobaciones previas

En los clústeres de Anthos en equipos físicos, puedes ejecutar comprobaciones previas en diferentes situaciones:

  • Los clústeres de Anthos en equipos físicos ejecutan verificaciones previas cuando creas o actualizas clústeres de administrador, híbridos, independientes o de usuario con recursos bmctl. Si las verificaciones fallan, no se realizan cambios. También puedes omitir estas verificaciones.
  • Los clústeres de Anthos en equipos físicos también ejecutan verificaciones previas de comprobación previa cuando aplicas recursos de Kubernetes a clústeres de usuarios desde un clúster híbrido o administrador. Las verificaciones se ejecutan antes de que los cambios se apliquen en los clústeres de usuarios afectados. Si las verificaciones fallan, no se realizan cambios. También puedes omitir estas verificaciones o ejecutarlas de forma explícita.

Comprobaciones previas cuando verificas clústeres mediante bmctl

Cuando creas clústeres de administrador, híbridos, independientes o de usuario con el comando bmctl, los clústeres de Anthos en equipos físicos ejecutan verificaciones previas automáticamente antes de que se realicen cambios.

Cuando las verificaciones se aprueban, los clústeres de Anthos en equipos físicos crean los clústeres.

Cómo ignorar los resultados de las comprobaciones previas

Si deseas omitir estas verificaciones previas automatizadas, puedes usar la marca opcional --force en el comando.

Ejecuta comprobaciones previas de manera independiente

También puedes ejecutar verificaciones previas de manera independiente antes de crear un clúster para asegurarte de que los recursos de la máquina y del nodo pasen las verificaciones.

  • Con el siguiente comando, se valida el archivo de configuración de clústeres especificado, pero no se intenta crear el clúster:

    bmctl check config --cluster CLUSTER_NAME

  • Este comando comprueba si las máquinas y la red están listas para la creación del clúster:

    bmctl check preflight --cluster CLUSTER_NAME

Solo los clústeres de Anthos en equipos físicos 1.7.0 y versiones posteriores admiten la creación de clústeres de usuarios con bmctl.

Comprobaciones previas para la creación de clústeres de usuarios

Los clústeres de usuario en equipos físicos se crean a partir de un clúster existente de administrador o híbrido. Los clústeres de Anthos en equipos físicos ejecutan automáticamente comprobaciones previas antes de realizar cambios. También puedes ejecutar verificaciones previas con kubectl antes de crear un clúster.

  1. Crea un archivo de configuración de clúster de usuario con los pasos de Crea clústeres de usuario en una configuración de varios clústeres

  2. Crea un espacio de nombres para el clúster de usuario nuevo. Por ejemplo, para crear un clúster de usuarios nuevo llamado user1, puedes crear un espacio de nombres llamado cluster-user1. Este es el comando kubectl para crear el espacio de nombres, en el que ADMIN_KUBECONFIG especifica la ruta al archivo kubeconfig del clúster de administrador:

    kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
    

  3. Sube el archivo de claves privadas SSH al espacio de nombres nuevo como un secreto para establecer tus credenciales. Aquí se muestra el comando de muestra, en el que ADMIN_KUBECONFIG especifica la ruta al archivo kubeconfig del clúster de administrador y SSH_PRIVATE_KEY_FILE_PATH especifica la ruta al archivo de claves privadas SSH:

    kubectl --kubeconfig ADMIN_KUBECONFIG create secret generic ssh-key -n cluster-user1 --from-file=id_rsa=SSH_PRIVATE_KEY_FILE_PATH
    

  4. Crea un nuevo archivo YAML de verificación previa con la siguiente estructura. En el campo configYAML, ingresa el contenido de texto del archivo de configuración de clúster del usuario que creaste en el paso 1:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: PreflightCheck
    metadata:
    generateName: preflightcheck-
    namespace: cluster-user1
    spec:
    configYAML: |
    # insert user cluster config file content here.
    
  5. Usa el comando kubectl para ejecutar la verificación previa del clúster de usuario:

    kubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
    

    Reemplaza lo siguiente:

    • ADMIN_KUBECONFIG: Una ruta al archivo kubeconfig del clúster de administrador.
    • USER_CLUSTER_PREFLIGHT_CHECK_CONFIG: Una ruta de acceso al archivo YAML de verificación previa que creaste en el paso anterior

    Por ejemplo, para un clúster de administrador llamado cluster1 y un archivo de configuración de verificación previa del clúster de usuario llamado user1-preflight.yaml, el comando es el siguiente:

    kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
    

    El sistema muestra el siguiente mensaje, con el ID de trabajo de la verificación previa:

    preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
  6. Consulta el estado del trabajo de verificación previa con el comando kubectl:

    kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
    

Si el trabajo de verificación de comprobación previa falla, verifica su estado y, luego, verifica los registros detallados del trabajo para ver qué verificación falló. Corrige los problemas mencionados en los trabajos según corresponda y vuelve a ejecutar las verificaciones.

Comprobación previas interna en clústeres existentes

Los clústeres de Anthos en equipos físicos también realizan verificaciones previas cuando aplicas recursos de Kubernetes a un clúster híbrido o de administrador existente. Si alguna verificación falla, los clústeres de Anthos en equipos físicos no cambian los nodos relacionados, a menos que hayas omitido las verificaciones de forma específica.

Omite las verificaciones previas cuando apliques recursos de Kubernetes

Para ignorar las verificaciones previas internas cuando aplicas recursos a los clústeres existentes, debes establecer el campo BypassPreflightCheck en true en el archivo YAML del clúster.

Este es un fragmento de un archivo YAML de configuración del clúster en el que se muestra el campo bypassPreflightCheck configurado como true.

# Sample cluster config to bypass preflight check errors:

apiVersion: v1
kind: Namespace
metadata:
  name: cluster-user1
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: user1
  namespace: cluster-user1
spec:
  type: user
  bypassPreflightCheck: true
  # Anthos cluster version.
  anthosBareMetalVersion: 1.7.7
....

Vuelve a habilitar las verificaciones previas

Puedes activar de manera explícita una nueva ronda de verificaciones previas para que los clústeres de Anthos en equipos físicos puedan actualizar o crear clústeres nuevos después de que la verificación previa se realice correctamente.

  1. Crea un nuevo archivo YAML de comprobación previa con el siguiente contenido. Completa los campos namespace y clusterName con el nombre del clúster que crearás:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: PreflightCheck
    metadata:
    generateName: preflightcheck-
    namespace: CLUSTER_NAMESPACE
    spec:
    clusterName: CLUSTER_NAME
    

  2. Usa el comando kubectl para ejecutar la verificación previa del clúster:

    kubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
    

    Reemplaza lo siguiente:

    • ADMIN_KUBECONFIG: Una ruta al archivo kubeconfig del clúster de administrador.
    • CLUSTER_PREFLIGHT_CHECK_CONFIG: Ruta de acceso al archivo YAML de verificación previa que creaste antes

    Por ejemplo, para un clúster de administrador llamado cluster1 y una configuración de verificación previa del clúster de usuario llamada user1-preflight.yaml, el comando es el siguiente:

    kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
    
    Los sistemas responden con el ID de tarea de la verificación previa:
    preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
    

  3. Consulta el ID de estado del trabajo de verificación previa con el comando kubectl:

    kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
    

Una vez que el trabajo de verificación previa finalizó correctamente, los clústeres de Anthos en equipos físicos crean el clúster y sus recursos.

Detalles de la comprobación previa de la instalación

Los clústeres de Anthos en equipos físicos verifican varias condiciones de requisitos previos del sistema operativo, el software y la máquina cuando se ejecutan verificaciones previas.

Para obtener información más detallada, consulta Descripción general de los requisitos previos de instalación.