La versione precedente dei cluster collegati a GKE è nota come cluster collegati a GKE (generazione precedente). La migrazione dalla versione precedente dei cluster collegati GKE alla generazione attuale ti consente di accedere a questa funzionalità, inclusa la gestione del ciclo di vita e la registrazione del parco risorse. La migrazione è un'operazione unidirezionale: una volta eseguita la migrazione alla generazione attuale dei cluster collegati a GKE, non è possibile tornare ai cluster collegati a GKE (generazione precedente).
Criteri per la numerazione delle versioni
Questi documenti fanno riferimento alla versione dei cluster collegati a GKE come alla versione della piattaforma per distinguerla dalla versione Kubernetes. I cluster collegati a GKE utilizzano la stessa convention di numerazione delle versioni di GKE, ad esempio 1.21.5-gke.1. Quando colleghi o aggiorni il cluster, devi scegliere una versione della piattaforma la cui versione secondaria sia uguale o un livello inferiore alla versione Kubernetes del cluster. Ad esempio, puoi collegare un cluster che esegue Kubernetes 1.22.* con la versione della piattaforma dei cluster collegati GKE 1.21.* o 1.22.*.
In questo modo puoi eseguire l'upgrade del cluster alla versione secondaria successiva prima di eseguire l'upgrade dei cluster collegati GKE.
Assicurati che Workload Identity sia attivato
I cluster esistenti dei cluster collegati a GKE (generazione precedente) devono avere Workload Identity abilitato prima di eseguire la migrazione alla generazione attuale dei cluster collegati a GKE.
Per determinare se WI è abilitato, esegui il seguente comando e controlla l'output per eventuali campi Workload Identity:
gcloud container hub memberships describe MEMBERSHIP_NAME
Se Workload Identity non è abilitato, l'abbonamento deve essere aggiornato per attivarlo.
Recupera l'URL dell'emittente OIDC del cluster con il seguente comando:
aws eks describe-cluster \ --region AWS_REGION \ --name CLUSTER_NAME \ --query "cluster.identity.oidc.issuer" \ --output text
L'output di questo comando sarà l'URL dell'emittente OIDC. Salva questo valore per utilizzarlo in un secondo momento.
Aggiorna l'abbonamento:
gcloud container fleet memberships register MEMBERSHIP_NAME \ --context=KUBECONFIG_CONTEXT \ --kubeconfig=KUBECONFIG_PATH \ --enable-workload-identity \ --public-issuer-url=OIDC_URL
Sostituisci:
- MEMBERSHIP_NAME: il nome dell'appartenenza del cluster
- KUBECONFIG_CONTEXT: il contesto in kubeconfig per accedere al cluster EKS
- KUBECONFIG_PATH: percorso del file kubeconfig
- OIDC_URL: l'URL OIDC recuperato in precedenza
Esegui la migrazione del cluster
Per eseguire la migrazione del cluster dai cluster collegati a GKE (generazione precedente) ai cluster collegati a GKE:
Estrai il contesto kubeconfig del cluster e memorizzalo nella variabile di ambiente KUBECONFIG_CONTEXT:
KUBECONFIG_CONTEXT=$(kubectl config current-context)
Esegui il seguente comando per eseguire la migrazione del cluster alla generazione corrente di cluster collegati GKE. Questo comando estrae i dettagli pertinenti della configurazione del cluster, lo registra in Google Fleet Management e installa o esegue l'upgrade del software necessario, ad esempio l'agente di ciclo di vita, sul cluster.
gcloud container attached clusters import \ --location=GOOGLE_CLOUD_REGION \ --fleet-membership=FLEET_MEMBERSHIP \ --platform-version=PLATFORM_VERSION \ --distribution=CLUSTER_DISTRIBUTION \ --context=KUBECONFIG_CONTEXT \ [--kubeconfig=KUBECONFIG_PATH]
Sostituisci:
- GOOGLE_CLOUD_REGION: la Google Cloud posizione da cui viene amministrato il cluster
- FLEET_MEMBERSHIP: il designatore dell'appartenenza completo del tuo cluster registrato (vedi di seguito)
- PLATFORM_VERSION: la versione dei cluster collegati a GKE a cui vuoi eseguire la migrazione (ad es. v1.22.0-gke.1)
- CLUSTER_DISTRIBUTION: il tipo di cluster:
eks
per Elastic Kubernetes Service di AWS,aks
per Azure Kubernetes Service ogeneric
per qualsiasi altra distribuzione - KUBECONFIG_CONTEXT: il nome del contesto in
kubeconfig
per connetterti al cluster - KUBECONFIG_PATH: la posizione del file
kubeconfig
. Se non specificato, il valore predefinito è~/.kube/config
L'indicatore di appartenenza è una stringa che identifica in modo univoco il cluster collegato e ha il formato
projects/PROJECT_NUMBER/locations/global/memberships/MEMBERSHIP_ID
, dovePROJECT_NUMBER è il numero del progetto host del parco risorse. Devi specificare lo stesso numero di progetto a cui appartiene attualmente il tuo cluster
MEMBERSHIP_ID: deve essere l'ID appartenenza al parco risorse del tuo cluster esistente. I cluster collegati a GKE utilizzeranno questo valore come nome del cluster.