Esempi per Gruppi di risorse con AWS CLI
Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con Gruppi di risorse.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare create-group.
- AWS CLI
-
Esempio 1: per creare un gruppo di risorse basato su tag
Nell’esempio seguente
create-groupcrea un gruppo di risorse basato su tag di istanze Amazon EC2 nella Regione corrente. Si basa su una query relativa alle risorse taggate con la chiaveNamee il valoreWebServers. Il nome del gruppo ètbq-WebServer. La query si trova in un file JSON separato che viene passato al comando.aws resource-groups create-group \ --nametbq-WebServer\ --resource-queryfile://query.jsonContenuto di
query.json.{ "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" }Output:
{ "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\"]}]}" } }Esempio 2: per creare un gruppo di risorse basato sullo stack CloudFormation
Nell’esempio seguente
create-groupcrea un gruppo di risorse basato sullo stack AWS CloudFormation denominatosampleCFNstackgroup. La query include tutte le risorse nello stack CloudFormation specificato supportate da Gruppi di risorse AWS.aws resource-groups create-group \ --namecbq-CFNstackgroup\ --resource-queryfile://query.jsonContenuto di
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\"}" }Output:
{ "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\"}"}' } }Per ulteriori informazioni, consulta Creazione di gruppi nella Guida per l’utente di Gruppi di risorse AWS.
-
Per informazioni dettagliate sull'API, consulta CreateGroup
nella Documentazione di riferimento dei comandi della AWS CLI.
-
L’esempio di codice seguente mostra come utilizzare delete-group.
- AWS CLI
-
Come aggiornare la descrizione di un gruppo di risorse
Nell’esempio seguente
delete-groupaggiorna il gruppo di risorse specificato.aws resource-groups delete-group \ --group-nametbq-WebServerOutput:
{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:1234567890:group/tbq-WebServer", "Name": "tbq-WebServer" } }Per ulteriori informazioni, consulta Eliminazione di gruppi nella Guida per l’utente di Gruppi di risorse AWS.
-
Per informazioni dettagliate sull'API, consulta DeleteGroup
nella Documentazione di riferimento dei comandi della AWS CLI.
-
L’esempio di codice seguente mostra come utilizzare get-group-query.
- AWS CLI
-
Come ottenere la associata query a un gruppo di risorse
Nell’esempio seguente
get-group-queryvisualizza la query associata al gruppo di risorse specificato.aws resource-groups get-group-query \ --group-nametbq-WebServerOutput:
{ "GroupQuery": { "GroupName": "tbq-WebServer", "ResourceQuery": { "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" } } }-
Per informazioni dettagliate sull’API, consulta GetGroupQuery
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-group.
- AWS CLI
-
Come ottenere informazioni su un gruppo di risorse
Nell’esempio seguente
get-groupvisualizza i dettagli relativi al gruppo di risorse specificato. Per ottenere la query associata al gruppo, utilizzaget-group-query.aws resource-groups get-group \ --group-nametbq-WebServerOutput:
{ "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." } }-
Per i dettagli dell'API, consulta GetGroup
in Riferimento ai comandi della AWS CLI.
-
L’esempio di codice seguente mostra come utilizzare get-tags.
- AWS CLI
-
Come recuperare i tag associati a un gruppo di risorse
Nell’esempio seguente
get-tagsvisualizza le coppie chiave-valore dei tag associate al gruppo di risorse specificato (il gruppo stesso, non i suoi membri).aws resource-groups get-tags \ --arnarn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServerOutput:
{ "Arn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Tags": { "QueryType": "tags", "QueryResources": "ec2-instances" } }-
Per informazioni dettagliate sull’API, consulta GetTags
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-group-resources.
- AWS CLI
-
Come elencare tutte le risorse in un gruppo di risorse
Esempio 1: nell’esempio seguente
list-resource-groupselenca tutte le risorse appartenenti gruppo di risorse specificato.aws resource-groups list-group-resources \ --group-nametbq-WebServerOutput:
{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-09f77fa38c12345ab", "ResourceType": "AWS::EC2::Instance" } ] }Esempio 2: l’esempio seguente elenca tutte le risorse del gruppo che hanno il parametro “resource-type” con il valore “AWS::EC2::Instance”.
aws resource-groups list-group-resources --group-name tbq-WebServer --filters Name=resource-type,Values=AWS::EC2::Instance
-
Per informazioni dettagliate sull’API, consulta ListGroupResources
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-groups.
- AWS CLI
-
Come elencare i gruppi di risorse disponibili
Nell’esempio seguente
list-groupsvisualizza un elenco di tutti i gruppi di risorse.aws resource-groups list-groupsOutput:
{ "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" } ] }-
Per informazioni dettagliate sull'API, consulta ListGroups
nella Documentazione di riferimento dei comandi della AWS CLI.
-
L’esempio di codice seguente mostra come utilizzare list-resource-groups.
- AWS CLI
-
Come elencare tutte le risorse in un gruppo di risorse
Nell’esempio seguente
list-resource-groupselenca tutte le risorse appartenenti gruppo di risorse specificato.aws resource-groups list-group-resources \ --group-nametbq-WebServerOutput:
{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-09f77fa38c12345ab", "ResourceType": "AWS::EC2::Instance" } ] }-
Per informazioni dettagliate sull’API, consulta ListResourceGroups
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare put-group-configuration.
- AWS CLI
-
Come associare una configurazione di servizio a un gruppo di risorse
Esempio 1: nell’esempio seguente
put-group-configurationspecifica che il gruppo di risorse deve contenere solo le prenotazioni della capacità di Amazon EC2 per le istanze delle famiglieC5oM5.aws resource-groups put-group-configuration \ --groupMyTestGroup\ --configurationfile://config.jsonContenuto di
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" ] } ] } ]Questo comando non produce alcun output se ha esito positivo.
Per ulteriori informazioni, consulta Configurazioni dei servizi per i gruppi di risorse nella Guida di riferimento dell’API per gruppi di risorse.
-
Per informazioni dettagliate sull’API, consulta PutGroupConfiguration
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare search-resources.
- AWS CLI
-
Come trovare le risorse che corrispondono a una query
Nell’esempio seguente
search-resourcesrecupera un elenco di tutte le risorse AWS che corrispondono alla query specificata.aws resource-groups search-resources \ --resource-queryfile://query.jsonContenuto di
query.json.{ "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Patch Group\", \"Values\":[\"Dev\"]}]}" }Output:
{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-01a23bc45d67890ef", "ResourceType": "AWS::EC2::Instance" } ] }-
Per informazioni dettagliate sull’API, consulta SearchResources
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare tag.
- AWS CLI
-
Come associare un tag a un gruppo di risorse
Nell’esempio seguente
tagcollega le coppie chiave-valore dei tag associate al gruppo di risorse specificato (il gruppo stesso, non i suoi membri).aws resource-groups tag \ --tagsQueryType=tags,QueryResources=ec2-instances\ --arnarn:aws:resource-groups:us-west-2:128716708097:group/tbq-WebServerOutput:
{ "Arn": "arn:aws:resource-groups:us-west-2:128716708097:group/tbq-WebServer", "Tags": { "QueryType": "tags", "QueryResources": "ec2-instances" } }Per ulteriori informazioni, consulta Gestione dei tag nella Guida per l’utente di Gruppi di risorse AWS.
-
Per informazioni dettagliate sull’API, consulta Tag
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare untag.
- AWS CLI
-
Come rimuovere tag da un gruppo di risorse
Nell’esempio seguente
untagsrimuove qualsiasi tag con la chiave specificata dal gruppo di risorse stesso e non dai relativi membri.aws resource-groups untag \ --arnarn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer\ --keysQueryTypeOutput:
{ "Arn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Keys": [ "QueryType" ] }Per ulteriori informazioni, consulta Gestione dei tag nella Guida per l’utente di Gruppi di risorse AWS.
-
Per informazioni dettagliate sull’API, consulta Untag
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-group-query.
- AWS CLI
-
Esempio 1: per aggiornare la query per un gruppo di risorse basato su tag
Nell’esempio seguente
update-group-queryaggiorna la query associata al gruppo di risorse basato su tag specificato.aws resource-groups update-group-query \ --group-nametbq-WebServer\ --resource-query '{"Type":"TAG_FILTERS_1_0", "Query":"{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}"}'Output:
{ "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\"]}]}" } }Per ulteriori informazioni, consulta Aggiornamento dei gruppi nella Guida per l’utente di Gruppi di risorse AWS.
Esempio 2: per aggiornare la query per un gruppo di risorse basato sullo stack CloudFormation
Nell’esempio seguente
update-group-queryaggiorna la query associata al gruppo di risorse basato su stack AWS CloudFormation specificato.aws resource-groups update-group-query \ --group-namecbq-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\"}"}'Output:
{ "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\"}" } }Per ulteriori informazioni, consulta Aggiornamento dei gruppi nella Guida per l’utente di Gruppi di risorse AWS.
-
Per informazioni dettagliate sull’API, consulta UpdateGroupQuery
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-group.
- AWS CLI
-
Come aggiornare la descrizione di un gruppo di risorse
Nell’esempio seguente
update-groupaggiorna la descrizione del gruppo di risorse specificato.aws resource-groups update-group \ --group-nametbq-WebServer\ --description"Resource group for all web server resources."Output:
{ "Group": { "GroupArn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Name": "tbq-WebServer" "Description": "Resource group for all web server resources." } }Per ulteriori informazioni, consulta Aggiornamento dei gruppi nella Guida per l’utente di Gruppi di risorse AWS.
-
Per i dettagli dell'API, consulta UpdateGroup
in Riferimento ai comandi della AWS CLI.
-