Vous pouvez également ajouter des libellés aux ressources Compute Engine associées aux ressources de cluster, telles que les instances de machines virtuelles et les disques.
Qu'est-ce qu'un libellé ?
Un libellé est une paire clé-valeur que vous pouvez attribuer aux clusters et aux tâches Google Cloud Dataproc. Elle vous aide à organiser ces ressources et à gérer vos coûts à grande échelle avec la précision dont vous avez besoin. Vous pouvez associer une étiquette à chaque ressource, puis filtrer les ressources par étiquette. Les informations sur les étiquettes sont transmises au système de facturation. Ainsi, vous pouvez trier vos frais facturés par étiquette. Grâce aux rapports de facturation intégrés, vous pouvez filtrer et regrouper les coûts par étiquette de ressource. Vous pouvez également utiliser des étiquettes pour interroger les exportations de données de facturation.
Exigences relatives aux libellés
Les libellés appliqués à une ressource doivent répondre aux exigences suivantes :
- Chaque ressource peut comporter jusqu'à 64 étiquettes.
- Chaque libellé doit correspondre à une paire clé/valeur.
- Les clés doivent comporter un (1) caractère au minimum et 63 au maximum, et ne peuvent pas être vides. Les valeurs peuvent être vides et comporter 63 caractères au maximum.
- Les clés et les valeurs ne peuvent contenir que des lettres minuscules, des chiffres, des traits de soulignement et des tirets. Tous les caractères doivent être au format d'encodage UTF-8. Les caractères internationaux sont autorisés. Les clés doivent commencer par une lettre minuscule ou un caractère international.
- La partie clé d'un libellé doit être unique au sein d'une ressource spécifique. Cependant, vous pouvez utiliser la même clé avec plusieurs ressources.
Ces limites s'appliquent à la clé et à la valeur de chaque libellé, ainsi qu'aux ressources Google Cloud individuelles associées à des libellés. Vous pouvez appliquer autant de libellés que vous le souhaitez à toutes les ressources d'un projet.
Cas d'utilisation courants des libellés
Voici quelques cas d'utilisation courants des étiquettes :
Libellés d'équipe ou de centre de coût : ajoutez des libellés en fonction de l'équipe ou du centre de coûts pour distinguer les clusters Dataproc et les tâches appartenant à différentes équipes (par exemple,
team:research
etteam:analytics
). Vous pouvez utiliser ce type de libellé pour la comptabilité analytique ou la budgétisation.Libellés de composant : par exemple,
component:redis
,component:frontend
,component:ingest
etcomponent:dashboard
.Libellés d'environnement ou d'étape : par exemple,
environment:production
etenvironment:test
.Libellés d'état : par exemple,
state:active
,state:readytodelete
etstate:archive
.Libellés de propriété : permettent d'identifier les équipes responsables des opérations (par exemple,
team:shopping-cart
).
Nous vous déconseillons de créer de grands nombres d'étiquettes uniques (par exemple, pour les horodatages ou les valeurs individuelles pour chaque appel d'API). Le problème avec cette approche est que lorsque les valeurs changent fréquemment ou que des clés encombrent le catalogue, il est difficile de filtrer efficacement les ressources et de créer des rapports associés.
Libellés et tags
Pour les ressources, les libellés peuvent être utilisés comme des annotations qu'il est possible d'interroger. Cependant, ils ne peuvent pas être utilisés pour définir des conditions dans le cadre de vos stratégies. Les tags permettent d'autoriser ou de refuser des règles de manière conditionnelle selon qu'une ressource possède un tag spécifique ou non, grâce à un contrôle ultraprécis sur les règles. Pour en savoir plus, consultez la présentation des tags.
Créer et utiliser les libellés Dataproc
Commande gcloud
À l'aide de la Google Cloud CLI, vous pouvez spécifier un ou plusieurs libellés à appliquer à un cluster ou une tâche Dataproc au moment de la création ou de l'envoi.
gcloud dataproc clusters create args --labels environment=production,customer=acme
gcloud dataproc jobs submit args --labels environment=production,customer=acme
Une fois qu'un cluster ou un job Dataproc a été créé, vous pouvez mettre à jour les étiquettes associées à cette ressource à l'aide de la 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
De même, vous pouvez utiliser la Google Cloud CLI pour filtrer les ressources Dataproc par libellé à l'aide d'une expression de filtre au format suivant : 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"
Pour plus d'informations sur l'écriture d'expressions de filtre, consultez les sections clusters.list et jobs.list dans la documentation de l'API Dataproc.
API REST
Les libellés peuvent être associés aux ressources Dataproc via l'API REST Dataproc. Les API clusters.create et jobs.submit peuvent être utilisées pour associer des libellés à un cluster ou à une tâche lors de la création ou de l'envoi.
Les API clusters.patch et jobs.patch peuvent être utilisées pour modifier les libellés lors de la création de ressources. Voici un exemple de corps JSON de requête "cluster.create" qui inclut le libellé key1:value
associé au 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" } }
Les API clusters.list et jobs.list peuvent être utilisées pour répertorier les ressources correspondant à un filtre spécifié, au format suivant : labels.<key=value>
.
Voici un exemple de requête HTTPS GET clusters.list à l'API Dataproc qui spécifie un filtre de libellé key=value
. L'appelant insère project
, region
, un filtre label-key
et label-value
, et un élément api-key
. Notez que cet exemple de demande est divisé en deux lignes pour faciliter la lecture.
GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters? filter=labels.label-key=label-value&key=api-key
Pour plus d'informations sur l'écriture d'expressions de filtre, consultez les sections clusters.list et jobs.list dans la documentation de l'API Dataproc.
Console
Vous pouvez spécifier un ensemble d'étiquettes à ajouter à une ressource Dataproc au moment de leur création ou de leur envoi à l'aide de la console Google Cloud.
- Ajoutez des libellés à un cluster à partir de la section "Libellés" du panneau "Personnaliser le cluster" de la page Dataproc Créer un cluster.
- Ajoutez des libellés à une tâche à partir de la page Dataproc Envoyer une tâche.
Une fois qu'une ressource Dataproc a été créée, vous pouvez mettre à jour les libellés associés à cette ressource. Pour cela, vous devez d'abord cliquer sur SHOW INFO PANEL
en haut à gauche de la page. Voici un exemple tiré de la page Dataproc→Répertorier les clusters.
Une fois le panneau d'informations affiché, vous pouvez mettre à jour les libellés de vos ressources Dataproc. Vous trouverez ci-dessous un exemple de mise à jour des libellés d'un cluster Dataproc.
Il est également possible de mettre à jour des libellés pour plusieurs éléments au cours d'une seule et même opération. Dans l'exemple ci-dessous, les étiquettes de plusieurs tâches Dataproc sont mises à jour en même temps.
Les libellés permettent de filtrer les ressources Dataproc affichées sur les pages Dataproc → Répertorier les clusters et Dataproc → Répertorier les tâches. En haut de la page, vous pouvez utiliser le modèle de recherche labels.<labelname>=<value>
pour filtrer les ressources par libellé.
Libellés appliqués automatiquement
Lors de la création ou de la mise à jour d'un cluster, Dataproc applique automatiquement plusieurs libellés au cluster et à ses ressources. Par exemple, Dataproc applique des libellés aux machines virtuelles, aux disques persistants et aux accélérateurs lors de la création d'un cluster. Les libellés appliqués automatiquement comportent un préfixe goog-dataproc
spécial.
Les libellés goog-dataproc
suivants sont automatiquement appliqués aux ressources Dataproc. Toutes les valeurs que vous fournissez pour les libellés goog-dataproc
réservés lors de la création du cluster remplacent les valeurs fournies automatiquement. Pour cette raison, il n'est pas recommandé de fournir vos propres valeurs pour ces libellés.
Libellé | Description |
---|---|
goog-dataproc-cluster-name |
Nom du cluster spécifié par l'utilisateur |
goog-dataproc-cluster-uuid |
ID de cluster unique |
goog-dataproc-location |
Point de terminaison de cluster régional Dataproc |
Vous pouvez utiliser ces libellés appliqués automatiquement de différentes manières, par exemple :
- Rechercher et filtrer des ressources Dataproc
- Filtrer les données de facturation pour calculer les coûts Dataproc