Soluciona problemas de creación de un clúster de usuario en la consola de Google Cloud

En esta página, se muestra cómo investigar problemas para crear un clúster de usuario de GKE on VMware en la consola de Google Cloud.

El clúster de administrador no se muestra en la lista desplegable Aspectos básicos del clúster

El clúster de administrador debe estar registrado en una flota antes de que puedas crear clústeres de usuario en la consola de Google Cloud. Si no ves el clúster de administrador en la lista desplegable en la sección Conceptos básicos del clúster en la consola de Google Cloud, significa que el clúster de administrador no estaba registrado o que se registró con el comando gcloud container hub memberships register.

Comprueba el estado del registro:

  • En la consola de Google Cloud, ve a la página Anthos > Clústeres y selecciona el mismo proyecto de Google Cloud en el que intentaste crear el clúster de usuario.

    Ir a la página Clústeres de GKE Enterprise

    • Si el clúster de administrador no se muestra en la lista, consulta Registra un clúster de administrador.

    • Si el clúster de administrador se muestra en la lista, indica que el clúster se registró con el comando gcloud container hub memberships register. Este comando gcloud no registra de forma correcta los clústeres de administrador.

Para solucionar el problema de registro, sigue estos pasos:

  1. En tu estación de trabajo de administrador, obtén el nombre de la membresía:

    kubectl describe membership membership \
      --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    
  2. Cancela el registro del clúster de administrador. En este comando, reemplaza lo siguiente:

    • MEMBERSHIP_NAME por el nombre de membresía del comando anterior
    • Reemplaza FLEET_HOST_PROJECT_ID por el ID del proyecto host de tu flota. Este es el proyecto que seleccionaste cuando intentaste crear el clúster de usuario en la consola de Google Cloud.
    • ADMIN_CLUSTER_KUBECONFIG es la ruta de acceso al archivo kubeconfig del clúster de administrador.
    • ADMIN_CLUSTER_CONTEXT por el contexto del clúster de administrador como aparece en el archivo kubeconfig. Puedes obtener este valor desde la línea de comandos si ejecutas kubectl config current-context.
    gcloud container fleet memberships unregister MEMBERSHIP_NAME \
      --project=FLEET_HOST_PROJECT_ID \
      --kubeconfig=ADMIN_CLUSTER_KUBECONFIG \
      --context=ADMIN_CLUSTER_CONTEXT
    
  3. Sigue los pasos en Registra un clúster de administrador para volver a registrarlo.

Errores de creación de clústeres

En esta sección, se describen algunos errores que ocurren durante la creación del clúster en la consola de Google Cloud.

Error de recurso existente

La creación de un clúster de usuario falla con un mensaje de error similar al siguiente:

Resource 'projects/1234567890/locations/europe-west1/vmwareClusters/user-cluster1'
already exists
Request ID: 129290123128705826

Este mensaje de error indica que el nombre del clúster ya está en uso.

Una solución para solucionar el problema:

  1. Borrar el clúster.

  2. Vuelve a crear el clúster con un nombre que no entre en conflicto con un clúster existente.

Error de los grupos antiafinidad

La creación de un clúster de usuario falla con un mensaje de error similar al siguiente:

- Validation Category: VCenter
    - [FATAL] Hosts for AntiAffinityGroups: Anti-affinity groups enabled with
    available vsphere host number 1 less than 3, please add more vsphere hosts
    or disable anti-affinity groups.

Las reglas de antiafinidad de VMware Distributed Resource Scheduler (DRS) requieren al menos 3 hosts físicos en el entorno de vSphere. Para solucionar el problema, inhabilita Grupos de antiafinidad en la sección Funciones de la página Detalles del clúster de tu clúster de la siguiente manera:

  1. En la consola de Google Cloud, ve a la página de clústeres de GKE Enterprise.

    Ir a la página Clústeres de GKE Enterprise

  2. Selecciona el proyecto de Google Cloud en el que se encuentra el clúster de usuario.

  3. En la lista de clústeres, haz clic en el nombre del clúster y, luego, en Ver detalles en el panel Detalles.

  4. En la sección Características, haz clic en Editar.

  5. Desmarca Habilitar grupos antiafinidad y haz clic en Listo.

  6. La consola de Google Cloud muestra el Estado del clúster: cambios en progreso. Haz clic en Mostrar detalles para ver la condición de estado del recurso y los mensajes de estado.

Error de direcciones IP en conflicto

La creación de un clúster de usuario falla con un mensaje de error similar al siguiente:

- Validation Category: Network Configuration
- [FAILURE] CIDR, VIP and static IP (availability and overlapping): user: user
  cluster control plane VIP "10.251.133.132" overlaps with
  example-cluster1/control plane VIP "10.251.133.132"

Por el momento, no puedes editar campos como la VIP del plano de control y la VIP de Ingress en la sección Balanceador de cargas de Página de detalles del clúster en la consola de Google Cloud. Para solucionar los problemas de direcciones IP en conflicto:

  1. Borrar el clúster.

  2. Vuelve a crear el clúster con direcciones IP que no entren en conflicto con un clúster existente.

La eliminación del clúster no puede quitarlo de la consola de Cloud

Después de borrar un clúster de usuario, aún se mostrará en la consola de Google Cloud. Esto puede suceder cuando el clúster de usuario perdió conectividad con el clúster de administrador. Para solucionar este problema, sigue los pasos en Quita los recursos de la API de Anthos On-Prem.

Quita los recursos de la API de Anthos On-Prem

La consola de Google Cloud usa la API de Anthos On-Prem para administrar el ciclo de vida del clúster de usuario. También puedes configurar clústeres de usuario para que los administre la API de Anthos On-Prem. Los recursos de la API de Anthos On-Prem no se borran en los siguientes casos:

  • gkectl se usó para borrar un grupo de nodos de un clúster de usuario que administra la API de Anthos On-Prem.

  • Se borra el clúster de administrador de un clúster de usuario creado en la consola de Cloud.

Cuando los recursos de la API de Anthos On-Prem no se borran, el clúster de usuario aún se muestra en la consola de Google Cloud en mal estado. Sigue estos pasos para quitar los recursos restantes.

  1. Configura las siguientes variables del entorno:

    export PROJECT_ID=FLEET_HOST_PROJECT_ID
    export REGION=REGION
    export CLUSTER_NAME=USER_CLUSTER_NAME
    

    Reemplaza lo siguiente:

    • FLEET_HOST_PROJECT_ID: El ID del proyecto en el que se creó el clúster de usuario, que también es el proyecto host de la flota.

    • REGION: Es la región del clúster. La región se muestra en la consola en el panel Detalles del clúster en el campo Ubicación.

    • USER_CLUSTER_NAME: Es el nombre del clúster.

  2. Si se borró el grupo de nodos del clúster de usuario, el clúster aún se registra con una flota. Borra la membresía de la flota del clúster de usuario mediante la ejecución del siguiente comando:

    gcloud container fleet memberships delete USER_CLUSTER_NAME
    

    Si se borró el clúster de administrador, aún se registra con una flota. Borra la membresía de la flota del clúster de administrador mediante la ejecución del siguiente comando:

    gcloud container fleet memberships delete ADMIN_CLUSTER_NAME
    

    Consulta gcloud command reference para obtener más información.

  3. Borra los metadatos de la API de Anthos On-Prem:

    curl -X DELETE "https://gkeonprem.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/vmwareClusters/${CLUSTER_NAME}:unenroll?force=true&allow_missing=true" \
    -H "Content-Type: application/json" \
    -H "X-GFE-SSL: yes" \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"