Aggiunta di etichette a un deployment

Le etichette rappresentano un modo semplice per organizzare i deployment correlati o associati tra loro. Ad esempio, una prassi comune è etichettare separatamente i deployment pensati per la produzione, la gestione temporanea o lo sviluppo, in modo da poter cercare facilmente i deployment che appartengono a ogni fase, se necessario.

Cosa sono le etichette?

Un'etichetta è una coppia chiave-valore che puoi assegnare ai deployment Google Cloud. Ti aiutano a organizzare queste risorse e a gestire i costi su larga scala, con la granularità di cui hai bisogno. Puoi associare un'etichetta a ogni risorsa, quindi filtrare le risorse in base alle etichette. Le informazioni sulle etichette vengono inoltrate al sistema di fatturazione, in modo da poter suddividere gli addebiti fatturati per etichetta. Con i report di fatturazione integrati, puoi filtrare e raggruppare i costi per etichette delle risorse. Puoi utilizzare le etichette anche per eseguire query sulle esportazioni dei dati di fatturazione.

Requisiti per le etichette

Le etichette applicate a una risorsa devono soddisfare i seguenti requisiti:

  • Ogni risorsa può avere fino a 64 etichette.
  • Ogni etichetta deve essere una coppia chiave-valore.
  • Le chiavi hanno una lunghezza minima di 1 carattere e una lunghezza massima di 63 caratteri e non può essere vuota. I valori possono essere vuoti e avere una lunghezza massima di 63 caratteri.
  • Le chiavi e i valori possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Tutti i caratteri devono utilizzare la codifica UTF-8 e sono consentiti caratteri internazionali. Le chiavi devono iniziare con una lettera minuscola o un carattere internazionale.
  • La parte relativa alla chiave di un'etichetta deve essere univoca all'interno di una singola risorsa. Tuttavia, puoi utilizzare la stessa chiave con più risorse.

Questi limiti si applicano alla chiave e al valore di ogni etichetta e alle singole risorse Google Cloud con etichette. Non esiste un limite al numero di etichette che puoi applicare a tutte le risorse all'interno di un progetto.

Utilizzi comuni delle etichette

Di seguito sono riportati alcuni casi d'uso comuni delle etichette:

  • Etichette del team o del centro di costo: aggiungi etichette basate sul team o sul centro di costo per distinguere i deployment di proprietà di team diversi (ad esempio, team:research e team:analytics). Puoi utilizzare questo tipo di etichetta per la contabilità dei costi o il budget.

  • Etichette del componente: ad esempio component:redis, component:frontend, component:ingest e component:dashboard.

  • Etichette dell'ambiente o della fase: ad esempio, environment:production e environment:test.

  • Etichette stato: ad esempio state:active, state:readytodelete e state:archive.

  • Etichette di proprietà: utilizzate per identificare i team responsabili delle operazioni, ad esempio: team:shopping-cart.

Non è consigliabile creare un numero elevato di etichette univoche, ad esempio per timestamp o valori singoli per ogni chiamata API. Il problema di questo approccio è che, quando i valori cambiano spesso o con chiavi che ingombrano il catalogo, è difficile filtrare e generare report sulle risorse in modo efficace.

Etichette e tag

Le etichette possono essere utilizzate come annotazioni interrogabili per le risorse, ma non possono essere utilizzate per impostare le condizioni dei criteri. I tag forniscono un modo per consentire o negare in modo condizionale i criteri a seconda che una risorsa abbia un tag specifico, fornendo un controllo granulare sui criteri. Per ulteriori informazioni, consulta la Panoramica dei tag.

Creazione di un deployment con le etichette

Quando crei un deployment, puoi aggiungere etichette fornendo una o più coppie chiave-valore come etichette quando crei il deployment. Se hai già un deployment, puoi aggiornarlo per aggiungere nuove etichette o modificare quelle esistenti.

Devi utilizzare gcloud CLI o l'API per creare un deployment con etichette.

gcloud

In gcloud, aggiungi etichette al deployment fornendo il flag --labels, seguito da un elenco separato da virgole di coppie chiave-valore. Ad esempio, il seguente comando aggiunge due etichette al deployment, environment=production e storage=media:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels environment=production,storage=media

Per visualizzare le etichette applicate al deployment, recupera una descrizione del deployment:

gcloud deployment-manager deployments describe example-deployment
---
fingerprint: 0p03t0z31PQLOrGH8KdhWQ==
id: '2204841443843636456'
insertTime: '2017-04-18T09:42:47.323-07:00'
labels:
- key: environment
  value: production
- key: storage
  value: media
manifest: manifest-1492533767362
name: example-deployment
operation:
  endTime: '2017-04-18T09:43:04.581-07:00'
  name: operation-1492533767010-54d7398ff76d1-7930b926-f64e72ae
  operationType: insert
  progress: 100
  startTime: '2017-04-18T09:42:48.034-07:00'
  status: DONE
  user:user@example.com

API

Nell'API, segui le istruzioni per creare il deployment e includi la nuova proprietà labels nel corpo della richiesta. Ad esempio:

{
  "name": "example-deployment",
  "target": {
    "config": {
      "content": "..."
      },
   }
  "labels": [
  {
    "key": "environment",
    "value": "production"
  },
  {
    "key": "storage",
    "value": "media"
  }
 ]
}

Rimozione di etichette

Console

  1. Vai alla pagina Deployment nella console Google Cloud.

    Vai alla pagina Deployment

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Seleziona la casella accanto al deployment da cui vuoi rimuovere le etichette. Viene visualizzato un riquadro laterale.

  4. Fai clic sulla X accanto a ogni etichetta da rimuovere.

  5. Salva le modifiche.

gcloud

In gcloud, rimuovi le etichette utilizzando il comando deployments update e fornendo il flag --remove-labels, seguito da un elenco separato da virgole di chiavi di etichetta da rimuovere.

Ad esempio, quanto segue rimuove un'etichetta con la chiave environment:

gcloud deployment-manager deployments update example-deployment --remove-labels environment

API

Nell'API, segui le istruzioni per aggiornare il deployment e includi un aggiornamento del deployment che non contiene la proprietà labels nel corpo della richiesta, rimuovendo di fatto le etichette.

Aggiunta o aggiornamento di etichette

Puoi aggiungere nuove etichette o aggiornarle su deployment esistenti.

Console

  1. Vai alla pagina Deployment nella console Google Cloud.

    Vai alla pagina Deployment

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Seleziona la casella accanto al deployment da cui vuoi aggiornare le etichette. Si apre un riquadro laterale.

  4. Per modificare i valori delle etichette, aggiorna le voci appropriate delle etichette. Se vuoi modificare la chiave di etichetta, devi eliminare l'etichetta e aggiungerla di nuovo con la nuova chiave.

  5. Salva le modifiche.

gcloud

In gcloud, aggiorna o aggiungi nuove etichette utilizzando il comando deployments update e fornendo il flag --update-labels, seguito da un elenco separato da virgole delle etichette aggiornate:

Ad esempio, quanto segue aggiorna l'etichetta environment:

gcloud deployment-manager deployments update example-deployment --update-labels environment=production

API

Nell'API, segui le istruzioni per aggiornare il deployment e nel corpo della richiesta ometti la proprietà labels, che rimuove le etichette dal deployment.

Aggiungere etichette durante le anteprime del deployment

Prima di creare un deployment, puoi visualizzarlo in anteprima. Nell'ambito dell'anteprima, puoi assegnare etichette al deployment in anteprima. Ad esempio:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels environment=production --preview

Per modificare le etichette durante l'anteprima, devi aggiornare l'anteprima con le nuove etichette. Per ulteriori informazioni sulle anteprime, consulta la documentazione relativa all'anteprima di una configurazione.

Filtrare le ricerche tramite etichette

Puoi cercare le risorse e filtrare i risultati in base alle etichette.

Console

  1. Vai alla pagina Deployment nella console Google Cloud.

    Vai alla pagina Deployment

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Nella barra di ricerca, inizia a digitare labels.. La barra di ricerca elencherà automaticamente le etichette in base alle quali puoi applicare il filtro.

gcloud

In gcloud, effettua una richiesta list e utilizza il flag --filter. Per filtrare in base alle etichette, utilizza la sintassi labels.[KEY]=[VALUE]. Ad esempio, se vuoi filtrare in base a un'etichetta con environment come chiave e production come valore, puoi eseguire questo comando:

gcloud deployment-manager deployments list --filter labels.environment=production

Per una documentazione completa sulla sintassi dei filtri nellgcloud CLI, consulta la documentazione di gcloud topic filters.

API

Nell'API, effettua una richiesta di elenco con un parametro di query filter codificato nell'URL. Ad esempio, per filtrare in base a una chiave di etichetta environment uguale al valore production, effettua la seguente richiesta GET:

GET https://www.googleapis.com/deploymentmanager/v2/deployments/list?filter=labels.environment+eq+production

Per ulteriori informazioni, leggi la documentazione filter nel riferimento API.

Passaggi successivi