Le etichette Cloud Run sono coppie chiave-valore applicate al servizio e alle revisioni Cloud Run. Questa pagina mostra come impostare, modificare ed eliminare le etichette nel servizio e nelle revisioni Cloud Run. Tieni presente che quando imposti un'etichetta su un servizio Cloud Run, viene creata una nuova revisione con questa etichetta per il servizio; l'etichetta non viene applicata alle revisioni precedenti.
Gli utilizzi possibili includono:
- Allocazione dei costi e analisi dettagliate della fatturazione.
- Identificare le risorse utilizzate da singoli team o centri di costo.
- Distinguere gli ambienti di deployment (produzione, gestione temporanea, controllo qualità o test).
- Identifica i proprietari e le etichette di stato.
- Filtra i log in Logging.
Regole di utilizzo delle etichette
La seguente regola si applica all'utilizzo delle etichette impostate su un servizio Cloud Run:
In Cloud Run possono essere utilizzate solo etichette Google Cloud valide.
Etichette per i dati di fatturazione e il logging
La fatturazione Cloud e Cloud Logging ricevono solo le etichette specificate nell'attributo spec.template.metadata.labels in YAML o in template in Terraform. Se configuri le etichette utilizzando la consoleGoogle Cloud o Google Cloud CLI, Cloud Run aggiunge le etichette agli attributi metadata.labels e spec.template.metadata.labels.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare ed eseguire il deployment di servizi Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:
- Cloud Run Developer (
roles/run.developer) sul servizio Cloud Run - Utente dell'account di servizio (
roles/iam.serviceAccountUser) sull'identità di servizio
Se esegui il deployment di un servizio o di una funzione dal codice sorgente, devi disporre anche di ruoli aggiuntivi concessi nel tuo progetto e nel account di servizio Cloud Build.
Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se il tuo servizio Cloud Run interagisce con le APIGoogle Cloud , come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per saperne di più sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestisci l'accesso.
Imposta o modifica le etichette
Qualsiasi modifica alla configurazione porta alla creazione di una nuova revisione. Anche le revisioni successive riceveranno automaticamente questa impostazione di configurazione, a meno che non apporti aggiornamenti espliciti per modificarla.
Le etichette impostate in precedenza per Cloud Run Functions utilizzando i comandi gcloud functions o l'API Cloud Functions v2 vengono propagate a Cloud Run quando esegui il deployment delle funzioni in Cloud Run.
Puoi impostare o modificare le etichette utilizzando la console Google Cloud , Google Cloud CLI o un file YAML quando esegui il deployment di una nuova revisione.
Console
Nella console Google Cloud , vai alla pagina Servizi di Cloud Run:
Seleziona la casella di controllo a sinistra del servizio per cui stai impostando l'etichetta.
Fai clic su Etichette per visualizzare il riquadro delle etichette.
Per modificare un valore di chiave di etichetta esistente, individua l'etichetta e modifica il valore.
Per impostare una nuova etichetta sul servizio, fai clic su Aggiungi etichetta e fornisci la chiave e il valore.
Fai clic su Salva.
gcloud
Puoi aggiornare le etichette di un servizio utilizzando il comando:
gcloud run services update SERVICE --update-labels KEY=VALUE
Per aggiornare più di un'etichetta, fornisci un elenco di coppie chiave-valore delimitate da virgole. Tieni presente che il comando update-labels imposta un nuovo valore per la chiave dell'etichetta se l'etichetta esiste già, altrimenti ne crea una nuova.
Sostituisci quanto segue:
SERVICE: il nome del tuo servizio Cloud RunKEY: il nome della chiave dell'etichettaVALUE: il valore della chiave
Puoi anche impostare le etichette durante il deployment:
gcloud run deploy SERVICE --image IMAGE --labels KEY=VALUE
Per creare più di un'etichetta durante il deployment, fornisci un elenco di coppie chiave/valore delimitate da virgole.
YAML
Se stai creando un nuovo servizio, salta questo passaggio. Se stai aggiornando un servizio esistente, scarica la relativa configurazione YAML:
gcloud run services describe SERVICE --format export > service.yaml
Aggiorna gli attributi
labelsin due posizioni:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE labels: LABEL: VALUE spec: template: metadata: labels: LABEL: VALUE name: REVISION
Sostituisci quanto segue:
SERVICE: il nome del tuo servizio Cloud RunLABEL: il nome dell'etichettaVALUE: il valore richiestoREVISION: un nuovo nome della revisione o eliminalo (se presente). Se fornisci un nuovo nome della revisione, questo deve soddisfare i seguenti criteri:- Inizia con
SERVICE- - Contiene solo lettere minuscole, numeri e
- - Non termina con
- - Non supera i 63 caratteri
- Inizia con
metadata.labelsimposta le etichette sull'oggetto del servizio, mentrespec.template.metadata.labelsimposta le etichette sulla revisione creata. Cloud Run propaga solo le etichette impostate sulla revisione a Cloud Logging e alla fatturazione Cloud.Crea o aggiorna il servizio utilizzando il seguente comando:
gcloud run services replace service.yaml
Il comando
gcloud run services replaceutilizza per impostazione predefinita il fileservice.yaml, se presente.
Terraform
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Aggiungi quanto segue a una risorsagoogle_cloud_run_v2_service nella configurazione Terraform:Lo snippet precedente aggiunge due etichette, foo (il cui valore è bar) e baz
(il cui valore è quux), alla tua istanza Cloud Run.
L'aggiunta delle etichette in template imposta le etichette per la revisione: solo le etichette impostate per la revisione vengono passate a Cloud Logging e fatturazione Cloud. Se aggiungi le etichette in una posizione diversa da template, l'etichetta viene impostata per il servizio, non per la revisione.
Sostituisci quanto segue:
name: il nome del servizio.location: la località utilizzata per il servizio.image: la tua immagine container.fooebaz: i nomi delle tue etichette.barequux: i valori delle tue etichette.
Elenca i servizi per etichetta
Puoi elencare i servizi per etichetta utilizzando un filtro di Google Cloud CLI:
gcloud run services list --filter metadata.labels.LABEL=VALUE
Sostituisci quanto segue:
LABEL: il nome dell'etichettaVALUE: il valore da includere nell'elenco filtrato
Elimina un'etichetta su un servizio
Puoi utilizzare la console o la riga di comando per eliminare le etichette di un servizio.
Console
Nella console Google Cloud , vai alla pagina Servizi di Cloud Run:
Seleziona la casella di controllo a sinistra del servizio da cui stai eliminando l'etichetta.
Fai clic su Etichette per visualizzare il riquadro delle etichette.
Tieni il puntatore a destra del campo Valore per visualizzare l'icona del cestino. Fai clic su Elimina elemento.
Fai clic su Salva.
gcloud
Per cancellare tutte le etichette da un servizio:
gcloud run services update SERVICE --clear-labels
Per eliminare etichette specifiche da un servizio, fornisci un elenco di chiavi delimitato da virgole:
gcloud run services update SERVICE --remove-labels LABEL
Sostituisci quanto segue:
SERVICE: il nome del tuo servizio Cloud RunLABEL: il nome dell'etichetta