Supprimer un cluster d'utilisateur

Cette page explique comment supprimer un cluster d'utilisateur GKE sur VMware. La suppression du cluster d'utilisateur annule l'enregistrement du cluster dans le parc, et supprime les charges de travail, les pools de nœuds, les nœuds du plan de contrôle et les ressources correspondantes, telles que les VM, les partitions F5 et les disques de données.

Choisir un outil pour supprimer un cluster

La procédure de suppression d'un cluster d'utilisateur varie selon que le cluster est enregistré dans l'API GKE On-Prem ou non. Un cluster d'utilisateur est enregistré dans l'API GKE On-Prem si l'une des conditions suivantes est remplie:

  • Le cluster a été créé à l'aide de la console Google Cloud, de la Google Cloud CLI (gcloud CLI) ou de Terraform, qui enregistre automatiquement le cluster dans l'API GKE On-Prem. Collectivement, ces applications standards sont appelées "clients API GKE On-Prem".

  • Le cluster a été créé à l'aide de gkectl, mais il a été enregistré dans l'API GKE On-Prem.

Si le cluster est enregistré dans l'API GKE On-Prem, utilisez un client API GKE On-Prem pour supprimer le cluster. Si le cluster n'est pas enregistré dans l'API GKE On-Prem, supprimez-le à l'aide de gkectl sur le poste de travail administrateur.

Pour rechercher tous les clusters d'utilisateur inscrits à l'API GKE On-Prem dans un projet spécifique, exécutez la commande suivante:

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

Lorsque vous définissez --location=-, cela signifie que tous les clusters de toutes les régions sont répertoriés. Si vous devez limiter la liste, vous pouvez définir --location sur une région spécifique.

Si le cluster est répertorié, il est enregistré dans l'API GKE On-Prem. Si vous n'êtes pas propriétaire du projet, vous devez au minimum disposer du rôle Identity and Access Management roles/gkeonprem.admin sur le projet pour supprimer les clusters enregistrés. Pour en savoir plus sur les autorisations incluses dans ce rôle, consultez la page Rôles de l'API GKE On-Prem dans la documentation IAM.

Supprimer des charges de travail avec état

Avant de supprimer votre cluster, supprimez vos charges de travail avec état, vos PVC et vos PV en exécutant kubectl delete.

Supprimer un cluster d'utilisateur

gkectl

Vous pouvez utiliser gkectl pour supprimer des clusters qui ne sont pas enregistrés dans l'API GKE On-Prem. Si les règles de proxy et de pare-feu de votre organisation autorisent le trafic à atteindre gkeonprem.googleapis.com et gkeonprem.mtls.googleapis.com (noms de service de l'API GKE On-Prem), gkectl pourra supprimer les clusters enregistrés.

Exécutez la commande suivante sur le poste de travail administrateur pour supprimer le cluster:

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

Où :

  • ADMIN_CLUSTER_KUBECONFIG est le chemin d'accès au fichier kubeconfig du cluster d'administrateur.
  • CLUSTER_NAME est le nom du cluster utilisateur que vous souhaitez supprimer.

Si la suppression échoue et un message semblable à celui-ci s'affiche:

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

Cela signifie que le cluster est enregistré, mais que gkectl n'a pas pu accéder à l'API GKE On-Prem. Dans ce cas, le plus simple est d'utiliser un client API GKE On-Prem pour supprimer le cluster.

Si la suppression du cluster d'utilisateur échoue à mi-chemin, vous pouvez exécuter gkectl avec l'indicateur --force pour ignorer l'erreur à mi-chemin et poursuivre la suppression.

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

Si vous utilisez l'équilibreur de charge groupé Seesaw, supprimez-le.

Console

Si le cluster d'utilisateur est géré par l'API GKE On-Prem, procédez comme suit pour le supprimer:

  1. Dans la console, accédez à la page de présentation des clusters Google Kubernetes Engine.

    Accéder aux clusters GKE

  2. Sélectionnez le projet Google Cloud dans lequel se trouve le cluster d'utilisateur.

  3. Dans la liste des clusters, localisez celui que vous souhaitez supprimer. Si le type est externe, cela signifie que le cluster a été créé à l'aide de gkectl et qu'il n'était pas enregistré dans l'API GKE On-Prem. Dans ce cas, suivez les étapes décrites dans l'onglet gkectl pour supprimer le cluster.

    Si l'icône dans la colonne État indique un problème, suivez les étapes décrites dans l'onglet gcloud CLI pour supprimer le cluster. Vous devez ajouter l'option --ignore-errors à la commande de suppression.

  4. Cliquez sur le nom du cluster que vous souhaitez supprimer.

  5. Dans le panneau Details (Détails), en haut de la fenêtre, cliquez sur Delete (Supprimer).

  6. Lorsque vous êtes invité à confirmer votre choix, saisissez le nom du cluster, puis cliquez sur Supprimer.

gcloud CLI

Si le cluster d'utilisateur est géré par l'API GKE On-Prem, procédez comme suit sur un ordinateur sur lequel la gcloud CLI est installée:

  1. Mettez à jour les composants :

    gcloud components update
    
  2. Obtenez une liste de clusters pour vous assurer de spécifier le nom de cluster approprié dans la commande de suppression:

    gcloud container vmware clusters list \
      --project=FLEET_HOST_PROJECT_ID \
      --location=LOCATION
    

    Remplacez les éléments suivants :

    • FLEET_HOST_PROJECT_ID: ID du projet dans lequel le cluster est enregistré.

    • LOCATION: emplacement Google Cloud associé au cluster d'utilisateur.

    Le résultat ressemble à ce qui suit :

    NAME                      LOCATION    VERSION          ADMIN_CLUSTER.            STATE
    example-user-cluster-1a   us-west1    1.29.0-gke.1456    example-admin-cluster-1   RUNNING
    
  3. Exécutez la commande suivante pour supprimer le cluster:

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

    Remplacez les éléments suivants :

    • USER_CLUSTER_NAME: nom du cluster d'utilisateur à supprimer.

    • FLEET_HOST_PROJECT_ID: ID du projet dans lequel le cluster est enregistré.

    • LOCATION: emplacement Google Cloud associé au cluster d'utilisateur.

    L'option --force vous permet de supprimer un cluster contenant des pools de nœuds. Sans l'option --force, vous devez d'abord supprimer les pools de nœuds, puis supprimer le cluster.

    L'option --allow-missing est un indicateur d'API Google standard. Lorsque vous incluez cette option, la commande renvoie un résultat positif si le cluster est introuvable.

    Si la commande renvoie une erreur contenant le texte failed connecting to the cluster's control plane, cela indique des problèmes de connectivité avec le cluster d'administrateur, Connect Agent ou l'environnement sur site.

    • Si vous pensez que le problème de connectivité est temporaire, par exemple en raison de problèmes de réseau, attendez et relancez la commande.

    • Si la nouvelle tentative de la commande échoue toujours, consultez la section Collecter les journaux de l'agent Connect pour résoudre les problèmes liés à l'agent Connect.

    • Si vous savez que le cluster d'administrateur a été supprimé, que les VM du cluster d'administrateur ou d'utilisateur ont été arrêtées ou qu'elles sont inaccessibles pour une raison quelconque, incluez l'option --ignore-errors et relancez la commande.

Pour en savoir plus sur les autres indicateurs, consultez la documentation de référence de gcloud CLI.

Effectuer un nettoyage des ressources

Si des problèmes sont survenus lors de la suppression du cluster, il se peut que certaines ressources F5 ou vSphere soient restantes. Les sections suivantes expliquent comment nettoyer les ressources restantes.

Nettoyer des VM d'un cluster d'utilisateur dans vSphere

Pour vérifier que les VM du cluster d'utilisateur sont supprimées, procédez comme suit :

  1. Dans le menu Navigator (Navigateur) situé à gauche du client Web vSphere, cliquez sur le menu Hôtes et clusters (Hosts and Clusters).

  2. Recherchez le pool de ressources pour votre cluster d'administrateur. Il s'agit de la valeur de vCenter.resourcePool dans votre fichier de configuration de cluster d'administrateur.

  3. Sous le pool de ressources, localisez les VM précédées du nom de votre cluster d'utilisateur. Il s'agit des nœuds du plan de contrôle de votre cluster d'utilisateur. Vous en verrez une ou trois selon que votre cluster d'utilisateur dispose d'un plan de contrôle à haute disponibilité ou non.

  4. Recherchez le pool de ressources pour votre cluster d'utilisateur. Il s'agit de la valeur de vCenter.resourcePool dans le fichier de configuration de votre cluster d'utilisateur. Si le fichier de configuration du cluster d'utilisateur ne spécifie pas de pool de ressources, il est hérité du cluster d'administrateur.

  5. Sous le pool de ressources, localisez les VM précédées du nom d'un pool de nœuds dans votre cluster d'utilisateur. Il s'agit des nœuds de calcul de votre cluster d'utilisateur.

  6. Pour chaque nœud du plan de contrôle et chaque nœud de calcul :

    1. Dans le client Web vSphere, effectuez un clic droit sur la VM, puis sélectionnez Alimentation > Mettre hors tension.

    2. Une fois la VM éteinte, faites un clic droit sur la VM, puis sélectionnez Supprimer du disque.

Nettoyer la partition F5 d'un cluster d'utilisateur

S'il reste des entrées dans la partition du cluster d'utilisateur, procédez comme suit :

  1. Dans l'angle supérieur droit de la console F5 BIG-IP, basculez vers la partition du cluster d'utilisateur que vous souhaitez nettoyer.
  2. Sélectionnez Local Traffic (Trafic local), puis Virtual Servers > Virtual Server List (Serveurs virtuels > Liste des serveurs virtuels).
  3. Dans le menu Virtual Servers (Serveurs virtuels), supprimez toutes les adresses IP virtuelles.
  4. Sélectionnez Pools, puis supprimez tous les pools.
  5. Sélectionnez Nodes (Nœuds), puis supprimez tous les nœuds.

Une fois terminé

Une fois le cluster supprimé, vous pouvez supprimer le fichier kubeconfig du cluster d'utilisateur.