Questa pagina mostra come applicare dinamicamente i tag di rete ai nodi nei tuoi cluster Google Kubernetes Engine (GKE) senza interrompere l'esecuzione carichi di lavoro con scale out impegnativi.
Informazioni sui tag di rete
I tag di rete sono metadati sulle macchine virtuali (VM) Compute Engine che permettono di applicare route e regole firewall a istanze VM specifiche. In GKE, puoi utilizzare i tag di rete per rendere VPC e le route o le regole firewall applicabili ai nodi nel tuo cluster.
Puoi utilizzare l'API GKE per applicare e aggiornare i tag di rete ai cluster GKE senza interrompere l'esecuzione carichi di lavoro con scale out impegnativi. I tag di rete specificati vengono applicati anche a qualsiasi nuovo nodo GKE esegue automaticamente il provisioning.
Utilizza i tag al posto dei tag di rete
I tag di rete sono semplici stringhe non soggette all'accesso a Identity and Access Management i controlli di sicurezza. Chiunque abbia accesso ai tuoi nodi nell'API GKE può aggiungere tag di rete ai nodi.
Se utilizzi GKE 1.28 o versioni successive, ti consigliamo di utilizza i tag con la designazione di firewall per applicare criteri a livello di regione i criteri firewall di rete globali, che migliorano le capacità delle regole firewall VPC.
I tag sono coppie chiave-valore che colleghi a Compute Engine delle VM in esecuzione. Puoi utilizzare IAM per controllare chi può interagire a tag specifici.
- Per utilizzare i tag per applicare i criteri firewall in per GKE, consulta Applica in modo selettivo i criteri firewall di rete in GKE.
- Per ulteriori vantaggi dei tag, consulta Confronto tra tag e tag di rete.
- Per assistenza sulla migrazione delle regole firewall ai criteri firewall di rete, consulta Regole firewall VPC di Google Cloud per i criteri firewall di rete - guida alla migrazione (PDF).
Opzioni della riga di comando per l'applicazione dei tag di rete
Nella tabella seguente vengono descritti i flag che puoi specificare utilizzando il comando Google Cloud CLI per applicare i tag di rete ai cluster e al loro utilizzo d'uso diversi.Bandiera | Modalità di funzionamento | Livello | Descrizione |
---|---|---|---|
--autoprovisioning-network-tags |
|
Cluster |
Applica i tag di rete specificati a tutti i nodi Autopilot e per tutti i pool di nodi Standard di cui è stato eseguito il provisioning automatico. |
--tags |
|
Pool di nodi | Applica manualmente i tag di rete a pool di nodi standard specifici. |
Limitazioni
Se usi --autoprovisioning-network-tags
non potrai usare --tags
per l'aggiornamento
i tag di rete per i pool di nodi standard
con provisioning automatico.
Ti consigliamo di utilizzare --autoprovisioning-network-tags
per il provisioning automatico
pool di nodi e che utilizzi --tags
solo per i pool di nodi creati manualmente.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti attività:
- Attiva l'API Google Kubernetes Engine. Abilita l'API Google Kubernetes Engine .
- Se vuoi utilizzare Google Cloud CLI per questa attività,
install e poi
inizializzare
con gcloud CLI. Se hai già installato gcloud CLI, scarica la versione più recente
eseguendo
gcloud components update
.
Aggiungi tag di rete ai nuovi cluster
Puoi aggiungere tag di rete quando crei un nuovo cluster.
Aggiungi tag di rete ai nuovi cluster Autopilot
Esegui questo comando:
gcloud container clusters create-auto CLUSTER_NAME \
--location=LOCATION \
--autoprovisioning-network-tags=TAG1,TAG2,...
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del tuo nuovo Autopilot in un cluster Kubernetes.LOCATION
: la località di Compute Engine per il nuovo cluster.TAG1,TAG2, ...
: un elenco separato da virgole della rete che vuoi applicare.
Aggiungi tag di rete ai nuovi cluster standard
Per la versione standard, puoi anche specificare e tag di rete specifici per il provisioning automatico dei nodi.
Applica i tag di rete al pool di nodi predefinito
Esegui questo comando per creare un nuovo cluster Standard e applica di rete al pool di nodi predefinito:
gcloud container clusters create CLUSTER_NAME \
--location=LOCATION \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del nuovo standard in un cluster Kubernetes.COMPUTE_REGION
: la località di Compute Engine per il nuovo cluster.NETWORK_TAG1,NETWORK_TAG2, ...
: un elenco separato da virgole della rete che vuoi applicare.
Applica i tag di rete ai pool di nodi di cui è stato eseguito il provisioning automatico
Puoi applicare automaticamente i tag di rete a tutti i pool di nodi creati tramite il provisioning automatico dei nodi.
Esegui questo comando:
gcloud container clusters create CLUSTER_NAME \
--location=LOCATION \
--enable-autoprovisioning \
--autoprovisioning-network-tags=TAG1,TAG2,...
Sostituisci TAG1,TAG2,...
con valori separati da virgole
elenco dei tag di rete che vuoi applicare a tutti i pool di nodi di cui è stato eseguito il provisioning automatico.
Aggiorna i tag di rete sui cluster esistenti
Puoi aggiornare i tag di rete sui cluster esistenti.
Aggiorna i tag di rete sui cluster Autopilot esistenti
Esegui questo comando:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=TAG1,TAG2,...
Aggiorna i tag di rete sui cluster standard esistenti
Esegui questo comando per aggiornare i tag di rete su uno standard specifico
pool di nodi. Non puoi utilizzare questo comando per aggiornare i pool di nodi di cui è stato eseguito il provisioning automatico
se hai utilizzato --autoprovisioning-network-tags
.
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Se per il cluster è impostato --autoprovisioning-network-tags
, questo comando
restituisce un errore.
Aggiornare i tag di rete per i pool di nodi di cui è stato eseguito il provisioning automatico
Puoi aggiornare i tag di rete a cui si applica il provisioning automatico dei nodi pool di nodi nuovi ed esistenti di cui è stato eseguito il provisioning automatico.
Esegui questo comando:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=TAG1,TAG2,...
Aggiungi tag di rete ai nuovi pool di nodi standard
Creare un nuovo pool di nodi in un cluster Standard con una rete specifica , esegui questo comando:
gcloud container node-pools create NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Sostituisci NODE_POOL_NAME
con il nome del nuovo nodo
piscina.
Visualizza i tag di rete esistenti
Questa sezione mostra come visualizzare i tag di rete esistenti.
Visualizza i tag di rete esistenti in Autopilot
Esegui questo comando:
gcloud container clusters describe CLUSTER_NAME \
--flatten=nodePoolAutoConfig.networkTags
Se il cluster contiene tag di rete, l'output è simile al seguente:
---
tags:
- example-tag
Visualizza i tag di rete esistenti in Standard
Puoi visualizzare i tag di rete nei pool di nodi di cui è stato eseguito il provisioning automatico o nei pool di nodi che che hai creato.
Visualizza i tag di rete nei pool di nodi di cui è stato eseguito il provisioning automatico
Esegui questo comando:
gcloud container clusters describe CLUSTER_NAME \
--flatten=nodePoolAutoConfig.networkTags
Se il cluster contiene tag di rete, l'output è simile al seguente:
---
tags:
- example-tag
Visualizza i tag di rete nei pool di nodi senza provisioning automatico dei nodi
Per visualizzare i tag di rete per uno specifico pool di nodi Standard in cui
applicato i tag utilizzando il flag --tags
, esegui questo comando:
gcloud container node-pools describe NODE_POOL_NAME\
--cluster=CLUSTER_NAME \
--format='value(config.tags)'
Sostituisci NODE_POOL_NAME
con il nome del nodo
piscina.
Se il pool di nodi contiene tag, l'output è simile al seguente:
example-tag
Rimuovi i tag di rete
Puoi rimuovere i tag di rete da GKE.
Rimuovi i tag di rete dai cluster Autopilot
Esegui questo comando:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=""
Rimuovi i tag di rete dai cluster e dai pool di nodi standard
Puoi rimuovere i tag da tutti i pool di nodi di cui è stato eseguito il provisioning automatico o da specifici pool di nodi.
Rimuovi i tag di rete dai pool di nodi di cui è stato eseguito il provisioning automatico
Per rimuovere i tag di rete da tutti i pool di nodi di cui è stato eseguito il provisioning automatico, esegui questo comando :
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=""
Questo comando ripristina anche la tua possibilità di usare l'opzione --tags
per eseguire manualmente
specificare i tag di rete per i pool di nodi di cui è stato
eseguito il provisioning automatico.
Rimuovere i tag di rete da pool di nodi specifici
Per rimuovere tag di rete da pool di nodi specifici, esegui seguente comando:
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=""
Passaggi successivi
- Scopri di più sui tag di rete.
- Scopri come applicare le etichette del cluster per una migliore gestione del cluster.