Vous pouvez appliquer des libellés utilisateur aux clusters et aux tâches Managed Service pour Apache Spark afin de regrouper ces ressources en vue de les filtrer et de les répertorier ultérieurement. Vous associez des libellés aux ressources lors de la création de la ressource, lorsque vous créez un cluster ou envoyez une tâche. Une fois qu'une ressource est associée à un libellé, celui-ci est propagé aux opérations effectuées sur la ressource (création, mise à jour, correction ou suppression de cluster ; envoi, mise à jour, annulation ou suppression de tâches), ce qui vous permet de filtrer et de répertorier les clusters, les tâches et les opérations par libellé.
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 Managed Service pour Apache Spark. 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 cluster ou tâche peut comporter jusqu'à 32 libellés.
- 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'au cluster ou à la tâche Managed Service pour Apache Spark individuel associé à 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 libellés :
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 et les tâches Managed Service pour Apache Spark appartenant à différentes équipes (par exemple,
team:researchetteam: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:ingestetcomponent:dashboard.Libellés d'environnement ou d'étape : par exemple,
environment:productionetenvironment:test.Libellés d'état : par exemple,
state:active,state:readytodeleteetstate: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 des libellés Managed Service pour Apache Spark
Commande gcloud
Vous pouvez spécifier un ou plusieurs libellés à appliquer à un cluster ou une tâche Managed Service pour Apache Spark au moment de la création ou de l'envoi à l'aide de Google Cloud CLI.
gcloud dataproc clusters create args --labels environment=production,customer=acmegcloud dataproc jobs submit args --labels environment=production,customer=acme
Une fois le cluster ou la tâche Managed Service pour Apache Spark créés, vous pouvez mettre à jour les libellés associés à cette ressource à l'aide de Google Cloud CLI.
gcloud dataproc clusters update args --update-labels environment=production,customer=acmegcloud dataproc jobs update args --update-labels environment=production,customer=acme
De même, vous pouvez utiliser Google Cloud CLI pour filtrer les ressources Managed Service pour Apache Spark par libellé à l'aide de
l'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
Des libellés peuvent être associés à des clusters ou à des tâches Managed Service pour Apache Spark via l'
API REST Managed Service pour Apache Spark. Les API clusters.create,
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,
jobs.patch
peuvent être utilisées pour modifier les libellés après la création d'un cluster. 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 clusters ou les tâches 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 de libellés à ajouter à un cluster ou une tâche Managed Service pour Apache Spark au moment de sa création ou de son envoi à l'aide de la Google Cloud console.
- Ajoutez des libellés à un cluster à partir de la section "Libellés" du panneau "Personnaliser le cluster" de la page Managed Service pour Apache Spark Créer un cluster.
- Ajoutez des libellés à une tâche à partir de la page Managed Service pour Apache Spark Envoyer une tâche.
Une fois le cluster ou la tâche Managed Service pour Apache Spark créés ou envoyés, vous pouvez mettre à jour les libellés associés au cluster ou à la tâche. Pour mettre à jour les libellés, cliquez sur la case à cocher d'un cluster ou d'une tâche répertoriés, puis cliquez sur SHOW INFO PANEL. Voici un exemple tiré de la page Managed Service pour Apache Spark → Répertorier les clusters.

Une fois le panneau d'informations affiché, vous pouvez mettre à jour les libellés de votre cluster ou de votre tâche Managed Service pour Apache Spark. Vous trouverez ci-dessous un exemple de mise à jour des libellés pour un cluster Managed Service pour Apache Spark.

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 libellés de plusieurs tâches Managed Service pour Apache Spark sont mis à jour en même temps.

Les libellés vous permettent de filtrer les ressources Managed Service pour Apache Spark affichées dans les pages [Managed Service pour Apache Spark → Répertorier les clusters](https://console.cloud.google.com/dataproc/clusters) et [Managed Service pour Apache Spark → Répertorier les tâches](https://console.cloud.google.com/dataproc/jobs). En haut de la page, vous pouvez utiliser le modèle de recherche `labels.

Étiquettes appliquées automatiquement
Lors de la création ou de la mise à jour d'un cluster, Managed Service pour Apache Spark applique automatiquement plusieurs libellés au cluster et à ses ressources. Par exemple, Managed Service pour Apache Spark 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 Managed Service pour Apache Spark. 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 |
Managed Service pour Apache Spark Point de terminaison de cluster régional |
Vous pouvez utiliser ces libellés appliqués automatiquement de différentes manières, par exemple :
- Rechercher et filtrer des ressources Managed Service pour Apache Spark
- Filtrer les données de facturation pour calculer les coûts Managed Service pour Apache Spark
Étape suivante
Découvrez comment créer et mettre à jour des libellés pour des projets à l'aide de Resource Manager.
Découvrez comment organiser des ressources à l'aide de libellés.