Ejemplos de Resource Groups que utilizan AWS CLI - AWS SDKEjemplos de código

Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de Resource Groups que utilizan AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el uso de AWS Command Line Interface with Resource Groups.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

En el siguiente ejemplo de código se muestra cómo usar create-group.

AWS CLI

Ejemplo 1: Para crear un grupo de recursos basado en etiquetas

En el siguiente create-group ejemplo, se crea un grupo de recursos de EC2 instancias de Amazon basado en etiquetas en la región actual. Se basa en una consulta de recursos que están etiquetados con la clave Name y el valorWebServers. El nombre del grupo estbq-WebServer. La consulta se encuentra en un JSON archivo independiente que se pasa al comando.

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

Contenidos de query.json:

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

Salida:

{ "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\"]}]}" } }

Ejemplo 2: Para crear un grupo de CloudFormation recursos basado en pilas

En el siguiente create-group ejemplo, se crea un grupo de recursos AWS CloudFormation basado en pilas denominado. sampleCFNstackgroup La consulta incluye todos los recursos de la CloudFormation pila especificada que son compatibles con AWS Resource Groups.

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

Contenidos 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\"}" }

Salida:

{ "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\"}"}' } }

Para obtener más información, consulte Crear grupos en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte CreateGroupla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar delete-group.

AWS CLI

Para actualizar la descripción de un grupo de recursos

En el siguiente delete-group ejemplo, se actualiza el grupo de recursos especificado.

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

Salida:

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

Para obtener más información, consulte Eliminar grupos en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte DeleteGroupla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar get-group-query.

AWS CLI

Para adjuntar la consulta a un grupo de recursos

En el siguiente get-group-query ejemplo, se muestra la consulta adjunta al grupo de recursos especificado.

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

Salida:

{ "GroupQuery": { "GroupName": "tbq-WebServer", "ResourceQuery": { "Type": "TAG_FILTERS_1_0", "Query": "{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Name\", \"Values\":[\"WebServers\"]}]}" } } }
  • Para API obtener más información, consulte GetGroupQueryla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar get-group.

AWS CLI

Para obtener información sobre un grupo de recursos

En el siguiente get-group ejemplo, se muestran detalles sobre el grupo de recursos especificado. Para adjuntar la consulta al grupo, utiliceget-group-query.

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

Salida:

{ "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." } }
  • Para API obtener más información, consulte GetGroupla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar get-tags.

AWS CLI

Para recuperar las etiquetas adjuntas a un grupo de recursos

En el siguiente get-tags ejemplo, se muestran los pares de etiquetas, clave y valores adjuntos al grupo de recursos especificado (el grupo en sí, no sus miembros).

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

Salida:

{ "Arn": "arn:aws:resource-groups:us-west-2:123456789012:group/tbq-WebServer", "Tags": { "QueryType": "tags", "QueryResources": "ec2-instances" } }
  • Para API obtener más información, consulte GetTagsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar list-group-resources.

AWS CLI

Para enumerar todos los recursos de un grupo de recursos

Ejemplo 1: En el siguiente list-resource-groups ejemplo se enumeran todos los recursos que forman parte del grupo de recursos especificado.

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

Salida:

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

Ejemplo 2: El siguiente ejemplo muestra todos los recursos del grupo que también tienen un «tipo de recurso» de tipo 'AWS::: EC2 :Instancia' . :

aws resource-groups list-group-resources --group-name tbq- WebServer --filters name=Resource-Type, Values=:: :Instance AWS EC2

  • APIPara obtener más información ListGroupResources, AWS CLI consulte la Referencia de comandos.

En el siguiente ejemplo de código se muestra cómo usar list-groups.

AWS CLI

Para ver una lista de los grupos de recursos disponibles

En el siguiente list-groups ejemplo, se muestra una lista de todos los grupos de recursos.

aws resource-groups list-groups

Salida:

{ "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" } ] }
  • Para API obtener más información, consulte ListGroupsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar list-resource-groups.

AWS CLI

Para enumerar todos los recursos de un grupo de recursos

En el siguiente list-resource-groups ejemplo, se enumeran todos los recursos que forman parte del grupo de recursos especificado.

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

Salida:

{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-09f77fa38c12345ab", "ResourceType": "AWS::EC2::Instance" } ] }
  • Para API obtener más información, consulte ListResourceGroupsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar put-group-configuration.

AWS CLI

Para adjuntar una configuración de servicio a un grupo de recursos

Ejemplo 1: El siguiente put-group-configuration ejemplo especifica que el grupo de recursos debe contener solo las reservas de EC2 capacidad de Amazon para las instancias de las M5 familias C5 o.

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

Contenidos 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" ] } ] } ]

Este comando no genera ninguna salida si se realiza correctamente.

Para obtener más información, consulte Configuraciones de servicios para grupos de recursos en la Guía de API referencia de Resource Groups.

En el siguiente ejemplo de código se muestra cómo usar search-resources.

AWS CLI

Para buscar recursos que coincidan con una consulta

En el siguiente search-resources ejemplo, se recupera una lista de todos los AWS recursos que coinciden con la consulta especificada.

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

Contenidos de query.json:

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

Salida:

{ "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/i-01a23bc45d67890ef", "ResourceType": "AWS::EC2::Instance" } ] }
  • Para API obtener más información, consulte SearchResourcesla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar tag.

AWS CLI

Para adjuntar una etiqueta a un grupo de recursos

En el siguiente tag ejemplo, se adjuntan los pares de clave y valor de etiqueta especificados al grupo de recursos especificado (al grupo en sí, no a sus miembros).

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

Salida:

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

Para obtener más información, consulte Administrar etiquetas en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte Etiqueta en la referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar untag.

AWS CLI

Para eliminar etiquetas de un grupo de recursos

En el siguiente untags ejemplo, se quita cualquier etiqueta con la clave especificada del propio grupo de recursos, no de sus miembros.

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

Salida:

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

Para obtener más información, consulte Administrar etiquetas en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte Eliminar etiquetas en la referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar update-group-query.

AWS CLI

Ejemplo 1: Para actualizar la consulta de un grupo de recursos basado en etiquetas

En el siguiente update-group-query ejemplo, se actualiza la consulta adjunta al grupo de recursos basado en etiquetas especificado.

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\"]}]}"}'

Salida:

{ "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\"]}]}" } }

Para obtener más información, consulte Actualizar grupos en la Guía del usuario AWS de Resource Groups.

Ejemplo 2: Para actualizar la consulta de un grupo de recursos CloudFormation basado en pilas

En el siguiente update-group-query ejemplo, se actualiza la consulta adjunta al grupo de recursos basado en AWS CloudFormation pilas especificado.

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\"}"}'

Salida:

{ "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\"}" } }

Para obtener más información, consulte Actualizar grupos en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte UpdateGroupQueryla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar update-group.

AWS CLI

Para actualizar la descripción de un grupo de recursos

En el siguiente update-group ejemplo, se actualiza la descripción del grupo de recursos especificado.

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

Salida:

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

Para obtener más información, consulte Actualizar grupos en la Guía del usuario AWS de Resource Groups.

  • Para API obtener más información, consulte UpdateGroupla Referencia de AWS CLI comandos.