I cluster collegati a GKE ti consentono di visualizzare i tuoi cluster Kubernetes esistenti nella Google Cloud console insieme ai tuoi cluster GKE e di attivare su di essi 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 nel parco risorse e visualizzarlo nella Google Cloud console 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 nei 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 l'attacco di cluster esterni 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 dell'account di servizio viene memorizzata 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.
Per impostazione predefinita, questo valore è
$KUBECONFIG
se la variabile di ambiente è impostata, altrimenti è$HOME/.kube/config
. Nella Google Cloud console, 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 da 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 dell'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 la variabile di ambiente è impostata, altrimenti è$HOME/.kube/config
. - LOCAL_KEY_PATH è il percorso del file della chiave dell'account di servizio.
L'esecuzione di questo comando esegue il deployment dell'agente Connect nel cluster utente. Quando Connect Agent si connette a Google Cloud e il cluster è registrato, nella 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 etichette.
Cloud Service Mesh 1.11 e versioni successive supportano Amazon EKS:
Configurazione e gestione dei criteri:
- Configurare il logging e il monitoraggio per i cluster collegati
- Risolvere i problemi relativi ai cluster collegati
Registra i 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 dello stesso parco risorse possono essere visualizzati e gestiti insieme nella Google Cloud console e molti componenti di GKE Enterprise e Google Cloud utilizzano concetti di parco risorse come l'identicità dell'identità e l'identicità dello spazio dei nomi per semplificare il lavoro con più cluster. Puoi scoprire di più sui parchi risorse e sulle funzionalità che attivano 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 Funzionalità di GKE. Gli addebiti di GKE Enterprise si applicano solo ai cluster registrati.
Configurare l'identità
Tutti i cluster collegati richiedono un'identità da utilizzare per l'agente Connect durante l'autenticazione su Google. Se il tuo cluster soddisfa i requisiti, puoi registrarlo con Workload Identity del parco risorse abilitato per l'autenticazione. I cluster con questa funzionalità abilitata utilizzano le identità di un pool di identità del workload del parco risorse a livello di parco risorse. Puoi scoprire di più sul funzionamento di 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 account di servizio 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 account di servizio Google Cloud con gcloud
.
Dopo aver creato l'account di servizio, puoi utilizzare il file JSON con le credenziali dell'account di servizio (file della chiave) per registrare il cluster, come descritto nella sezione successiva.
Registra il cluster
Ti consigliamo di controllare lo stato dell'appartenenza al cluster dopo averlo registrato per assicurarti che sia collegato correttamente a Google Cloud. Se riscontri problemi con la registrazione, consulta la nostra guida alla 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 abilitato, esegui il seguente comando. Per ulteriori informazioni sui tipi di cluster collegati che possono utilizzare questa funzionalità e su eventuali requisiti aggiuntivi, consulta Prerequisiti dei 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 Google Cloud console 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)
Scarica il file manifest dell'agente Connect
Per scaricare il manifest di installazione di Connect Agent 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 archiviare il manifest di installazione di Connect Agent.
Se utilizzi questa opzione, l'agente di connessione non verrà disegnato 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.
L'agente Connect 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 passare un nome host HTTPS:
--proxy=https://mycorpproxy.com:443
Se non specifichi diversamente, Connect Agent utilizza la porta 3128 per il proxy.
Se il proxy richiede l'autorizzazione, assicurati di passare le tue credenziali, ad esempio:
--proxy=http://user:password@10.10.10.10:8888
Installazione dell'agente Connect in un cluster con nodi Windows e Linux
L'agente Connect deve essere eseguito su un nodo Linux. Se esegui l'installazione in un cluster misto con nodi Linux e Windows, puoi assicurarti che l'agente Connect venga disegnato su un nodo Linux aggiungendo un selettore di nodi appropriato alla definizione di deployment.
Esegui il comando seguente 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 il seguente 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 del parco.
Abilita le funzionalità di GKE Enterprise sui cluster collegati
Dopo aver registrato i cluster, puoi attivare su di essi le funzionalità GKE Enterprise disponibili per le tue applicazioni. Queste funzionalità sono supportate solo per i nostri tipi di cluster convalidati. Puoi visualizzare le versioni attuali delle funzionalità supportate su questi tipi in Assistenza per versioni e upgrade.
Le seguenti guide mostrano come attivare le funzionalità supportate nei 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 e autenticarti nel cluster. 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 alcune configurazioni aggiuntive prima che tu o altri utenti possiate accedere al cluster.
Per accedere ai cluster collegati dalla riga di comando utilizzando un' Google Cloud identità, consulta Connessione ai cluster registrati con Connect Gateway.
Per autenticarti ai cluster collegati utilizzando il tuo provider di identità di terze parti esistente (solo cluster EKS su AWS, funzionalità di anteprima), consulta Configurare GKE Identity Service per un parco risorse e Accedere ai cluster con GKE Identity Service.