Eliminar un clúster de usuarios

En esta página se describe cómo eliminar un clúster de usuario de Google Distributed Cloud. Al eliminar un clúster de usuario, se da de baja el clúster de la flota y se eliminan las cargas de trabajo, los grupos de nodos, los nodos del plano de control y los recursos correspondientes, como las VMs, las particiones F5 y los discos de datos.

Elige una herramienta para eliminar un clúster

Si has creado el clúster con enableAdvancedCluster configurado como true (que es obligatorio para configurar dominios de topología), debes usar gkectl para eliminar el clúster.

De lo contrario, la forma de eliminar un clúster de usuarios depende de si el clúster está registrado en la API de GKE On-Prem. Un clúster de usuario se registra en la API de GKE On-Prem si se cumple alguna de las siguientes condiciones:

  • El clúster se creó mediante la Google Cloud consola, la CLI de Google Cloud (gcloud CLI) o Terraform, lo que registra automáticamente el clúster en la API de GKE On-Prem. En conjunto, estas herramientas se denominan clientes de la API de GKE On-Prem.

  • El clúster se ha creado con gkectl, pero se ha registrado en la API de GKE On-Prem.

Si el clúster está registrado en la API de GKE On-Prem, usa un cliente de la API de GKE On-Prem para eliminarlo. Si el clúster no está registrado en la API GKE On-Prem, usa gkectl en la estación de trabajo de administrador para eliminarlo.

Para encontrar todos los clústeres de usuario registrados en la API de GKE On-Prem en un proyecto específico, ejecuta el siguiente comando:

gcloud container vmware clusters list \
    --project=PROJECT_ID \
    --location=-

El resultado debería ser similar al siguiente:

NAME                      LOCATION    VERSION             ADMIN_CLUSTER.            STATE
example-user-cluster-1a   us-west1    1.33.100-gke.89    example-admin-cluster-1   RUNNING

Si define --location=-, se mostrarán todos los clústeres de todas las regiones. Si necesitas acotar la lista, puedes definir --location en una región específica.

Si el clúster aparece en la lista, significa que está registrado en la API de GKE On-Prem. Si no eres propietario del proyecto, como mínimo, debes tener asignado el rol de Gestión de Identidades y Accesos roles/gkeonprem.admin en el proyecto para eliminar los clústeres registrados. Para obtener más información sobre los permisos incluidos en este rol, consulta Roles de la API GKE On-Prem en la documentación de gestión de identidades y accesos.

Si usas gkectl para eliminar un clúster, asegúrate de que tu estación de trabajo de administrador tenga la versión necesaria de gkectl. Normalmente, se usa la misma versión de gkectl que la del clúster que se va a eliminar. Durante la eliminación, se aplican las siguientes reglas de versiones:

  • La versión secundaria gkectl no puede ser inferior a la versión secundaria del clúster. Por ejemplo, no se permite eliminar un clúster 1.30 con la versión 1.29 de gkectl. Las versiones de parche no importan. Por ejemplo, puedes usar la versión 1.29.0-gke.1456 de gkectl para eliminar un clúster con una versión de parche superior, como 1.29.1000-gke.94.

  • La versión secundaria gkectl no puede ser más de dos versiones secundarias superior a la versión del clúster. Por ejemplo, si eliminas un clúster 1.28, la versión gkectl puede ser 1.29 o 1.30. Sin embargo, no puedes usar la versión 1.31 de gkectl porque es tres versiones secundarias superior a la versión del clúster.

Si es necesario, consulta Descargar gkectl para obtener una versión compatible de gkectl.

Eliminar cargas de trabajo con estado

Antes de eliminar el clúster, elimina las cargas de trabajo con estado, los PVCs y los PVs ejecutando kubectl delete.

Eliminar un clúster de usuarios

gkectl

Puedes usar gkectl para eliminar clústeres que no estén registrados en la API GKE On-Prem. Si las reglas de proxy y de cortafuegos de tu organización permiten que el tráfico llegue a gkeonprem.googleapis.com y gkeonprem.mtls.googleapis.com (los nombres de servicio de la API de GKE On-Prem), gkectl podrá eliminar los clústeres registrados.

Ejecuta el siguiente comando en la estación de trabajo del administrador para eliminar el clúster:

gkectl delete cluster \
  --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
  --cluster CLUSTER_NAME 

donde

  • ADMIN_CLUSTER_KUBECONFIG es la ruta al archivo kubeconfig del clúster de administrador.
  • CLUSTER_NAME es el nombre del clúster de usuarios que quieres eliminar.

Si la eliminación falla y aparece un mensaje similar al siguiente:

Exit with error:
...
failed to unenroll user cluster CLUSTER_NAME
failed to create GKE On-Prem API client

Esto significa que el clúster está registrado, pero gkectl no ha podido acceder a la API de GKE On-Prem. En este caso, lo más fácil es usar un cliente de la API de GKE On-Prem para eliminar el clúster.

Si se produce un error al eliminar el clúster de usuarios a mitad del proceso, puedes ejecutar gkectl con la marca --force para ignorar el error y continuar con la eliminación.

gkectl delete cluster \
--kubeconfig ADMIN_CLUSTER_KUBECONFIG \
--cluster CLUSTER_NAME \
--force

Si has eliminado un clúster que usaba el balanceador de carga Seesaw, elimina las VMs de Seesaw. Para ello, elimina las VMs de Seesaw en la interfaz de usuario de vSphere.

Consola

Si el clúster de usuario está gestionado por la API GKE On-Prem, sigue estos pasos para eliminar el clúster:

  1. En la consola, ve a la página Descripción general de los clústeres de Google Kubernetes Engine.

    Ir a clústeres de GKE

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

  3. En la lista de clústeres, busca el que quieras eliminar. Si el Tipo es externo, significa que el clúster se ha creado con gkectl y no se ha registrado en la API de GKE On-Prem. En ese caso, sigue los pasos de la pestaña gkectl para eliminar el clúster.

    Si el icono de la columna Estado indica que hay un problema, siga los pasos de la pestaña gcloud CLI para eliminar el clúster. Deberás añadir la marca --ignore-errors al comando de eliminación.

  4. Haga clic en el nombre del clúster que quiera eliminar.

  5. En el panel Detalles, cerca de la parte superior de la ventana, haz clic en Eliminar.

  6. Cuando se te pida que confirmes la acción, introduce el nombre del clúster y haz clic en Quitar.

CLI de gcloud

Si el clúster de usuario está gestionado por la API de GKE On-Prem, haz lo siguiente en un ordenador que tenga instalada la CLI de gcloud:

  1. Actualiza los componentes:

    gcloud components update
    
  2. Usa el siguiente comando para eliminar el clúster:

    gcloud container vmware clusters delete USER_CLUSTER_NAME \
      --project=PROJECT_ID \
      --location=LOCATION \
      --force \
      --allow-missing
    

    Haz los cambios siguientes:

    • USER_CLUSTER_NAME: nombre del clúster de usuarios que se va a eliminar.

    • PROJECT_ID: el ID del proyecto en el que está registrado el clúster.

    • LOCATION: la Google Cloud ubicación asociada al clúster de usuarios.

    La marca --force te permite eliminar un clúster que tenga grupos de nodos. Si no usas la marca --force, primero debes eliminar los grupos de nodos y, después, el clúster.

    La marca --allow-missing es una marca estándar de la API de Google. Si incluyes esta marca, el comando devolverá un mensaje de éxito si no se encuentra el clúster.

    Si el comando devuelve un error que contiene el texto failed connecting to the cluster's control plane, esto indica que hay problemas de conectividad con el clúster de administrador, el agente de conexión o el entorno local.

    • Si crees que el problema de conectividad es temporal (por ejemplo, debido a problemas de red), espera e intenta ejecutar el comando de nuevo.

    • Si al volver a intentar el comando sigue fallando, consulta la sección Recoger registros del agente de conexión para solucionar los problemas con el agente de conexión.

    • Si sabes que el clúster de administrador se ha eliminado o si las VMs del clúster de administrador o de usuario se han apagado o no se puede acceder a ellas, incluye la marca --ignore-errors y vuelve a intentar ejecutar el comando.

Para obtener información sobre otras marcas, consulta la referencia de la CLI de gcloud.

Eliminar los recursos

Si ha habido problemas al eliminar el clúster, es posible que queden algunos recursos de F5 o vSphere. En las siguientes secciones se explica cómo limpiar estos recursos restantes.

Limpiar las VMs de un clúster de usuarios en vSphere

Para verificar que las VMs del clúster de usuario se han eliminado, sigue estos pasos:

  1. En el menú Navegador de la izquierda de vSphere Web Client, haga clic en el menú Hosts and Clusters (Hosts y clústeres).

  2. Busca el grupo de recursos de tu clúster de administrador. Este es el valor de vCenter.resourcePool en el archivo de configuración del clúster de administrador.

  3. En el pool de recursos, busca las VMs que tengan el prefijo del nombre de tu clúster de usuario. Estos son los nodos de plano de control de tu clúster de usuarios. Habrá uno o tres de estos elementos, en función de si tu clúster de usuarios tiene un plano de control de alta disponibilidad.

  4. Busca el grupo de recursos de tu clúster de usuarios. Este es el valor de vCenter.resourcePool en el archivo de configuración de tu clúster de usuarios. Si el archivo de configuración del clúster de usuarios no especifica ningún pool de recursos, se hereda del clúster de administradores.

  5. En el grupo de recursos, busca las VMs que tengan como prefijo el nombre de un grupo de nodos de tu clúster de usuario. Estos son los nodos de trabajo de tu clúster de usuarios.

  6. En cada nodo del plano de control y en cada nodo de trabajador:

    1. En vSphere Web Client, haga clic con el botón derecho en la máquina virtual y seleccione Encendido > Apagar.

    2. Una vez que la VM se haya apagado, haz clic con el botón derecho en ella y selecciona Eliminar del disco.

Limpiar la partición F5 de un clúster de usuarios

Si quedan entradas en la partición del clúster de usuarios, sigue estos pasos:

  1. En la consola de F5 BIG-IP, en la esquina superior derecha, cambia a la partición del clúster de usuarios que quieras limpiar.
  2. Selecciona Local Traffic (Tráfico local) > Virtual Servers (Servidores virtuales) > Virtual Server List (Lista de servidores virtuales).
  3. En el menú Servidores virtuales, elimina todas las IPs virtuales.
  4. Selecciona Grupos y, a continuación, elimina todos los grupos.
  5. Selecciona Nodos y, a continuación, elimina todos los nodos.

Cuando hayas terminado

Una vez eliminado el clúster, puedes eliminar el archivo kubeconfig del clúster de usuarios.