Les libellés sont des paires clé/valeur qui peuvent être utilisées sur Google Cloud pour regrouper des ressources liées ou associées. Par exemple, sur Compute Engine, vous pouvez utiliser des libellés pour regrouper les VM dans des catégories telles que la production, la préproduction ou le développement, afin de pouvoir rechercher des ressources appartenant à chaque étape de développement.
Après avoir ajouté des libellés à vos ressources, vous pouvez tirer parti de la fonctionnalité de filtrage imbriqué pour effectuer des recherches plus précises sur vos ressources avec des libellés.
Avant de commencer
- Consultez la documentation sur les disques persistants.
- Lisez la documentation sur les images.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- 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.
Libellés d'équipe ou de centre de coût : ajoutez des libellés en fonction de l'équipe ou du centre de coût pour distinguer les instances appartenant à différentes équipes (par exemple,
team:research
etteam:analytics
). Vous pouvez utiliser ce type de libellés 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
).- Libellés de machine virtuelle : un libellé peut être associé à une machine virtuelle. Les tags de machine virtuelle que vous avez définis précédemment apparaissent sous la forme d'un libellé sans valeur.
- Instances de machines virtuelles (VM)
- Images
- Disques persistants
- Instantanés de disque persistant
- Buckets Cloud Storage
- Ressources réseau :
Accédez à la page de ressources que vous souhaitez créer.
- Pour les instances de VM, accédez à la page Créer une instance.
- Pour les disques, consultez la section Créer un disque.
- Pour les instantanés, consultez la section Créer un instantané.
- Pour les images, consultez la section Créer une image.
Sous Libellés, cliquez sur
Ajouter un libellé.Poursuivez le processus de création.
- Pour les instances de VM, utilisez la commande
gcloud compute instances create
. - Pour les instantanés, exécutez la commande
gcloud compute disks snapshot
. - Pour les images, utilisez la commande
gcloud compute images create
. - Pour les disques, utilisez la commande
gcloud compute disks create
. - Pour les instances de VM, utilisez la méthode
instances.insert()
. - Pour les instantanés, utilisez la méthode
disks.createSnapshot()
. - Pour les images, utilisez la méthode
images.insert()
. - Pour les disques, utilisez la méthode
disks.insert()
. Accédez à la page correspondant à la ressource pour laquelle vous souhaitez ajouter des libellés.
- Pour les instances, accédez à la page instances de VM.
- Pour les instantanés, accédez à la page Instantanés.
- Pour les images, accédez à Images.
- Pour les disques, accédez à Disques.
- Pour les adresses IP externes statiques, accédez à Adresses IP externes.
- Pour les tunnels VPN, accédez à VPN.
Cochez les cases à côté des ressources auxquelles ajouter un libellé.
Pour développer la colonne des libellés, cliquez sur Afficher le panneau d'informations.
Dans le panneau, sélectionnez Libellés.
Pour ajouter des libellés, cliquez sur
Ajouter un libellé et ajoutez la paire clé-valeur.Pour mettre à jour des libellés, sélectionnez les libellés existants et modifiez leurs valeurs.
Enregistrez les modifications.
- Pour les instances de VM, utilisez la commande
gcloud compute instances update
. - Pour les instantanés, exécutez la commande
gcloud compute snapshots update
. - Pour les images, utilisez la commande
gcloud compute images update
. - Pour les disques, utilisez la commande
gcloud compute disks update
. - Pour les règles de transfert, utilisez la commande
gcloud compute forwarding-rules update
. - Pour les adresses IP externes statiques, utilisez la commande
gcloud beta compute addresses update
. - Pour les tunnels VPN, utilisez la commande
gcloud beta compute vpn-tunnels update
. - Pour les instances de VM, utilisez la méthode
instances.setLabels()
. - Pour les instantanés, utilisez la méthode
snapshots.setLabels()
. - Pour les images, utilisez la méthode
images.setLabels()
. - Pour les disques, utilisez la méthode
disks.setLabels()
. - Pour les règles de transfert, utilisez la méthode
forwardingRules.setLabels()
. - Pour les adresses IP externes statiques régionales, utilisez la méthode en version bêta
addresses.setLabels()
. - Pour les adresses IP externes statiques globales, utilisez la méthode en version bêta
globalAddresses.setLabels()
. - Pour les tunnels VPN, utilisez la méthode en version bêta
vpnTunnels.setLabels()
. Accédez à la page des ressources.
- Pour les instances, accédez à la page instances de VM.
- Pour les instantanés, accédez à la page Instantanés.
- Pour les images, accédez à Images.
- Pour les disques, accédez à Disques.
- Pour les adresses IP externes statiques, accédez à Adresses IP externes.
- Pour les tunnels VPN, accédez à VPN.
Cliquez sur la ressource pour en afficher les détails.
Recherchez les libellés.
- Pour les instances de VM, utilisez la commande
gcloud compute instances describe
. - Pour les instantanés, exécutez la commande
gcloud compute snapshots describe
. - Pour les images, utilisez la commande
gcloud compute images describe
. - Pour les disques, utilisez la commande
gcloud compute disks describe
. - Pour les règles de transfert, utilisez la commande
gcloud compute forwarding-rules describe
. - Pour les adresses IP externes statiques, utilisez la commande
gcloud beta compute addresses describe
. - Pour les tunnels VPN, utilisez la commande
gcloud beta compute vpn-gateways describe
. - Pour les instances de VM, utilisez la méthode
instances.get()
. - Pour les instantanés, utilisez la méthode
snapshots.get()
. - Pour les images, utilisez la méthode
images.get()
. - Pour les disques, utilisez la méthode
disks.get()
. - Pour les règles de transfert, utilisez la méthode
forwardingRules.get()
. - Pour les adresses IP externes statiques régionales, utilisez la méthode en version bêta
addresses.get()
. - Pour les adresses IP externes statiques globales, utilisez la méthode en version bêta
globalAddresses.get()
. - Pour les tunnels VPN, utilisez la méthode en version bêta
vpnTunnels.get()
. - PROJECT_ID : ID du projet
- ZONE : zone de la VM
- VM_NAME : nom de la VM
- Pour les instances de VM, utilisez la méthode
instances.get()
. - Pour les instantanés, utilisez la méthode
snapshots.get()
. - Pour les images, utilisez la méthode
images.get()
. - Pour les disques, utilisez la méthode
disks.get()
. - Pour les règles de transfert, utilisez la méthode
forwardingRules.get()
. - Pour les adresses IP externes statiques régionales, utilisez la méthode en version bêta
addresses.get()
. - Pour les adresses IP externes statiques globales, utilisez la méthode en version bêta
globalAddresses.get()
. - Pour les tunnels VPN, utilisez la méthode en version bêta
vpnTunnels.get()
. Accédez à la page correspondant à la ressource pour laquelle vous souhaitez ajouter des libellés.
- Pour les instances, accédez à la page instances de VM.
- Pour les instantanés, accédez à la page Instantanés.
- Pour les images, accédez à Images.
- Pour les disques, accédez à Disques.
- Pour les adresses IP externes statiques, accédez à Adresses IP externes.
- Pour les tunnels VPN, accédez à VPN.
Cochez les cases à côté des ressources pour lesquelles vous souhaitez supprimer des libellés.
Pour développer la colonne des libellés, cliquez sur Afficher le panneau d'informations.
Pour supprimer un libellé, cliquez sur
Supprimer.Enregistrez les modifications.
- Pour les instances de VM, utilisez la commande
gcloud compute instances update
. - Pour les instantanés, exécutez la commande
gcloud compute snapshots update
. - Pour les images, utilisez la commande
gcloud compute images update
. - Pour les disques, utilisez la commande
gcloud compute disks update
. - Pour les règles de transfert, utilisez la commande
gcloud compute forwarding-rules update
. - Pour les adresses IP externes statiques, utilisez la commande
gcloud beta compute addresses update
. - Pour les tunnels VPN, utilisez la commande
gcloud beta compute vpn-tunnels update
. - Pour les instances de VM, utilisez la méthode
instances.setLabels()
. - Pour les instantanés, utilisez la méthode
snapshots.setLabels()
. - Pour les images, utilisez la méthode
images.setLabels()
. - Pour les disques, utilisez la méthode
disks.setLabels()
. - Pour les règles de transfert, utilisez la méthode
forwardingRules.setLabels()
. - Pour les adresses IP externes statiques régionales, utilisez la méthode en version bêta
addresses.setLabels()
. - Pour les adresses IP externes statiques globales, utilisez la méthode en version bêta
globalAddresses.setLabels()
. - Pour les tunnels VPN, utilisez la méthode en version bêta
vpnTunnels.setLabels()
. Accédez à la page correspondant à la ressource pour laquelle vous souhaitez obtenir une liste filtrée de ressources.
- Pour les instances, accédez à la page instances de VM.
- Pour les instantanés, accédez à la page Instantanés.
- Pour les images, accédez à Images.
- Pour les disques, accédez à Disques.
- Pour les adresses IP externes statiques, accédez à Adresses IP externes.
- Pour les tunnels VPN, accédez à VPN.
Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.
Dans la barre de recherche, saisissez la clé, la valeur ou la paire clé/valeur. Les résultats incluent les correspondances partielles.
Par exemple, pour n'afficher que les ressources associées au libellé
env:dev
, vous pouvez saisir l'un des éléments suivants :- Saisissez la clé :
env
- Saisissez la valeur :
dev
- Saisissez la paire clé-valeur :
env:dev
- Saisissez la clé :
- Pour les instances de VM, utilisez la commande
gcloud compute instances list
. - Pour les instantanés, exécutez la commande
gcloud compute snapshots list
. - Pour les images, utilisez la commande
gcloud compute images list
. - Pour les disques, utilisez la commande
gcloud compute disks list
. - Pour les règles de transfert, utilisez la commande
gcloud compute forwarding-rules list
. - Pour les adresses IP externes statiques, utilisez la commande
gcloud beta compute addresses list
. - Pour les tunnels VPN, utilisez la commande
gcloud beta compute vpn-tunnels list
. - Pour les instances de VM, utilisez la méthode
instances.list()
. - Pour les instantanés, utilisez la méthode
snapshots.list()
. - Pour les images, utilisez la méthode
images.list()
. - Pour les disques, utilisez la méthode
disks.list()
. - Pour les règles de transfert, utilisez la méthode
forwardingRules.list()
. - Pour les adresses IP externes statiques régionales, utilisez la méthode en version bêta
addresses.list()
. - Pour les adresses IP externes statiques globales, utilisez la méthode en version bêta
globalAddresses.list()
. - Pour les tunnels VPN, utilisez la méthode en version bêta
vpnTunnels.list()
. - Apprenez à ajouter des tags réseau.
- Découvrez le filtrage.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Qu'est-ce qu'un libellé ?
Un libellé est une paire clé-valeur que vous pouvez attribuer aux instances Google Cloud. 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 :
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 :
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.
Utiliser des libellés sur Compute Engine
Vous pouvez appliquer des libellés aux ressources Compute Engine suivantes :
Vous pouvez également utiliser des libellés sur les composants Google Cloud liés, tels que les suivants :
Par exemple, vous pouvez ajouter les libellés suivants en tant que paires clé/valeur à vos ressources :
{ "labels": { "vmrole": "webserver", "environment": "production", "location": "west",... } }
Créer des ressources avec des libellés
Lors de la création d'une ressource, vous pouvez appliquer des libellés à cette ressource.
Console
gcloud
Pour ajouter un libellé, utilisez la sous-commande
create
avec l'option--labels
. Vous pouvez ajouter des libellés aux ressources Compute Engine à l'aide des commandesgcloud
suivantes :Exemple
gcloud compute instances create ... \ --labels webserver=backend,media=images
API
Dans l'API, lors de la requête
POST
pour l'ajout d'une nouvelle ressource, ajoutez la propriétélabels
dans le corps de la requête afin d'appliquer des libellés à la nouvelle ressource.Par exemple, l'extrait suivant envoie une requête
POST
pour créer une instance de VM avec les libelléswebserver:backend
etmedia:images
:POST https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances { "name": "myVM", "machineType": "zones/us-central1-f/machineTypes/custom-2-15360-ext", ..., "labels": { "webserver": "backend", "media": "images" } }
Ajouter ou mettre à jour les libellés de ressources existantes
Vous pouvez ajouter des libellés ou mettre à jour des libellés existants sur des ressources à l'aide de la console Google Cloud, de gcloud CLI ou de l'API Compute Engine. Pour ajouter ou mettre à jour des libellés de règles de transfert, utilisez gcloud CLI ou l'API Compute Engine.
Console
gcloud
Pour ajouter ou modifier un libellé, utilisez la sous-commande
update
avec l'option--update-labels
. Vous pouvez mettre à jour les libellés des ressources Compute Engine à l'aide des commandesgcloud
suivantes :Exemple
gcloud compute disks update example-disk \ --update-labels backend=webserver,media=images
Si vous fournissez une clé d'étiquette qui existe déjà, la Google Cloud CLI met à jour la clé existante avec la nouvelle valeur d'étiquette. S'il s'agit d'une nouvelle clé, l'outil l'ajoute à la liste des libellés.
API
Pour ajouter ou mettre à jour des libellés, envoyez une requête
POST
à la méthodesetLabels
de la ressource appropriée avec la dernière empreinte et la liste complète des libellés à appliquer.Comme pour les métadonnées et les tags, si la ressource comprend des libellés existants à conserver, vous devez inclure ces libellés dans la requête, ainsi que les nouveaux libellés à ajouter.
Par exemple, l'extrait suivant envoie une requête
POST
à une instance de VM pour définir les libellésenvironment:test
etan-existing-tag:yes
:POST https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances/example-instance/setLabels { "labels": { "environment": "test", "an-existing-tag": "yes" }, "labelFingerprint": "42WmSpB8rSM=" }
Afficher les libellés
Vous pouvez afficher les libellés des ressources à l'aide de la console Google Cloud, de gcloud CLI ou de l'API Compute Engine. Pour afficher les libellés des règles de transfert, utilisez gcloud CLI ou l'API Compute Engine.
Console
gcloud
Pour afficher les libellés, utilisez la sous-commande
describe
. Vous pouvez afficher les libellés des ressources Compute Engine à l'aide des commandesgcloud
suivantes :Exemple
gcloud compute disks describe example-disk
Le résultat contient les libellés suivants :
... id: '5047929990219134234' kind: compute#disk labelFingerprint: GHZ1Un209U=0 labels: environment: dev department: finance ...
API
Pour récupérer des libellés, envoyez une requête
GET
à la ressource suivante :Par exemple, l'extrait suivant envoie une requête
GET
pour récupérer les libellés d'une instance de VM :GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Remplacez l'élément suivant :
Obtenir l'empreinte d'un libellé pour les requêtes API
Lors de la mise à jour ou de l'ajout de libellés dans l'API, vous devez fournir les empreintes les plus récentes des libellés avec votre requête, afin d'éviter tout conflit avec d'autres requêtes. Une empreinte n'est requise que pour les requêtes API. La console Google Cloud et Google Cloud CLI ne nécessitent pas d'empreinte.
Pour obtenir la dernière version de
labelsFingerprint
, envoyez une requêteGET
aux ressources suivantes :Par exemple, l'extrait suivant renvoie
labelsFingerprint
pour une instance de VM :GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances/example-instance
La réponse contient la propriété
labelFingerprint
:200 OK { "kind": "compute#instance", "id": "4392196237934605253", "creationTimestamp": "2015-09-15T14:05:16.475-07:00", "zone": "https://content.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f", "status": "RUNNING", ... "labels": { "environment": "test" }, "labelFingerprint": "p1ty_9HoBk0=" }
Supprimer un libellé
Vous pouvez supprimer des libellés des ressources à l'aide de la console Google Cloud, de gcloud CLI ou de l'API Compute Engine. Pour supprimer des libellés des règles de transfert, utilisez gcloud CLI ou l'API Compute Engine.
Console
gcloud
Pour ajouter ou modifier un libellé, utilisez la sous-commande
update
avec l'option--remove-labels
. Vous pouvez supprimer les libellés des ressources Compute Engine à l'aide des commandesgcloud
suivantes :Exemple
gcloud compute disks update example-disk \ --remove-labels backend,media
API
Pour supprimer des libellés, envoyez une requête
POST
à la méthodesetLabels
de la ressource suivante en utilisant la dernière empreinte et la liste complète des libellés à appliquer :Fournissez les valeurs
labelsFingerprint
actuelles et une liste vide de libellés pour supprimer tous les libellés, ou fournissez une liste de libellés à conserver (en omettant les libellés à supprimer). Par exemple, l'extrait suivant supprime tous les libellés de la VM :POST https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances/example-instance/setLabels { "labels": { }, "labelFingerprint": "42WmSpB8rSM=" }
Filtrer les résultats de recherche à l'aide de libellés
Vous pouvez effectuer des recherches parmi vos ressources et filtrer les résultats par libellé à l'aide de la console Google Cloud, de gcloud CLI ou de l'API Compute Engine. Pour filtrer les règles de transfert par libellé, utilisez gcloud CLI ou l'API Compute Engine.
Console
gcloud
Pour effectuer un filtrage en fonction des libellés, utilisez la sous-commande
list
des ressources suivantes avec l'indicateur--filter
:La valeur de l'option
--filter
doit être au formatlabels.KEY=VALUE
. Par exemple, si vous souhaitez effectuer un filtrage à l'aide d'un libellé assorti de la cléenv
et de la valeurdev
, vous pouvez exécuter la commande suivante :gcloud compute instances list \ --filter labels.env=dev
Pour en savoir plus sur la syntaxe du filtrage dans gcloud CLI, consultez la documentation de
gcloud topic filters
.API
Pour filtrer des ressources, envoyez une requête
GET
à la méthodelist
des ressources suivantes et incluez le champ de filtre :Par exemple, pour répertorier toutes les VM du projet
myproject
et de la zoneus-central1-a
avec un libellé dont la paire clé-valeur estenv:dev
, définissez le champ de filtre surlabels.env:dev
dans votre requêtelist
. Si vous incluez le champ de filtre en tant que paramètre de chaîne de requête, utilisez la valeur de paramètre encodée au format URLfilter=labels.env%3Adev
:GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances?filter=labels.env%3Adev
Pour en savoir plus, consultez la documentation concernant le paramètre
filter
dans la documentation de référence de l'API Compute Engine.Relation entre les libellés d'instance et les tags réseau
Auparavant, libellés et tags étaient liés. Par exemple, si vous ajoutiez un libellé
webserver:test
à une VM, Compute Engine ajoutait automatiquement un tagwebserver
à la VM.Désormais, libellés et tags sont séparés. Si vous créez un libellé sur une VM, Compute Engine ne crée pas de tag pour cette VM. Si vous souhaitez créer un tag sur une VM, vous devez le créer manuellement.
Pour savoir comment créer des tags, consultez la page Tags réseau.
Étape suivante
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/11/22 (UTC).
-