Collega cluster di terze parti a Google Cloud (generazione precedente)

I cluster collegati a GKE ti consentono di visualizzare i cluster Kubernetes esistenti nella console Google Cloud insieme ai cluster GKE e di abilitare varie funzionalità di GKE Enterprise nei cluster, 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 insieme ai tuoi cluster GKE.

Le versioni e i tipi di cluster seguenti sono stati convalidati da Google. Per informazioni sulle funzionalità di GKE Enterprise supportate sui cluster collegati, vedi Supporto per i componenti Anthos e 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
TIPO 0,12 1,23, 1,24
K3s 1,20 1,20
K3d 4.4.3 1,20

Prima di iniziare

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Anthos API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Anthos API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Controlla i prerequisiti di registrazione del parco risorse per assicurarti di disporre delle autorizzazioni pertinenti e di disporre delle API abilitate per registrare un cluster.
  13. Consulta la guida Prima di iniziare per conoscere i requisiti specifici per il collegamento di cluster al di fuori di Google Cloud, inclusi eventuali passaggi di configurazione speciali necessari per il tuo tipo di cluster.

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, semplificando l'amministrazione dell'infrastruttura. I cluster nello stesso parco risorse possono essere consultati e gestiti insieme nella console Google Cloud e molti componenti GKE Enterprise e Google Cloud utilizzano concetti del parco risorse come identicità dell'identità e identità dello spazio dei nomi per semplificare l'utilizzo di più cluster. Per saperne di più sui parchi risorse e sulle funzionalità che abilitano, consulta la nostra guida alla gestione del parco risorse.

Hai il diritto di abilitare 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. I costi di GKE Enterprise si applicano solo ai cluster registrati.

Configura identità

Tutti i cluster collegati richiedono un'identità che l'agente Connect può utilizzare durante l'autenticazione in Google. Se il cluster soddisfa i requisiti, puoi registrarlo con Workload Identity del parco risorse abilitato per l'autenticazione. I cluster per cui è abilitata questa funzionalità utilizzano identità da un pool di identità dei carichi di lavoro del parco risorse a livello di parco risorse. Per saperne di più sul funzionamento di Workload Identity del parco risorse e sui vantaggi del suo utilizzo, consulta Utilizzare Workload Identity per il parco risorse.

Se non puoi utilizzare Workload Identity per il parco risorse, la registrazione di un cluster collegato richiede un account di servizio Google Cloud 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 Creazione di 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 chiave) per registrare il cluster, come descritto nella sezione successiva.

Registra il cluster

Ti consigliamo di ottenere lo stato di iscrizione del cluster dopo averlo registrato per assicurarti che sia correttamente connesso a Google Cloud. In caso di 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:

  • 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 al file JSON della chiave privata dell'account di servizio scaricato come parte dei prerequisiti. Questa chiave dell'account di servizio è archiviata come secret denominato creds-gcp nello spazio dei nomi gke-connect.
  • KUBECONFIG_CONTEXT: il contesto del cluster da registrare, così come visualizzato nel file kubeconfig. Puoi ottenere questo valore dalla riga di comando eseguendo kubectl config current-context.
  • KUBECONFIG_PATH: il percorso file locale in cui viene archiviato kubeconfig contenente una voce per il cluster in fase di registrazione. Il valore predefinito è $KUBECONFIG se la variabile di ambiente è impostata; in caso contrario, il valore predefinito è $HOME/.kube/config.

Registra un cluster collegato con Workload Identity del parco risorse

Per registrare un cluster collegato con Workload Identity del parco risorse abilitato, esegui questo comando. Per saperne di più 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

Genera 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:

  1. Nella console Google Cloud, vai alla pagina della panoramica dei cluster Google Kubernetes Engine.

    Vai ai cluster GKE

  2. Fai clic su Registra cluster esistente.

  3. Fai clic su Aggiungi cluster esterno.

  4. Inserisci il nome del cluster che vuoi registrare nel campo Nome cluster.

  5. (Facoltativo) Aggiungi etichette Google Cloud al cluster.

  6. Fai clic su Genera comando di registrazione.

  7. In Cloud Shell o ovunque tu abbia salvato le credenziali dell'account di servizio, modifica ed esegui il comando gcloud visualizzato sulla pagina. Devi specificare i seguenti valori:

    • CLUSTER_CONTEXT è il contesto del cluster così come appare nel file kubeconfig. Puoi ottenere questo valore dalla riga di comando eseguendo kubectl config current-context.
    • KUBECONFIG_PATH è il percorso file locale in cui è archiviato il file kubeconfig. Il valore predefinito è $KUBECONFIG se la variabile di ambiente è impostata; in caso contrario, il valore predefinito è $HOME/.kube/config.
    • LOCAL_KEY_PATH è il percorso del file delle chiavi 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 viene registrato, nella pagina viene visualizzato un messaggio di operazione riuscita.

  8. Fai clic su Imposta etichette oppure su Ignora se non hai impostato nessuna etichetta.

Opzioni di registrazione avanzate (solo riga di comando)

Scarica il manifest di Connect Agent

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 dell'installazione di Connect Agent.

Questa opzione non eseguirà 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.

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 in un nome host HTTPS:

--proxy=https://mycorpproxy.com:443

Se non diversamente specificato, l'agente Connect utilizza la porta 3128 per il proxy.

Se il tuo proxy richiede l'autorizzazione, assicurati di trasferire 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 il deployment dell'agente Connect venga eseguito su un nodo Linux aggiungendo un selettore di nodi appropriato alla definizione del 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 riuscito, 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 la configurazione, consulta la guida alla risoluzione dei problemi per la creazione del parco risorse.

Abilita le funzionalità di GKE Enterprise sui cluster collegati

Dopo aver registrato i cluster, puoi abilitare le funzionalità di GKE Enterprise disponibili per le applicazioni. Queste funzionalità sono supportate solo sui nostri tipi di cluster convalidati. Puoi vedere le versioni attuali delle funzionalità supportate per questi tipi in Supporto per versioni e upgrade.

Le guide seguenti mostrano come abilitare le funzionalità supportate sui tuoi cluster:

Per i set di documentazione completi per tutti i componenti di GKE Enterprise, inclusi tutorial, materiale di riferimento e altro ancora, consulta Componenti di GKE Enterprise.

Accedi ai cluster collegati

Dopo aver registrato un cluster collegato, questo viene visualizzato nelle pagine dei cluster GKE e Anthos nella console Google Cloud. Tuttavia, per visualizzare ulteriori dettagli, ad esempio nodi e carichi di lavoro, devi accedere e autenticarti nel cluster. Per accedere ai cluster collegati dalla console Google Cloud, segui le istruzioni riportate in Accedere ai cluster dalla console Google Cloud. 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 siate in grado di accedere al cluster.

Per accedere ai cluster collegati dalla riga di comando utilizzando un'identità Google Cloud, consulta Connessione ai cluster registrati con il gateway Connect.

Per eseguire l'autenticazione ai cluster collegati utilizzando il tuo provider di identità di terze parti esistente (EKS solo sui cluster AWS, funzionalità di anteprima), consulta Configurare GKE Identity Service per un parco risorse e Accesso ai cluster con GKE Identity Service.

Che cosa succede dopo?