Questa guida descrive come creare e gestire i tag per le risorse Compute Engine. Un tag è una coppia chiave-valore che può essere associata a una risorsa della Google Cloud Platform. I tag vengono utilizzati per diversi scopi, tra cui:
- Consenti o nega in modo condizionale i criteri a seconda che una risorsa abbia un tag specifico.
- Definisci le origini e le destinazioni nei criteri firewall della rete globale e nei criteri firewall di rete a livello di regione.
- Organizzare le risorse in modo logico
Dopo aver creato un tag e aver concesso l'accesso appropriato sia al tag sia alla risorsa, puoi associare il tag come coppia chiave-valore. Puoi collegare esattamente un
valore a una risorsa per una determinata chiave. Ad esempio, se colleghi il tag environment: development
, non puoi associare i tag environment: production
o environment: test
. A ogni risorsa possono essere collegate un massimo di 50 coppie chiave-valore.
Per collegare tag alle risorse, devi creare una risorsa TagBinding che colleghi il valore del tag alla risorsa Google Cloud. Per ulteriori informazioni sui tag e sul loro funzionamento, consulta la Panoramica dei tag.
Prima di iniziare
- Leggi la panoramica dei tag nella documentazione di Resource Manager.
- Leggi la sezione Creazione e gestione dei tag nella documentazione di Resource Manager.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.
Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi e alle API di Google Cloud, non devi configurare l'autenticazione.
gcloud
-
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
- Imposta una regione e una zona predefinite.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
-
Autorizzazioni
Per gestire i tag per le risorse Compute Engine, agli utenti e agli account di servizio deve essere concesso il ruolo tagUser
. Per maggiori informazioni sul ruolo tagUser
, consulta
Autorizzazioni richieste.
Risorse supportate
Le seguenti risorse supportano il tagging solo dopo la creazione della risorsa:
- Istanza macchina virtuale (VM)
- Disco
- Gruppo di istanze gestite
- Immagine
- Snapshot
- La maggior parte delle risorse di networking, ad esempio rete, subnet, firewall e controlli di integrità.
Le seguenti risorse supportano anche il tagging durante la creazione delle risorse:
- Istanza VM
- Disco
Aggiunta di tag a una risorsa
I tag esistenti possono essere collegati a determinate risorse dopo la creazione della risorsa, seguendo le istruzioni riportate di seguito.
Console
I passaggi esatti potrebbero essere leggermente diversi a seconda del tipo di risorsa. Ad esempio, i seguenti passaggi associano un tag a una VM:
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Nella colonna Nome, fai clic sul nome della VM per cui vuoi aggiungere tag.
Nella pagina dei dettagli dell'istanza VM, completa i seguenti passaggi:
- Fai clic su Modifica.
- Nella sezione Di base, fai clic su Gestisci tag e aggiungi i tag desiderati per l'istanza.
- Fai clic su Salva.
gcloud
Per istruzioni dettagliate su come utilizzare questi flag, consulta Collegare un tag a una risorsa nella documentazione di Resource Manager.
Ad esempio, il seguente comando collega un tag a una VM:
gcloud resource-manager tags bindings create \ --location LOCATION_NAME \ --tag-value=tagValues/TAGVALUE_ID \ --parent=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Sostituisci quanto segue:
- LOCATION_NAME: la regione della risorsa di destinazione, ad esempio
us-central1
- TAGVALUE_ID: l'ID numerico del valore tag
- PROJECT_NUMBER: l'ID numerico del tuo progetto
- ZONE: il nome della zona, ad esempio
us-central1-a
- VM_ID: l'ID numerico dell'istanza VM
API
Per collegare un tag a una risorsa, devi prima creare una rappresentazione JSON di un'associazione di tag che includa l'ID permanente o il nome con spazio dei nomi del valore del tag e l'ID permanente della risorsa. Per ulteriori informazioni sul formato di un'associazione di tag, consulta la documentazione di riferimento di TagBinding.
Per collegare il tag a una risorsa di zona, ad esempio un'istanza VM, utilizza il metodo tagBindings.create
con l'endpoint a livello di regione in cui si trova la risorsa. Ad esempio:
POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings
Il corpo della richiesta può essere uno dei seguenti:
{ "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID", "tagValue": "tagValue/TAGVALUE_ID" }
Oppure:
{ "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID", "tagValueNamespacedName": TAGVALUE_NAMESPACED_NAME }
Sostituisci quanto segue:
- LOCATION: la località a cui appartiene la risorsa di destinazione
- PROJECT_NUMBER: l'ID numerico del tuo progetto
- ZONE: il nome della zona, ad esempio
us-central1-a
- VM_ID: l'ID numerico della VM
- TAGVALUE_ID: l'ID permanente del valore tag associato, ad
esempio:
4567890123
- TAGVALUE_NAMESPACED_NAME è il nome con spazio dei nomi del valore tag associato ed è nel formato:
parentNamespace/tagKeyShortName/tagValueShortName
Aggiunta di tag a una risorsa durante la creazione della risorsa
In alcuni scenari, è possibile che tu voglia taggare le risorse durante la creazione della risorsa, anziché dopo. Ad esempio, potresti voler applicare tag firewall per i criteri di rete quando crei la risorsa firewall Cloud Next Generation.
Console
I passaggi esatti potrebbero essere leggermente diversi a seconda del tipo di risorsa. I seguenti passaggi si riferiscono a una VM:
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Fai clic su Crea istanza.
Fai clic su Gestisci tag ed etichette.
Fai clic su Aggiungi tag.
Segui le istruzioni nel riquadro laterale per selezionare i tag da aggiungere all'istanza.
Fai clic su Salva.
Completa gli altri passaggi in Creare e avviare un'istanza VM per completare la creazione dell'istanza.
gcloud
Per collegare un tag a una risorsa durante la creazione della risorsa, aggiungi il flag --resource-manager-tags
con il rispettivo comando create
. Ad esempio, per collegare un tag a una VM, utilizza il seguente comando:
gcloud compute instances create INSTANCE_NAME --resource-manager-tags=tagKeys/TAGKEY_ID=tagValues/TAGVALUE_ID
Sostituisci quanto segue:
- INSTANCE_NAME: il nome dell'istanza
- TAGKEY_ID: l'ID numerico del numero della chiave del tag
- TAGVALUE_ID: l'ID numerico permanente del valore tag associato; ad esempio:
4567890123
Specifica più tag separandoli con una virgola, ad esempio
TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2
.
API
Invia una richiesta POST
al seguente URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances
Includi il seguente corpo JSON della richiesta:
{ "name": INSTANCE_NAME, "params": { "resourceManagerTags": { "tagKeys/TAGKEY_ID: "tagValues/TAGVALUE_ID", }, } // other fields omitted }
Sostituisci quanto segue:
- INSTANCE_NAME: il nome dell'istanza
- TAGKEY_ID: l'ID numerico del numero della chiave del tag
- TAGVALUE_ID: l'ID numerico permanente del valore tag associato; ad esempio:
4567890123
Scollegamento di un tag da una risorsa
Puoi scollegare un tag da una risorsa eliminando la risorsa di associazione di tag.
Per rivedere le istruzioni su come scollegare i tag, consulta Scollegare un tag da una risorsa nella documentazione di Resource Manager.
Console
I passaggi esatti potrebbero essere leggermente diversi a seconda del tipo di risorsa. Ad esempio, i passaggi seguenti scollegano un tag da una VM:
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Nella colonna Nome, fai clic sul nome della VM per cui vuoi aggiungere tag.
Nella pagina dei dettagli dell'istanza VM, completa i seguenti passaggi:
- Fai clic su Modifica.
- Nella sezione Di base, fai clic su Gestisci tag e rimuovi i tag che vuoi applicare all'istanza.
- Fai clic su Salva.
gcloud
L'esempio seguente scollega un tag da una VM utilizzando gcloud CLI:
gcloud resource-manager tags bindings delete \ --location LOCATION_NAME \ --tag-value=tagValues/TAGVALUE_ID \ --parent //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Sostituisci quanto segue:
- LOCATION_NAME: la regione della risorsa di destinazione, ad esempio
us-central1
- TAGVALUE_ID: l'ID numerico della chiave tag
- PROJECT_NUMBER: l'ID numerico del tuo progetto
- ZONE: il nome della zona, ad esempio
us-central1-a
- VM_ID: l'ID numerico dell'istanza VM
Per aggiornare o sostituire un'associazione di tag esistente con un'altra, scollega la vecchia associazione di tag e collega quella nuova.
API
Per eliminare un'associazione di tag collegata a una risorsa, ad esempio una VM, utilizza il metodo tagBindings.delete
con l'endpoint a livello di regione in cui si trova la risorsa.
DELETE https://LOCATION-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}
Dove:
TAGBINDINGS_NAME è l'ID permanente di TagBinding, ad esempio:
tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456
.LOCATION è l'endpoint a livello di regione per la tua risorsa, ad esempio
us-central1
.
Visualizzazione dei tag associati a una risorsa
Per istruzioni dettagliate su come elencare i tag, consulta Elenco dei tag associati a una risorsa nella documentazione di Resource Manager.
Console
I passaggi esatti potrebbero essere leggermente diversi a seconda del tipo di risorsa. Ad esempio, i passaggi seguenti mostrano come visualizzare i tag di una VM:
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona il progetto e fai clic su Continua.
Nella colonna Nome, fai clic sul nome della VM per cui vuoi visualizzare i tag.
Nella pagina dei dettagli dell'istanza VM, cerca i tag nella sezione Tag.
gcloud
Per ottenere un elenco delle associazioni di tag direttamente collegate a una risorsa, utilizza il comando gcloud resource-manager tags bindings list
. Se aggiungi il flag --effective
, verrà restituito anche un elenco di tag ereditati da questa risorsa. Ad esempio:
gcloud resource-manager tags bindings list \ --location=LOCATION_NAME \ --parent //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Sostituisci quanto segue:
- LOCATION_NAME: la regione della risorsa di destinazione, ad esempio
us-central1
- PROJECT_NUMBER: l'ID numerico del tuo progetto
- ZONE: il nome della zona, ad esempio
us-central1-a
- VM_ID: l'ID numerico dell'istanza VM
Se aggiungi il flag --effective
al comando tags bindings list
, verrà restituito anche un elenco di tutti i tag ereditati da questa risorsa. Dovresti ricevere una risposta simile alla seguente:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Se tutti i tag valutati su una risorsa sono collegati direttamente, il campo inherited
è falso e viene omesso.
API
Per elencare le associazioni di tag collegate a una risorsa di regione, ad esempio le istanze di Compute Engine, utilizza il metodo tagBindings.list
con l'endpoint a livello di regione in cui si trova la risorsa. Ad esempio:
GET https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/tagBindings { "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID" }
Sostituisci quanto segue:
- LOCATION_NAME: la regione della risorsa di destinazione, ad esempio
us-central1
- PROJECT_NUMBER: l'ID numerico del tuo progetto
- ZONE: il nome della zona, ad esempio
us-central1-a
- VM_ID: l'ID numerico dell'istanza VM