Puoi anche aggiungere etichette alle risorse Compute Engine associate alle risorse del cluster, ad esempio istanze di macchine virtuali e dischi.
Cosa sono le etichette?
Un'etichetta è una coppia chiave-valore che puoi assegnare ai cluster e ai job Google Cloud Dataproc. 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 e poi filtrare le risorse in base alle etichette. Le informazioni relative alle etichette vengono inoltrate al sistema di fatturazione, che consente di suddividere gli addebiti fatturati per etichetta. Con i report di fatturazione integrati, puoi filtrare e raggruppare i costi in base alle etichette delle risorse. Puoi anche utilizzare le etichette 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 massima di 63 caratteri e non possono essere vuote. 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 i caratteri internazionali. Le chiavi devono iniziare con una lettera minuscola o un carattere internazionale.
- La parte della 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
Ecco alcuni casi d'uso comuni per le etichette:
Etichette di team o centro di costo: aggiungi etichette basate su team o centro di costo per distinguere i cluster e i job Dataproc di proprietà di team diversi (ad esempio
team:research
eteam:analytics
). Puoi utilizzare questo tipo di etichetta per la contabilità dei costi o la definizione del budget.Etichette dei componenti: ad esempio
component:redis
,component:frontend
,component:ingest
ecomponent:dashboard
.Etichette di ambiente o fase: ad esempio,
environment:production
eenvironment:test
.Etichette di stato: ad esempio
state:active
,state:readytodelete
estate: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 i timestamp o i singoli valori per ogni chiamata API. Il problema di questo approccio è che, quando i valori cambiano di frequente o con chiavi che ingombrano il catalogo, diventa 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 condizioni sui criteri. I tag forniscono un modo per consentire o negare in modo condizionale i criteri a seconda che una risorsa abbia un tag specifico, offrendo un controllo granulare sui criteri. Per ulteriori informazioni, consulta la panoramica dei tag.
Creazione e utilizzo delle etichette Dataproc
Comando gcloud
Puoi specificare una o più etichette da applicare a un cluster o a un job Dataproc al momento della creazione o dell'invio utilizzando Google Cloud CLI.
gcloud dataproc clusters create args --labels environment=production,customer=acme
gcloud dataproc jobs submit args --labels environment=production,customer=acme
Una volta creato un cluster o un job Dataproc, puoi aggiornare le etichette associate alla risorsa utilizzando Google Cloud CLI.
gcloud dataproc clusters update args --update-labels environment=production,customer=acme
gcloud dataproc jobs update args --update-labels environment=production,customer=acme
Analogamente, puoi utilizzare Google Cloud CLI per filtrare le risorse Dataproc per etichetta utilizzando
un'espressione di filtro del seguente formato: labels.<key=value>
.
gcloud dataproc clusters list \ --region=region \ --filter="status.state=ACTIVE AND labels.environment=production"
gcloud dataproc jobs list \ --region=region \ --filter="status.state=ACTIVE AND labels.customer=acme"
Per ulteriori informazioni su come scrivere un'espressione di filtro, consulta la documentazione dell'API Dataproc per clusters.list e jobs.list.
API REST
Le etichette possono essere associate alle risorse Dataproc tramite l'API REST Dataproc. Le API clusters.create,
jobs.submit
possono essere utilizzate per associare etichette a un cluster o a un job al momento della creazione o dell'invio.
Le API clusters.patch e
jobs.patch
possono essere utilizzate per modificare le etichette dopo la creazione della risorsa. Ecco il corpo JSON di una richiesta cluster.create che include l'associazione di un'etichetta key1:value
al cluster.
{ "clusterName":"cluster-1", "projectId":"my-project", "config":{ "configBucket":"", "gceClusterConfig":{ "networkUri":".../networks/default", "zoneUri":".../zones/us-central1-f" }, "masterConfig":{ "numInstances":1, "machineTypeUri":"..../machineTypes/n1-standard-4", "diskConfig":{ "bootDiskSizeGb":500, "numLocalSsds":0 } }, "workerConfig":{ "numInstances":2, "machineTypeUri":"...machineTypes/n1-standard-4", "diskConfig":{ "bootDiskSizeGb":500, "numLocalSsds":0 } } }, "labels":{ "key1":"value1" } }
Le API clusters.list
e jobs.list
possono essere utilizzate per elencare le risorse corrispondenti a un filtro specificato utilizzando
il seguente formato: labels.<key=value>
.
Ecco un esempio di richiesta GET HTTPS dell'API Dataproc
clusters.list
che specifica un filtro delle etichette key=value
. Il chiamante inserisce
project
, region
, un filtro label-key
e label-value
e un api-key
. Tieni presente che questa richiesta di esempio è suddivisa in due righe per facilitarne la lettura.
GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters? filter=labels.label-key=label-value&key=api-key
Per ulteriori informazioni su come scrivere un'espressione di filtro, consulta la documentazione dell'API Dataproc per clusters.list e jobs.list.
Console
Puoi specificare un insieme di etichette da aggiungere a una risorsa Dataproc al momento della creazione o dell'invio utilizzando la console Google Cloud.
- Aggiungi etichette a un cluster dalla sezione Etichette del riquadro Personalizza cluster della pagina Crea un cluster di Dataproc.
- Aggiungi etichette a un job dalla pagina Dataproc Invia un job.
Una volta creata una risorsa Dataproc, puoi aggiornare le etichette associate. Per aggiornare le etichette, devi prima fare clic su SHOW INFO PANEL
in alto a sinistra nella pagina. Questo è un esempio della pagina Dataproc→Elenca cluster.
Una volta visualizzato il riquadro delle informazioni, puoi aggiornare le etichette per le risorse Dataproc. Di seguito è riportato un esempio di aggiornamento delle etichette per un cluster Dataproc.
È anche possibile aggiornare le etichette per più elementi in un'unica operazione. In questo esempio, le etichette vengono aggiornate contemporaneamente per più job Dataproc.
Le etichette ti consentono di filtrare le risorse Dataproc mostrate nelle pagine Dataproc→Elenca cluster e Dataproc→Elenca job. Nella parte superiore della pagina, puoi utilizzare il pattern di ricerca labels.<labelname>=<value>
per filtrare le risorse in base a un'etichetta.
Etichette applicate automaticamente
Quando crei o aggiorni un cluster, Dataproc applica automaticamente diverse etichette al cluster e alle risorse del cluster. Ad esempio, Dataproc applica le etichette alle macchine virtuali, ai dischi permanenti e agli acceleratori quando viene creato un cluster. Le etichette applicate automaticamente hanno un prefisso goog-dataproc
speciale.
Le seguenti etichette goog-dataproc
vengono applicate automaticamente alle risorse Dataproc. Eventuali valori forniti per le etichette riservategoog-dataproc
al momento della creazione del cluster sostituiranno i valori forniti automaticamente. Per questo motivo, non è consigliabile fornire i tuoi valori per queste etichette.
Etichetta | Descrizione |
---|---|
goog-dataproc-cluster-name |
Nome del cluster specificato dall'utente |
goog-dataproc-cluster-uuid |
ID cluster univoco |
goog-dataproc-location |
Endpoint del cluster regionale Dataproc |
Puoi utilizzare queste etichette applicate automaticamente in molti modi, ad esempio:
- Ricerca e filtri per le risorse Dataproc
- Filtrare i dati di fatturazione per calcolare i costi di Dataproc