Supprimer un cluster d'utilisateur

Pour supprimer un cluster d'utilisateur, vous devez disposer du rôle Administrateur de cluster d'utilisateur (rôle user-cluster-admin).

Pour supprimer un cluster d'utilisateur, procédez comme suit :

Console

  1. Dans le menu de navigation, sélectionnez Clusters.

  2. Dans la liste des clusters, cliquez sur le cluster que vous souhaitez supprimer.

  3. Cliquez sur Supprimer Supprimer le cluster.

  4. Lorsque vous y êtes invité, saisissez la phrase de confirmation fournie, puis cliquez sur Supprimer pour supprimer le cluster.

kubectl

  1. Mettez en veille la réconciliation pour la ressource personnalisée Cluster GDCH du cluster d'utilisateur :

    kubectl annotate clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        cluster.gdc.goog/paused=true --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    
  2. Déclenchez la suppression de la ressource personnalisée Cluster GDCH du cluster d'utilisateur :

    kubectl delete clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG --wait=false
    
  3. Lancez la suppression de toutes les ressources personnalisées NodePoolClaim dans le cluster d'utilisateur :

    kubectl delete --all nodepoolclaims -n NAMESPACE \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG --wait=false
    

    Cette commande lance la suppression en arrière-plan de toutes les revendications de pool de nœuds dans le cluster d'utilisateur.

  4. Supprimez la ressource personnalisée Cluster du cluster d'utilisateur :

    kubectl delete clusters USER_CLUSTER_NAME \
        -n NAMESPACE --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    Cette commande peut prendre plusieurs minutes en fonction du nombre de pools de nœuds à supprimer dans le cluster d'utilisateur.

  5. Supprimez la ressource personnalisée de l'espace de noms :

    kubectl --kubeconfig=ADMIN_CLUSTER_KUBECONFIG delete namespace NAMESPACE
    
  6. Supprimez le secret Istio dans l'espace de noms istio-system :

    kubectl delete secrets istio-remote-secret-USER_CLUSTER_NAME -n istio-system \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    Dans certains cas, le nom de votre secret Istio peut être différent. Pour lister votre secret Istio et confirmer son nom, exécutez la commande suivante :

    kubectl get secrets -n istio-system \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    
  7. Supprimez les revendications de pool d'adresses portant le même nom que le cluster utilisateur cible, mais situées dans des espaces de noms différents :

    for j in $(kubectl get addresspoolclaims -A -o custom-columns=:.metadata.namespace --kubeconfig=ADMIN_CLUSTER_KUBECONFIG);
    do
    kubectl delete addresspoolclaims USER_CLUSTER_NAME -n $j --kubeconfig=ADMIN_CLUSTER_KUBECONFIG;
    done
    

    Après l'exécution de cette commande, vous devriez voir des erreurs semblables à celles-ci :

    Error from server (NotFound): addresspoolclaims.system.private.gdc.goog "USER_CLUSTER_NAME" not found
    

    Ignorez ces erreurs. La commande tente de trouver toutes les revendications de pool d'adresses avec le nom de cluster spécifié dans tous les espaces de noms. Certains espaces de noms ne contiennent pas de revendications de pool d'adresses avec le nom, ce qui entraîne une erreur.

  8. Vérifiez que vous avez supprimé l'espace de noms du cluster d'utilisateur :

    kubectl get namespaces NAMESPACE \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    Si l'espace de noms est supprimé, le résultat affiche une erreur indiquant que l'espace de noms est introuvable. Exemple :

    Error from server (NotFound): namespaces NAMESPACE not found
    
  9. Réactivez la réconciliation de la ressource personnalisée Cluster GDCH du cluster d'utilisateur :

    kubectl annotate clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        cluster.gdc.goog/paused- --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

API

  • Pour supprimer un cluster d'utilisateur, supprimez la ressource personnalisée Cluster de l'instance GDC :

    kubectl delete clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    Remplacez les éléments suivants :

    • USER_CLUSTER_NAME : nom du cluster d'utilisateurs à supprimer.
    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur.