Installazione mediante il componente aggiuntivo di GKE
Questa pagina descrive come installare Config Connector su un cluster Google Kubernetes Engine (GKE) utilizzando il componente aggiuntivo Config Connector.
Per informazioni dettagliate su ciascuna opzione di installazione con i relativi vantaggi e svantaggi, vedi Scegliere un tipo di installazione.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Attiva l'API Google Kubernetes Engine. Attiva l'API Google Kubernetes Engine
- Se vuoi utilizzare Google Cloud CLI per questa attività,
installala e poi
inizializzala. Se hai già installato gcloud CLI, scarica l'ultima versione eseguendo
gcloud components update
.
Seleziona o crea un Google Cloud progetto in cui installare Config Connector.
Se in precedenza hai installato manualmente Config Connector, disinstallalo prima di installare il componente aggiuntivo Config Connector:
Installazione del componente aggiuntivo Config Connector
Utilizzi il componente aggiuntivo Config Connector creando un nuovo cluster GKE o attivandolo in un cluster esistente. Dopo aver installato il componente aggiuntivo Config Connector, configura l'installazione di Config Connector con i tuoi service account Google e i tuoi spazi dei nomi.
Requisiti
Il componente aggiuntivo Config Connector presenta i seguenti requisiti:
Devi utilizzare una versione di GKE:
- 1.15.11-gke.5 e versioni successive
- 1.16.8-gke.8 e versioni successive
- 1.17.4-gke.5 e versioni successive
Devi abilitare un pool di identità dei carichi di lavoro e Kubernetes Engine Monitoring sui cluster in cui abiliti Config Connector.
Configurazione di un cluster GKE
Puoi utilizzare il componente aggiuntivo Config Connector su un cluster nuovo o esistente.
Creazione di un nuovo cluster con il componente aggiuntivo Config Connector abilitato
Puoi creare un cluster GKE utilizzando gcloud CLI o la consoleGoogle Cloud .
gcloud
Per creare un cluster con Google Cloud CLI, esegui questo comando:
gcloud container clusters create CLUSTER_NAME \
--release-channel CHANNEL \
--addons ConfigConnector \
--workload-pool=PROJECT_ID.svc.id.goog \
--logging=SYSTEM \
--monitoring=SYSTEM
Sostituisci quanto segue:
- CLUSTER_NAME con il nome del tuo cluster GKE.
- CHANNEL con un
canale di rilascio GKE,
rapid
eregular
sono supportati. - PROJECT_ID con l'ID progetto Google Cloud .
Console Google Cloud
Per creare un cluster con la console Google Cloud , segui questi passaggi:
Visita il menu Google Kubernetes Engine nella console Google Cloud .
Fai clic su Crea. Viene visualizzata la pagina Crea un cluster Kubernetes.
Specifica un nome per il cluster.
Scegli una versione master supportata.
Configura il resto del cluster come preferisci.
Nel riquadro di navigazione, in Cluster, fai clic su Sicurezza.
Seleziona la casella di controllo Abilita Workload Identity.
Nel riquadro di navigazione a sinistra, in Cluster, fai clic su Funzionalità.
Seleziona la casella di controllo Abilita Config Connector.
Fai clic su Crea.
Dopo aver creato il cluster, passa alla creazione di un'identità.
Attivazione del componente aggiuntivo Config Connector su un cluster esistente
Puoi abilitare il componente aggiuntivo Config Connector su un cluster GKE esistente
con gcloud
o la console Google Cloud .
Prerequisiti
L'abilitazione del componente aggiuntivo Config Connector su un cluster esistente presenta i seguenti prerequisiti:
- Devi disporre di un cluster che soddisfi i requisiti per il componente aggiuntivo Config Connector.
Configura la federazione delle identità per i carichi di lavoro per GKE sul cluster in cui vuoi installare Config Connector.
Per abilitare la federazione delle identità per i carichi di lavoro per GKE per un pool di nodi, utilizza lo strumento a riga di comando gcloud
:
gcloud container node-pools update NODE_POOL \
--workload-metadata=GKE_METADATA \
--cluster CLUSTER_NAME
Sostituisci quanto segue:
- NODE_POOL con il nome del tuo pool di nodi
- CLUSTER_NAME con il nome del cluster
Abilitazione del componente aggiuntivo Config Connector
Puoi abilitare il componente aggiuntivo Config Connector in un cluster GKE esistente con Google Cloud CLI o la console Google Cloud .
gcloud
Per abilitare il componente aggiuntivo Config Connector in un cluster GKE esistente, utilizza Google Cloud CLI:
gcloud container clusters update CLUSTER_NAME \
--update-addons ConfigConnector=ENABLED
Sostituisci CLUSTER_NAME con il nome del tuo cluster GKE.
Console Google Cloud
Visita il menu Google Kubernetes Engine nella console Google Cloud .
Seleziona il cluster su cui vuoi installare Config Connector. Viene visualizzata la pagina Dettagli cluster.
Nella sezione Funzionalità, individua la riga Config Connector e fai clic su
Modifica.Seleziona la casella di controllo Abilita Config Connector e fai clic su Salva modifiche per aggiornare il cluster.
Crea un'identità
Config Connector crea e gestisce le risorse Google Cloud autenticandosi con un account di servizio Identity and Access Management (IAM) e utilizzando la federazione delle identità per i workload per GKE per associare i service account IAM ai service account Kubernetes.
Per creare l'identità, completa i seguenti passaggi:
Crea un account di servizio IAM. Se vuoi utilizzare un account di servizio esistente, puoi utilizzarlo e saltare questo passaggio:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Sostituisci SERVICE_ACCOUNT_NAME con un nome per l'account di servizio.
Per scoprire di più sulla creazione dei service account, vedi Creazione e gestione dei service account.
Concedi all'account di servizio IAM autorizzazioni elevate sul tuo progetto:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/editor"
Sostituisci PROJECT_ID con l'ID progetto.
Crea un'associazione dei criteri IAM tra il account di servizio IAM e il account di servizio Kubernetes predefinito su cui viene eseguito Config Connector:
gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --member="serviceAccount:PROJECT_ID.svc.id.goog[cnrm-system/cnrm-controller-manager]" \ --role="roles/iam.workloadIdentityUser"
Configurazione di Config Connector
Per completare l'installazione, crea un file di configurazione per
ConfigConnector
CustomResource,
quindi applicalo utilizzando il comando kubectl apply
. L'operatore Config Connector installa
i CRD delle risorse e i componenti Config Connector nel cluster.Google Cloud
Per configurare l'operatore come modalità cluster, completa i seguenti passaggi:
-
Copia il seguente file YAML in un file denominato
configconnector.yaml
: Sostituisci quanto segue:# configconnector.yaml apiVersion: core.cnrm.cloud.google.com/v1beta1 kind: ConfigConnector metadata: # the name is restricted to ensure that there is only one # ConfigConnector resource installed in your cluster name: configconnector.core.cnrm.cloud.google.com spec: mode: cluster googleServiceAccount: "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" # Setting `stateIntoSpec` to `Absent` is recommended. It means setting `cnrm.cloud.google.com/state-into-spec` # annotation to `absent` for all Config Connector resources created in the cluster in the future. # It prevents Config Connector from populating unspecified fields into the spec. stateIntoSpec: Absent
SERVICE_ACCOUNT_NAME
con il nome del tuo account di servizio.PROJECT_ID
con l'ID progetto.
-
Applica la configurazione al cluster con
kubectl apply
:kubectl apply -f configconnector.yaml
Specificare dove creare le risorse
Config Connector può organizzare le risorse per progetto, cartella o organizzazione, lo stesso modo in cui le organizzeresti con Google Cloud.
Prima di creare risorse con Config Connector, devi configurare la posizione in cui creare le risorse. Per determinare dove creare la risorsa, Config Connector utilizza un'annotazione nella configurazione della risorsa o in uno spazio dei nomi esistente. Per saperne di più, consulta la sezione Organizzare le risorse.
Se non hai uno spazio dei nomi per questo scopo, creane uno conkubectl
.
kubectl create namespace NAMESPACE
Sostituisci NAMESPACE
con il nome del tuo spazio dei nomi. Ad esempio
config-connector
.
Seleziona una scheda per scegliere dove vuoi che Config Connector crei le risorse.
Progetto
Per creare risorse in un determinato progetto, esegui questo comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/project-id=PROJECT_ID
Sostituisci quanto segue:
NAMESPACE
con il nome dello spazio dei nomi.PROJECT_ID
con l'ID progetto Google Cloud .
Cartella
Per creare risorse in una determinata cartella, esegui questo comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/folder-id=FOLDER_ID
Sostituisci quanto segue:
NAMESPACE
con il nome dello spazio dei nomi.FOLDER_ID
con l'ID della cartella Google Cloud .
Organizzazione
Per creare risorse in una determinata organizzazione, esegui questo comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/organization-id=ORGANIZATION_ID
Sostituisci quanto segue:
NAMESPACE
con il nome dello spazio dei nomi.ORGANIZATION_ID
con l' Google Cloud ID organizzazione.
Quando annoti lo spazio dei nomi, Config Connector crea risorse nel progetto, nella cartella o nell'organizzazione corrispondenti. Per scoprire di più su come Config Connector utilizza gli spazi dei nomi Kubernetes, consulta Spazi dei nomi Kubernetes e progetti Google Cloud .
Verifica dell'installazione
Config Connector esegue tutti i suoi componenti in uno spazio dei nomi denominato cnrm-system
.
Puoi verificare che i pod siano pronti eseguendo questo comando:
kubectl wait -n cnrm-system \
--for=condition=Ready pod --all
Se Config Connector è installato correttamente, l'output è simile al seguente:
pod/cnrm-controller-manager-0 condition met
Eseguire l'upgrade di Config Connector
Gli upgrade del componente aggiuntivo Config Connector del cluster sono gestiti da Google Cloud.
Le risorse nel cluster vengono conservate ogni volta che viene eseguito un upgrade.
Scopri di più su come Google Cloud gestisce gli upgrade del componente aggiuntivo Config Connector oppure vai direttamente a come ottenere l'ultima versione di Config Connector.
Come Google Cloud gestisce gli upgrade del componente aggiuntivo Config Connector
La versione di Config Connector ottenuta da un cluster GKE dipende interamente dalla versione secondaria di GKE del cluster. Ad esempio:
Versione secondaria di GKE | Versione di Config Connector |
---|---|
1,20 | 1.69.0 |
1.21 | 1.69.0 |
1,22 | 1.71.0 |
1,23 | 1.82.0 |
1,24 | 1.89.0 |
Man mano che le versioni vengono qualificate, Google Cloud remappa le versioni secondarie più recenti di GKE a una versione di Config Connector appena rilasciata. Questa operazione viene eseguita per tutte le versioni secondarie di GKE sufficientemente nuove da non essere disponibili sui canali di rilascio regolare o stabile.
Poiché la versione di Config Connector ottenuta da un cluster dipende dalla versione secondaria di GKE del cluster, esistono due casi in cui il componente aggiuntivo Config Connector di un cluster viene aggiornato automaticamente da Google Cloud:
Il cluster viene aggiornato a una nuova versione secondaria di GKE mappata a una versione più recente di Config Connector.
Il cluster si trova su una versione secondaria di GKE sufficientemente nuova da non essere disponibile sui canali di rilascio regolare o stabile e Google Cloud rimappa quella versione secondaria di GKE a una nuova versione di Config Connector.
Quando Google Cloud rimappa una versione secondaria di GKE ed esegue l'upgrade dei cluster esistenti a una nuova versione di Config Connector, si dice che "sta eseguendo il rollout di una nuova versione di Config Connector" per quella versione secondaria di GKE.
Google Cloud non implementa nuove versioni di Config Connector nelle versioni secondarie di GKE sufficientemente vecchie da essere disponibili nelle versioni dei canali di rilascio Regolare o Stabile per motivi di stabilità, tranne in situazioni di emergenza in cui è stato rilevato un problema diffuso.
Come ottenere l'ultima versione di Config Connector
La versione di Config Connector installata tramite il componente aggiuntivo Config Connector spesso è in ritardo di 12 mesi o più. Se hai bisogno dell'ultima versione di Config Connector, ti consigliamo di passare a Config Controller o di installare manualmente Config Connector ed eseguire gli upgrade autonomamente. Le istruzioni di migrazione per ogni opzione sono le seguenti:
Per passare a Config Controller, segui le istruzioni per la migrazione di Config Controller per eseguire la migrazione delle risorse Config Connector esistenti a un'istanza di Config Controller.
Per installare manualmente Config Connector, segui le istruzioni per passare dal componente aggiuntivo Config Connector all'installazione manuale.
Disinstallazione di Config Connector
Per disinstallare Config Connector, completa i seguenti passaggi:
Utilizza
kubectl delete
per rimuovere le CRD di Config Connector insieme ai componenti del controller:kubectl delete ConfigConnector configconnector.core.cnrm.cloud.google.com --wait=true
Disattiva il componente aggiuntivo Config Connector nel cluster utilizzando gcloud CLI o la console Google Cloud :
gcloud
Per disattivare il componente aggiuntivo Config Connector con
gcloud
, esegui questo comando:gcloud container clusters update CLUSTER_NAME --update-addons ConfigConnector=DISABLED
Sostituisci CLUSTER_NAME con il nome del cluster in cui è installato il componente aggiuntivo Config Connector.
console Cloud
Per disattivare il componente aggiuntivo Config Connector dalla console Google Cloud , segui i seguenti passaggi.
Vai alla pagina Cluster Google Kubernetes Engine nella console Google Cloud e seleziona il cluster che vuoi aggiornare.
Fai clic su Modifica. Viene visualizzata la schermata Modifica cluster.
Fai clic su Componenti aggiuntivi.
Seleziona Config Connector e scegli Disattivato.
Fai clic su Salva per aggiornare il cluster.
Passaggi successivi
- Inizia a utilizzare Config Connector.
- Scopri come risolvere i problemi di Config Connector.