Exemples de Resource Groups utilisant AWS CLI - AWS Command Line Interface

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemples de Resource Groups utilisant AWS CLI

Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide de AWS Command Line Interface with Resource Groups.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous montrent comment appeler des fonctions de service individuelles, vous pouvez les visualiser dans leur contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la façon de configurer et d'exécuter le code en contexte.

Rubriques

Actions

L'exemple de code suivant montre comment utilisercreate-group.

AWS CLI

Exemple 1 : pour créer un groupe de ressources basé sur des balises

L'create-groupexemple suivant crée un groupe de ressources basé sur des balises d'EC2instances Amazon dans la région actuelle. Il est basé sur une requête pour les ressources étiquetées avec la clé Name et la valeurWebServers. Le nom du groupe esttbq-WebServer. La requête se trouve dans un JSON fichier distinct qui est transmis à la commande.

aws resource-groups create-group \ --name tbq-WebServer \ --resource-query file://query.json

Contenu de query.json :

{ "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" }

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer" }, "ResourceQuery": { "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" } }

Exemple 2 : pour créer un groupe de ressources CloudFormation basé sur une pile

L'create-groupexemple suivant crée un groupe de ressources AWS CloudFormation basé sur une pile nommé. sampleCFNstackgroup La requête inclut toutes les ressources de la CloudFormation pile spécifiée qui sont prises en charge par AWS Resource Groups.

aws resource-groups create-group \ --name cbq-CFNstackgroup \ --resource-query file://query.json

Contenu de query.json :

{ "Type": "CLOUDFORMATION_STACK_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-west-2:123456789012:stack/MyCFNStack/1415z9z0-z39z-11z8-97z5-500z212zz6fz\"}" }

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/cbq-CFNstackgroup", "Name": "cbq-CFNstackgroup" }, "ResourceQuery": { "Type": "CLOUDFORMATION_STACK_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-east-2:123456789012:stack/MyCFNStack/1415z9z0-z39z-11z8-97z5-500z212zz6fz\"}"}' } }

Pour plus d'informations, consultez Create Groups dans le guide de l'utilisateur de AWS Resource Groups.

  • Pour API plus de détails, voir CreateGroupla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-group.

AWS CLI

Pour mettre à jour la description d'un groupe de ressources

L'delete-groupexemple suivant met à jour le groupe de ressources spécifié.

aws resource-groups delete-group \ --group-name tbq-WebServer

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:1234567890:group/tbq-WebServer", "Name": "tbq-WebServer" } }

Pour plus d'informations, consultez la section Delete Groups dans le guide de l'utilisateur de AWS Resource Groups.

  • Pour API plus de détails, voir DeleteGroupla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-group-query.

AWS CLI

Pour associer la requête à un groupe de ressources

L'get-group-queryexemple suivant montre une requête attachée au groupe de ressources spécifié.

aws resource-groups get-group-query \ --group-name tbq-WebServer

Sortie :

{ "GroupQuery": { "GroupName": "tbq-WebServer", "ResourceQuery": { "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" } } }
  • Pour API plus de détails, voir GetGroupQueryla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-group.

AWS CLI

Pour obtenir des informations sur un groupe de ressources

L'get-groupexemple suivant affiche des détails sur le groupe de ressources spécifié. Pour associer la requête au groupe, utilisezget-group-query.

aws resource-groups get-group \ --group-name tbq-WebServer

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer", "Description": "A tag-based query resource group of WebServers." } }
  • Pour API plus de détails, voir GetGroupla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-tags.

AWS CLI

Pour récupérer les balises associées à un groupe de ressources

L'get-tagsexemple suivant affiche les paires clé et valeur de balise associées au groupe de ressources spécifié (le groupe lui-même, pas ses membres).

aws resource-groups get-tags \ --arn arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer

Sortie :

{ "Arn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Tags": { "QueryType": "tags", "QueryResources": "ec2-instances" } }
  • Pour API plus de détails, voir GetTagsla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-group-resources.

AWS CLI

Pour répertorier toutes les ressources d'un groupe de ressources

Exemple 1 : L'list-resource-groupsexemple suivant répertorie toutes les ressources qui font partie du groupe de ressources spécifié.

aws resource-groups list-group-resources \ --group-name tbq-WebServer

Sortie :

{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-09f77fa38c12345ab", "ResourceType": "AWS::EC2::Instance" } ] }

Exemple 2 : L'exemple suivant répertorie toutes les ressources du groupe qui ont également un « type de ressource » du type « AWS : : : EC2 :Instance » . :

aws resource-groups list-group-resources --group-name tbq- WebServer --filters Name=Type de ressource, Valeurs= : : :Instance AWS EC2

  • Pour API plus de détails, voir ListGroupResourcesla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-groups.

AWS CLI

Pour répertorier les groupes de ressources disponibles

L'list-groupsexemple suivant affiche une liste de tous les groupes de ressources.

aws resource-groups list-groups

Sortie :

{ "GroupIdentifiers": [ { "GroupName": "tbq-WebServer", "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer3" }, { "GroupName": "cbq-CFNStackQuery", "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/cbq-CFNStackQuery" } ], "Groups": [ { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer" }, { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/cbq-CFNStackQuery", "Name": "cbq-CFNStackQuery" } ] }
  • Pour API plus de détails, voir ListGroupsla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-resource-groups.

AWS CLI

Pour répertorier toutes les ressources d'un groupe de ressources

L'list-resource-groupsexemple suivant répertorie toutes les ressources qui font partie du groupe de ressources spécifié.

aws resource-groups list-group-resources \ --group-name tbq-WebServer

Sortie :

{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-09f77fa38c12345ab", "ResourceType": "AWS::EC2::Instance" } ] }
  • Pour API plus de détails, voir ListResourceGroupsla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserput-group-configuration.

AWS CLI

Pour associer une configuration de service à un groupe de ressources

Exemple 1 : L'put-group-configurationexemple suivant indique que le groupe de ressources doit contenir uniquement les réservations de EC2 capacité Amazon pour les instances appartenant à la M5 famille C5 or.

aws resource-groups put-group-configuration \ --group MyTestGroup \ --configuration file://config.json

Contenu de config.json :

[ { "Type": "AWS::EC2::HostManagement", "Parameters": [ { "Name": "allowed-host-families", "Values": [ "c5", "m5" ] }, { "Name": "any-host-based-license-configuration", "Values": [ "true" ] } ] }, { "Type": "AWS::ResourceGroups::Generic", "Parameters": [ { "Name": "allowed-resource-types", "Values": [ "AWS::EC2::Host" ] }, { "Name": "deletion-protection", "Values": [ "UNLESS_EMPTY" ] } ] } ]

Cette commande ne produit aucune sortie en cas de réussite.

Pour plus d'informations, consultez la section Configurations de service pour les groupes de ressources dans le Resource Groups API Reference Guide.

L'exemple de code suivant montre comment utilisersearch-resources.

AWS CLI

Pour rechercher des ressources correspondant à une requête

L'search-resourcesexemple suivant extrait une liste de toutes les AWS ressources correspondant à la requête spécifiée.

aws resource-groups search-resources \ --resource-query file://query.json

Contenu de query.json :

{ "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Patch Group\", \"Values\":[\"Dev\"]}]}" }

Sortie :

{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-01a23bc45d67890ef", "ResourceType": "AWS::EC2::Instance" } ] }
  • Pour API plus de détails, voir SearchResourcesla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisertag.

AWS CLI

Pour associer une étiquette à un groupe de ressources

L'tagexemple suivant attache les paires clé et valeur de balise spécifiées au groupe de ressources spécifié (le groupe lui-même, pas ses membres).

aws resource-groups tag \ --tags QueryType=tags,QueryResources=ec2-instances \ --arn arn:aws:resource-groups:us-west-2:128716708097:group/tbq-WebServer

Sortie :

{ "Arn": "arn:aws:resource-groups:us-west-2:128716708097:group/tbq-WebServer", "Tags": { "QueryType": "tags", "QueryResources": "ec2-instances" } }

Pour plus d'informations, consultez la section Gérer les balises dans le guide de l'utilisateur de AWS Resource Groups.

  • Pour API plus de détails, voir Tag in AWS CLI Command Reference.

L'exemple de code suivant montre comment utiliseruntag.

AWS CLI

Pour supprimer des balises d'un groupe de ressources

L'untagsexemple suivant supprime toute balise avec la clé spécifiée du groupe de ressources lui-même, et non de ses membres.

aws resource-groups untag \ --arn arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer \ --keys QueryType

Sortie :

{ "Arn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Keys": [ "QueryType" ] }

Pour plus d'informations, consultez la section Gérer les balises dans le guide de l'utilisateur de AWS Resource Groups.

L'exemple de code suivant montre comment utiliserupdate-group-query.

AWS CLI

Exemple 1 : pour mettre à jour la requête pour un groupe de ressources basé sur des balises

L'update-group-queryexemple suivant met à jour la requête attachée au groupe de ressources basé sur des balises spécifié.

aws resource-groups update-group-query \ --group-name tbq-WebServer \ --resource-query '{"Type":"TAG_FILTERS_1_0", "Query":"{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}"}'

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-east-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer" }, "ResourceQuery": { "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" } }

Pour plus d'informations, consultez la section Update Groups dans le guide de l'utilisateur de AWS Resource Groups.

Exemple 2 : pour mettre à jour la requête pour un groupe de ressources CloudFormation basé sur une pile

L'update-group-queryexemple suivant met à jour la requête attachée au groupe de ressources AWS CloudFormation basé sur une pile spécifié.

aws resource-groups update-group-query \ --group-name cbq-CFNstackgroup \ --resource-query '{"Type": "CLOUDFORMATION_STACK_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-west-2:123456789012:stack/MyCFNStack/1415z9z0-z39z-11z8-97z5-500z212zz6fz\"}"}'

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/cbq-CFNstackgroup", "Name": "cbq-CFNstackgroup" }, "ResourceQuery": { "Type": "CLOUDFORMATION_STACK_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-west-2:123456789012:stack/MyCFNStack/1415z9z0-z39z-11z8-97z5-500z212zz6fz\"}" } }

Pour plus d'informations, consultez la section Update Groups dans le guide de l'utilisateur de AWS Resource Groups.

  • Pour API plus de détails, voir UpdateGroupQueryla section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-group.

AWS CLI

Pour mettre à jour la description d'un groupe de ressources

L'update-groupexemple suivant met à jour la description du groupe de ressources spécifié.

aws resource-groups update-group \ --group-name tbq-WebServer \ --description "Resource group for all web server resources."

Sortie :

{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer" "Description": "Resource group for all web server resources." } }

Pour plus d'informations, consultez la section Update Groups dans le guide de l'utilisateur de AWS Resource Groups.

  • Pour API plus de détails, voir UpdateGroupla section Référence des AWS CLI commandes.