La versione precedente dei cluster collegati a GKE è nota come cluster collegati a GKE (generazione precedente). La migrazione dalla versione precedente dei cluster GKE collegati 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 di cluster GKE allegati, non è possibile tornare ai cluster GKE allegati (generazione precedente).
Criteri di numerazione delle versioni
Questi documenti fanno riferimento alla versione dei cluster collegati a GKE come versione della piattaforma, per distinguerla dalla versione di Kubernetes. I cluster collegati a GKE utilizzano la stessa convenzione 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 rispetto alla versione di Kubernetes del cluster. Ad esempio, puoi collegare un cluster che esegue Kubernetes v1.22.* con la versione della piattaforma dei cluster collegati a 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 GKE allegati.
Assicurati che Workload Identity sia abilitato
I cluster esistenti dei cluster collegati a GKE (generazione precedente) devono avere Workload Identity abilitato prima di essere migrati alla generazione attuale di cluster collegati a GKE.
Per determinare se WI è abilitato, esegui il seguente comando e controlla l'output per qualsiasi campo Workload Identity:
gcloud container hub memberships describe MEMBERSHIP_NAME
Se Workload Identity non è abilitato, l'appartenenza deve essere aggiornata per abilitarlo.
Il comando per aggiornare l'appartenenza del cluster varia leggermente a seconda che il cluster abbia un emittente OIDC pubblico o privato. Scegli la scheda che si applica al tuo cluster:Emittente OIDC privato
gcloud container hub memberships register MEMBERSHIP_NAME \
--context=KUBECONFIG_CONTEXT \
--kubeconfig=KUBECONFIG_PATH \
--enable-workload-identity \
--has-private-issuer
Sostituisci:
- MEMBERSHIP_NAME: il nome del membro del cluster
- KUBECONFIG_CONTEXT: il contesto nel file kubeconfig per accedere al cluster AKS
- KUBECONFIG_PATH: il percorso del file kubeconfig
Emittente OIDC pubblico
- Recupera l'URL emittente OIDC del cluster. Le istruzioni specifiche variano in base alla distribuzione.
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 del membro del cluster
- KUBECONFIG_CONTEXT: il contesto nel file kubeconfig per accedere al cluster AKS
- KUBECONFIG_PATH: il percorso del file kubeconfig
- OIDC_URL: l'URL OIDC recuperato in precedenza
Eseguire 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 archivialo nella variabile di ambiente KUBECONFIG_CONTEXT:
KUBECONFIG_CONTEXT=$(kubectl config current-context)
Esegui questo comando per eseguire la migrazione del cluster alla generazione attuale dei cluster GKE collegati. Questo comando estrae i dettagli pertinenti della configurazione del cluster, registra il cluster con Google Fleet Management e installa o esegue l'upgrade di qualsiasi software necessario, ad esempio l'agente del 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: l'identificatore di appartenenza completo del cluster registrato (vedi sotto)
- PLATFORM_VERSION: la versione di GKE attached clusters a cui vuoi eseguire la migrazione (ad esempio: 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 nel tuo
kubeconfig
per connetterti al cluster - KUBECONFIG_PATH: la posizione del file
kubeconfig
. Se non specificato, il valore predefinito è~/.kube/config
Il designatore 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 cluster
MEMBERSHIP_ID: deve essere l'ID dell'appartenenza al parco del cluster esistente. I cluster collegati a GKE utilizzeranno questo valore come nome del cluster.