Eliminazione di un cluster utente

Questa pagina descrive come eliminare un cluster utente Google Distributed Cloud. L'eliminazione del cluster utente annulla la registrazione del cluster dal parco risorse ed elimina i workload, i node pool, i nodi del control plane e le risorse corrispondenti, come VM, partizioni F5 e dischi di dati.

Scegli uno strumento per eliminare un cluster

Se hai creato il cluster con enableAdvancedCluster impostato su true (obbligatorio per configurare i domini di topologia), devi utilizzare gkectl per eliminare il cluster.

In caso contrario, la modalità di eliminazione di un cluster utente dipende dal fatto che il cluster sia registrato nell'API GKE On-Prem. Un cluster utente è registrato nell'API GKE On-Prem se si verifica una delle seguenti condizioni:

  • Il cluster è stato creato utilizzando la console Google Cloud , Google Cloud CLI (gcloud CLI) o Terraform, che registra automaticamente il cluster nell'API GKE On-Prem. Nel complesso, questi strumenti sono denominati client API GKE On-Prem.

  • Il cluster è stato creato utilizzando gkectl, ma è stato registrato nell'API GKE On-Prem.

Se il cluster è registrato nell'API GKE On-Prem, utilizza un client API GKE On-Prem per eliminare il cluster. Se il cluster non è registrato nell'API GKE On-Prem, utilizza gkectl sulla workstation di amministrazione per eliminarlo.

Per trovare tutti i cluster utente registrati nell'API GKE On-Prem in un progetto specifico, esegui questo comando:

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

L'output è simile al seguente:

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

Quando imposti --location=-, significa elencare tutti i cluster in tutte le regioni. Se devi ridurre l'ambito dell'elenco, puoi impostare --location su una regione specifica.

Se il cluster è elencato, è registrato nell'API GKE On-Prem. Se non sei il proprietario di un progetto, devi disporre almeno del ruolo Identity and Access Management roles/gkeonprem.admin nel progetto per eliminare i cluster registrati. Per informazioni dettagliate sulle autorizzazioni incluse in questo ruolo, consulta Ruoli API GKE On-Prem nella documentazione IAM.

Se utilizzi gkectl per eliminare un cluster, assicurati che la tua workstation amministrativa disponga della versione necessaria di gkectl. In genere, utilizzi la stessa versione di gkectl del cluster che stai eliminando. Le seguenti regole di versione vengono applicate durante l'eliminazione:

  • La versione secondaria di gkectl non può essere inferiore alla versione secondaria del cluster. Ad esempio, l'eliminazione di un cluster 1.30 utilizzando la versione 1.29 di gkectl non è consentita. Le versioni patch non sono importanti. Ad esempio, puoi utilizzare la versione 1.29.0-gke.1456 di gkectl per eliminare un cluster con una versione patch superiore, ad esempio 1.29.1000-gke.94.

  • La versione secondaria di gkectl non può essere superiore di più di due versioni secondarie rispetto alla versione del cluster. Ad esempio, se stai eliminando un cluster 1.28, la versione gkectl può essere 1.29 o 1.30. Tuttavia, non puoi utilizzare la versione 1.31 perché è tre versioni secondarie successive alla versione del cluster.gkectl

Se necessario, consulta la sezione Scaricare gkectl per ottenere una versione supportata di gkectl.

Elimina i workload stateful

Prima di eliminare il cluster, elimina i carichi di lavoro stateful, i PVC e i PV eseguendo kubectl delete.

Eliminazione di un cluster utente

gkectl

Puoi utilizzare gkectl per eliminare i cluster non registrati nell'API GKE On-Prem. Se le regole proxy e firewall della tua organizzazione consentono al traffico di raggiungere gkeonprem.googleapis.com e gkeonprem.mtls.googleapis.com (i nomi dei servizi per l'API GKE On-Prem), gkectl potrà eliminare i cluster registrati.

Esegui questo comando sulla workstation di amministrazione per eliminare il cluster:

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

dove

  • ADMIN_CLUSTER_KUBECONFIG è il percorso del file kubeconfig del cluster di amministrazione.
  • CLUSTER_NAME è il nome del cluster di utenti che vuoi eliminare.

Se l'eliminazione non riesce e viene visualizzato un messaggio simile al seguente:

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

Ciò significa che il cluster è registrato, ma gkectl non è riuscito a raggiungere l'API GKE On-Prem. In questo caso, la cosa più semplice da fare è utilizzare un client API GKE On-Prem per eliminare il cluster.

Se l'eliminazione del cluster utente non riesce a metà, puoi eseguire gkectl con il flag --force per ignorare l'errore a metà e continuare l'eliminazione.

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

Se hai eliminato un cluster che utilizzava il bilanciatore del carico di Seesaw, elimina le VM di Seesaw. Puoi farlo eliminando le VM Seesaw nell'interfaccia utente di vSphere.

Console

Se il cluster utente è gestito dall'API GKE On-Prem, segui questi passaggi per eliminare il cluster:

  1. Nella console, vai alla pagina Panoramica dei cluster Google Kubernetes Engine.

    Vai ai cluster GKE

  2. Seleziona il Google Cloud progetto in cui si trova il cluster utente.

  3. Nell'elenco dei cluster, individua quello che vuoi eliminare. Se il Tipo è esterno, significa che il cluster è stato creato utilizzando gkectl e non è stato registrato nell'API GKE On-Prem. In questo caso, segui i passaggi nella scheda gkectl per eliminare il cluster.

    Se l'icona nella colonna Stato indica un problema, segui i passaggi nella scheda gcloud CLI per eliminare il cluster. Devi aggiungere il flag --ignore-errors al comando di eliminazione.

  4. Fai clic sul nome del cluster che vuoi eliminare.

  5. Nel riquadro Dettagli, vicino alla parte superiore della finestra, fai clic su Elimina.

  6. Quando ti viene chiesto di confermare, inserisci il nome del cluster e fai clic su Rimuovi.

Interfaccia a riga di comando gcloud

Se il cluster utente è gestito dall'API GKE On-Prem, esegui le seguenti operazioni su un computer su cui è installata la gcloud CLI:

  1. Aggiorna i componenti:

    gcloud components update
    
  2. Utilizza questo comando per eliminare il cluster:

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

    Sostituisci quanto segue:

    • USER_CLUSTER_NAME: il nome del cluster utente da eliminare.

    • PROJECT_ID: l'ID del progetto a cui è registrato il cluster.

    • LOCATION: la Google Cloud posizione associata al cluster utente.

    Il flag --force consente di eliminare un cluster con node pool. Senza il flag --force, devi prima eliminare i pool di nodi e poi eliminare il cluster.

    Il flag --allow-missing è un flag API di Google standard. Se includi questo flag, il comando restituisce un esito positivo se il cluster non viene trovato.

    Se il comando restituisce un errore che contiene il testo failed connecting to the cluster's control plane, questo indica problemi di connettività con il cluster di amministrazione, l'agente Connect o l'ambiente on-premise.

    • Se ritieni che il problema di connettività sia temporaneo, ad esempio a causa di problemi di rete, attendi e riprova a eseguire il comando.

    • Se il tentativo di ripetere il comando continua a non andare a buon fine, consulta la sezione Raccolta dei log di Connect Agent per risolvere i problemi relativi a Connect Agent.

    • Se sai che il cluster di amministrazione è stato eliminato o se le VM per il cluster di amministrazione o utente sono state arrestate o sono altrimenti inaccessibili, includi il flag --ignore-errors e riprova il comando.

Per informazioni su altri flag, consulta il riferimento di gcloud CLI.

Esegui la pulizia delle risorse

Se si sono verificati problemi durante l'eliminazione del cluster, alcune risorse F5 o vSphere potrebbero essere rimaste. Le sezioni seguenti spiegano come eseguire la pulizia di queste risorse rimanenti.

Pulizia delle VM di un cluster utente in vSphere

Per verificare che le VM del cluster utente siano state eliminate, esegui i seguenti passaggi:

  1. Nel menu Navigator a sinistra di vSphere Web Client, fai clic sul menu Host e cluster.

  2. Trova il pool di risorse per il tuo cluster di amministrazione. Questo è il valore di vCenter.resourcePool nel file di configurazione del cluster di amministrazione.

  3. Nel pool di risorse, individua le VM con il prefisso del nome del tuo cluster utente. Questi sono i nodi del control plane per il cluster utente. A seconda che il cluster utente abbia un control plane ad alta disponibilità, ce ne saranno uno o tre.

  4. Trova il pool di risorse per il tuo cluster utente. Questo è il valore di vCenter.resourcePool nel file di configurazione del cluster utente. Se il file di configurazione del cluster utente non specifica un pool di risorse, questo viene ereditato dal cluster di amministrazione.

  5. Nel pool di risorse, individua le VM con il prefisso del nome di un pool di nodi nel tuo cluster utente. Questi sono i nodi worker nel tuo cluster utente.

  6. Per ogni nodo del control plane e ogni nodo worker:

    1. In vSphere Web Client, fai clic con il tasto destro del mouse sulla VM e seleziona Alimentazione > Spegni.

    2. Dopo lo spegnimento della VM, fai clic con il tasto destro del mouse sulla VM e seleziona Elimina dal disco.

Pulire la partizione F5 di un cluster utente

Se sono rimaste voci nella partizione del cluster di utenti, segui questi passaggi:

  1. Dalla console F5 BIG-IP, nell'angolo in alto a destra, passa alla partizione del cluster di utenti che vuoi pulire.
  2. Seleziona Traffico locale > Server virtuali > Elenco server virtuali.
  3. Nel menu Server virtuali, rimuovi tutti gli IP virtuali.
  4. Seleziona Pool, poi elimina tutti i pool.
  5. Seleziona Nodi, quindi elimina tutti i nodi.

Al termine

Dopo aver eliminato il cluster, puoi eliminare il file kubeconfig del cluster utente.