I cluster collegati a GKE consentono di visualizzare i cluster Kubernetes esistenti nella console Google Cloud insieme ai cluster GKE e di attivare diverse funzionalità di GKE Enterprise, tra cui il controllo centralizzato della configurazione con Config Sync.
Cluster Kubernetes supportati
Puoi collegare al tuo parco qualsiasi cluster Kubernetes conforme che include nodi x86 e visualizzarlo nella console Google Cloud con i tuoi cluster GKE.
I seguenti tipi e versioni di cluster sono stati convalidati da Google. Per informazioni sulle funzionalità di GKE Enterprise supportate sui cluster collegati, consulta Componenti di Anthos e supporto multi-cloud.
Tipi di cluster collegati | Versioni di Kubernetes |
---|---|
Red Hat OpenShift Kubernetes Engine (OKE) 4.9, 4.10 | 1.23, 1.24 |
Red Hat OpenShift Container Platform (OCP) 4.9, 4.10 | 1.23, 1.24 |
Rancher Kubernetes Engine (RKE) 1.3.8 | 1.23, 1.24 |
KIND 0,12 | 1.23, 1.24 |
K3s 1.20 | 1,20 |
K3d 4.4.3 | 1,20 |
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Anthos API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Anthos API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Controlla i prerequisiti per la registrazione del parco risorse per assicurarti di disporre delle autorizzazioni pertinenti e delle API abilitate per registrare un cluster.
- Consulta la guida Prima di iniziare per i requisiti specifici per il collegamento di cluster esterni a Google Cloud, inclusi eventuali passaggi di configurazione speciali necessari per il tipo di cluster.
- MEMBERSHIP_NAME: il nome dell'appartenenza che scegli e che viene utilizzato per rappresentare in modo univoco il cluster registrato nel parco risorse.
- SERVICE_ACCOUNT_KEY_PATH: il percorso file locale del file JSON della chiave privata dell'account di servizio scaricato nell'ambito dei prerequisiti.
Questa chiave del account di servizio viene archiviata come secret denominato
creds-gcp
nello spazio dei nomigke-connect
. - KUBECONFIG_CONTEXT: il contesto del cluster da registrare
così come appare nel file kubeconfig. Puoi recuperare questo valore dalla riga di comando eseguendo
kubectl config current-context
. - KUBECONFIG_PATH: il percorso file locale in cui è archiviato il file kubeconfig contenente una voce per il cluster da registrare.
Il valore predefinito è
$KUBECONFIG
se è impostata la variabile di ambiente; altrimenti, il valore predefinito è$HOME/.kube/config
. Nella console Google Cloud , vai alla pagina Panoramica dei cluster Google Kubernetes Engine.
Fai clic su Registra cluster esistente.
Fai clic su Aggiungi cluster esterno.
Inserisci il nome del cluster che vuoi registrare nel campo Nome cluster.
(Facoltativo) Aggiungi Google Cloud etichette al cluster.
Fai clic su Genera comando di registrazione.
In Cloud Shell o ovunque tu abbia salvato le credenziali del account di servizio, modifica ed esegui il comando
gcloud
visualizzato nella pagina. Devi specificare i seguenti valori:- CLUSTER_CONTEXT è il contesto del cluster così come appare nel file kubeconfig. Puoi recuperare questo valore dalla riga di comando eseguendo
kubectl config current-context
. - KUBECONFIG_PATH è il percorso file locale in cui è archiviato il file kubeconfig. Per impostazione predefinita, questo valore è
$KUBECONFIG
se è impostata la variabile di ambiente; in caso contrario, il valore predefinito è$HOME/.kube/config
. - LOCAL_KEY_PATH è il percorso del file di chiave dell'account di servizio.
L'esecuzione di questo comando esegue il deployment dell'agente Connect nel cluster utente. Quando l'agente Connect si connette a Google Cloud e il cluster è registrato, sulla pagina viene visualizzato un messaggio di operazione riuscita.
- CLUSTER_CONTEXT è il contesto del cluster così come appare nel file kubeconfig. Puoi recuperare questo valore dalla riga di comando eseguendo
Fai clic su Imposta etichette o su Salta se non hai impostato alcuna etichetta.
Cloud Service Mesh 1.11 e versioni successive supportano Amazon EKS:
Gestione della configurazione e dei criteri:
- Configura logging e monitoraggio per i cluster collegati
- Risolvere i problemi relativi ai cluster collegati
Registra cluster collegati
Devi registrare tutti i cluster che vuoi utilizzare con GKE Enterprise nel parco risorse del tuo progetto. Un parco risorse fornisce un modo per raggruppare e normalizzare logicamente i cluster Kubernetes, facilitando l'amministrazione dell'infrastruttura. I cluster nello stesso parco risorse possono essere sfogliati e gestiti insieme nella Google Cloud console e molti componenti di GKE Enterprise e Google Cloud utilizzano concetti di parco risorse come identità e spazio dei nomi identici per semplificare l'utilizzo di più cluster. Puoi scoprire molto di più sui parchi risorse e sulle funzionalità che abilitano nella nostra guida alla gestione del parco risorse.
Hai il diritto di attivare e utilizzare le funzionalità di GKE Enterprise su questi cluster e puoi gestire alcune funzionalità di GKE Enterprise a livello di parco risorse dalla pagina delle funzionalità di GKE. Gli addebiti di GKE Enterprise si applicano solo ai cluster registrati.
Configura l'identità
Tutti i cluster collegati richiedono un'identità da utilizzare per l'agente Connect durante l'autenticazione su Google. Se il cluster soddisfa i requisiti, puoi registrarlo con Workload Identity del parco risorse abilitata per l'autenticazione. I cluster con questa funzionalità abilitata utilizzano identità di un pool di identità del workload del parco risorse a livello di parco risorse. Puoi scoprire di più su come funziona Workload Identity del parco risorse e sui vantaggi del suo utilizzo in Utilizzare Workload Identity del parco risorse.
Se non puoi utilizzare Workload Identity del parco risorse, la registrazione di un cluster collegato
richiede un Google Cloud service account per
l'autenticazione. Ti consigliamo di creare un nuovo account di servizio per ogni cluster che
vuoi collegare. Per creare un account di servizio per un cluster con i ruoli appropriati, segui le istruzioni riportate in
Creare un service account Google Cloud con gcloud
.
Dopo aver creato l'account di servizio, puoi utilizzare il file JSON con le credenziali (file della chiave) dell'account di servizio per registrare il cluster, come descritto nella sezione successiva.
Registra il cluster
Ti consigliamo di controllare lo stato di appartenenza del cluster dopo averlo registrato per assicurarti che sia connesso correttamente a Google Cloud. Se riscontri problemi con la registrazione, consulta la nostra guida per la risoluzione dei problemi.
gcloud
Esegui questo comando:
gcloud container fleet memberships register MEMBERSHIP_NAME \ --context=KUBECONFIG_CONTEXT \ --kubeconfig=KUBECONFIG_PATH \ --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH
Sostituisci quanto segue:
Registra un cluster collegato con Workload Identity del parco risorse
Per registrare un cluster collegato con Workload Identity del parco risorse abilitata, esegui il seguente comando. Per ulteriori informazioni sui tipi di cluster collegati che possono utilizzare questa funzionalità e su eventuali requisiti aggiuntivi, consulta Prerequisiti per i cluster collegati.
gcloud container fleet memberships register MEMBERSHIP_NAME \ --context=KUBECONFIG_CONTEXT \ --kubeconfig=KUBECONFIG_PATH \ --enable-workload-identity \ --has-private-issuer
Console
Generare un comando di registrazione
Puoi utilizzare la console Google Cloud per generare un comando di registrazione gcloud
per registrare il cluster (solo con un account di servizio).
Per registrare un cluster:
Opzioni di registrazione avanzate (solo riga di comando)
Scaricare il manifest dell'agente Connect
Per scaricare il manifest di installazione dell'agente Connect senza eseguire il deployment dell'agente, ad esempio se vuoi esaminare o modificare il manifest prima dell'installazione, passa il flag --manifest-output-file
al comando
gcloud container fleet memberships register
. Ad esempio:
--manifest-output-file=[MANIFEST_FILE_PATH]
dove [MANIFEST_FILE_PATH] è il percorso file locale in cui vuoi che venga archiviato il manifest di installazione di Connect Agent.
Se utilizzi questa opzione, non verrà eseguito il deployment dell'agente Connect nel cluster. Per eseguire il deployment dell'agente Connect, applica manualmente il manifest scaricato al cluster.
Utilizzo di un server proxy
Per configurare un server proxy, passa il flag --proxy
al comando
gcloud container fleet memberships register
. Ad esempio:
--proxy=[URL]
dove [URL] è l'indirizzo proxy.
Connect Agent supporta solo proxy HTTP e HTTPS basati su CONNECT e accetta indirizzi IP e nomi host. Assicurati di specificare il protocollo corrispondente al tipo di proxy nell'URL. Ad esempio, per inserire un nome host HTTPS:
--proxy=https://mycorpproxy.com:443
Se non diversamente specificato, Connect Agent utilizza la porta 3128 per il proxy.
Se il proxy richiede l'autorizzazione, assicurati di inserire le tue credenziali, ad esempio:
--proxy=http://user:[email protected]:8888
Installazione dell'agente Connect in un cluster con nodi Windows e Linux
L'agente di connessione deve essere eseguito su un nodo Linux. Se esegui l'installazione in un cluster misto con nodi Linux e Windows, puoi assicurarti che Connect Agent venga eseguito il deployment su un nodo Linux aggiungendo un selettore di nodi appropriato alla definizione di deployment.
Esegui questo comando per aggiornare il deployment con il selettore di nodi appropriato:
kubectl patch deployment \
$(kubectl get deployment -o=jsonpath='{.items[*].metadata.name}' -n gke-connect) \
-p '{"spec":{"template":{"spec":{"nodeSelector":{"kubernetes.io/os":"linux"}}}}}' -n gke-connect
Per verificare che l'aggiornamento sia andato a buon fine, esegui questo comando:
kubectl get deployment -o=jsonpath='{.items[].spec.template.spec.nodeSelector}' -n gke-connect
Il comando dovrebbe restituire:
{"kubernetes.io/os":"linux"}
Risoluzione dei problemi
Se riscontri problemi durante questa configurazione, consulta la guida alla risoluzione dei problemi per la creazione della flotta.
Abilita le funzionalità di GKE Enterprise sui cluster collegati
Dopo aver registrato i cluster, puoi abilitare le funzionalità GKE Enterprise disponibili per le tue applicazioni. Queste funzionalità sono supportate solo nei nostri tipi di cluster convalidati. Puoi visualizzare le versioni correnti delle funzionalità supportate su questi tipi in Supporto per versioni e upgrade.
Le seguenti guide mostrano come attivare le funzionalità supportate sui cluster:
Per set di documentazione completi per tutti i componenti di GKE Enterprise, inclusi tutorial, materiale di riferimento e altro ancora, consulta Componenti di GKE Enterprise.
Accedere ai cluster collegati
Dopo aver registrato un cluster collegato, questo viene visualizzato nelle pagine dei cluster GKE e Anthos in Google Cloud console. Tuttavia, per visualizzare ulteriori dettagli come nodi e carichi di lavoro, devi accedere al cluster e autenticarti. Per accedere ai cluster collegati dalla Google Cloud console, segui le istruzioni riportate in Accesso ai cluster dalla Google Cloud console. A seconda del metodo di autenticazione scelto, tieni presente che tu o un amministratore della piattaforma potreste dover eseguire una configurazione aggiuntiva prima che tu o altri utenti possiate accedere al cluster.
Per accedere ai cluster collegati dalla riga di comando utilizzando un'identità Google Cloud , consulta Connessione ai cluster registrati con Connect Gateway.
Per autenticarti nei cluster collegati utilizzando il tuo provider di identità di terze parti esistente (solo cluster EKS su AWS, funzionalità di anteprima), consulta Configurazione di GKE Identity Service per un parco risorse e Accesso ai cluster con GKE Identity Service.