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

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

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Attiva l'API Anthos.

    Abilita l'API

  5. Installa Google Cloud CLI.
  6. Per initialize gcloud CLI, esegui questo comando:

    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. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  9. Attiva l'API Anthos.

    Abilita l'API

  10. Installa Google Cloud CLI.
  11. Per initialize gcloud CLI, esegui questo comando:

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

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, semplificando l'amministrazione dell'infrastruttura. I cluster nello stesso parco risorse possono essere esplorati e gestiti insieme nella console Google Cloud. Inoltre, molti componenti di GKE Enterprise e Google Cloud utilizzano concetti del parco risorse come identicità dell'identità e identità dello spazio dei nomi per semplificare il lavoro con più cluster. Puoi trovare molte altre informazioni sui parchi risorse e sulle funzionalità che attivano nella 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 delle funzionalità di GKE. Gli addebiti di GKE Enterprise si applicano solo ai cluster registrati.

Configura identità

Tutti i cluster collegati richiedono un'identità che l'agente Connect deve utilizzare durante l'autenticazione su 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à di un pool di identità dei carichi di lavoro del parco risorse. Per saperne di più su come funziona Workload Identity del parco risorse e sui vantaggi del suo utilizzo, consulta Utilizzare Workload Identity del parco risorse.

Se non riesci a utilizzare Workload Identity del 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 da 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 della chiave) per registrare il cluster, come descritto nella sezione successiva.

Registra il cluster

Ti consigliamo di recuperare lo stato di appartenenza del cluster dopo la registrazione per assicurarti che sia connesso correttamente 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 del file JSON della chiave privata dell'account di servizio scaricato nell'ambito 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 in fase di registrazione, 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 kubeconfig contenente una voce per il cluster registrato. Il valore predefinito è $KUBECONFIG se è impostata la variabile di ambiente; 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 ulteriori informazioni su quali tipi di cluster collegati 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 di 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 del cluster.

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

  6. Fai clic su Genera comando di registrazione.

  7. In Cloud Shell o ovunque hai 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 come viene 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 è archiviato il file kubeconfig. Il valore predefinito è $KUBECONFIG se è impostata la variabile di ambiente, altrimenti il valore predefinito è $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 l'agente Connect si connette a Google Cloud e il cluster è registrato, viene visualizzato un messaggio di operazione riuscita sulla pagina.

  8. Fai clic su Imposta etichette oppure su Salta se non hai impostato alcuna etichetta.

Opzioni di registrazione avanzate (solo riga di comando)

Scarica 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 archiviare il manifest di installazione di Connect Agent.

L'utilizzo di 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 sia Linux che 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 confermare che l'aggiornamento è 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 tue applicazioni. Queste funzionalità sono supportate solo sui nostri tipi di cluster convalidati. Puoi vedere le versioni attuali delle funzionalità supportate su questi tipi in Supporto di versioni e upgrade.

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

Per un set di documentazione completo per tutti i componenti di GKE Enterprise, tra cui tutorial, materiale di riferimento e altro ancora, vedi Componenti di GKE Enterprise.

Accedi ai cluster collegati

Dopo aver registrato un cluster collegato, questo viene visualizzato nelle pagine relative ai cluster GKE e Anthos nella console Google Cloud. Tuttavia, per visualizzare ulteriori dettagli come nodi e carichi di lavoro, devi accedere e autenticarti nel cluster. Per accedere ai cluster collegati dalla console Google Cloud, segui le istruzioni in Accedere ai cluster dalla console Google Cloud. A seconda del metodo di autenticazione scelto, tieni presente che tu o un amministratore di piattaforma potreste dover eseguire una configurazione aggiuntiva prima che tu o altri utenti potrete 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 nei cluster collegati utilizzando il tuo provider di identità di terze parti esistente (solo EKS su cluster AWS, funzionalità di anteprima), consulta Configurazione di GKE Identity Service per un parco risorse e Accesso ai cluster con GKE Identity Service.

Che cosa succede dopo?