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.
Crear grupos basados en consultas en Grupos de recursos de AWS
Tipos de consultas de grupos de recursos
En Grupos de recursos de AWS, una consulta es la base de un grupo basado en consultas. Puede basar un grupo de recursos en uno de los dos tipos de consultas.
- Consultas basadas en etiquetas
-
Las consultas basadas en etiquetas incluyen listas de tipos de recursos que se especifican con el formato siguiente
AWS::, así como etiquetas. Las etiquetas son claves que ayudan a identificar y ordenar los recursos de la organización. Opcionalmente, las etiquetas incluyen valores para las claves.service::resourcePara una consulta basada en etiquetas, también debe especificar las etiquetas compartidas por los recursos que desea que sean miembros del grupo. Por ejemplo, si desea crear un grupo de recursos que contenga todas las EC2 instancias de Amazon y los buckets de Amazon S3 que utiliza para ejecutar la fase de prueba de una aplicación y tiene instancias y buckets etiquetados de esta manera, elija los tipos de recursos y los tipos de
AWS::S3::Bucketrecursos de la lista desplegableAWS::EC2::Instancey, a continuación, especifique la clave de etiquetaStage, con un valor de etiqueta de.TestLa sintaxis del parámetro
ResourceQueryde un grupo de recursos basado en etiquetas contiene los siguientes elementos:-
TypeEste elemento indica qué tipo de consulta define este grupo de recursos. Para crear un grupo de recursos basado en etiquetas, especifique el valor
TAG_FILTERS_1_0de la siguiente manera:"Type": "TAG_FILTERS_1_0" -
QueryEste elemento define la consulta real que se utiliza para compararla con los recursos. Contiene una representación de cadena de una estructura JSON con los siguientes elementos:
-
ResourceTypeFiltersEste elemento limita los resultados solo a los tipos de recursos que coinciden con el filtro. Puede especificar los valores siguientes:
-
"AWS::AllSupported": para especificar que los resultados pueden incluir recursos de cualquier tipo que coincidan con la consulta y que actualmente son admitidos por el servicio Resource Groups. -
"AWS::: una lista separada por comas de cadenas de especificación de tipos de recursos con este formato: , como por ejemploservice-id::resource-type"AWS::EC2::Instance".
-
-
TagFiltersEste elemento especifica los pares de cadenas clave/valor que se comparan con las etiquetas adjuntas a los recursos. Los que tengan una clave de etiqueta y un valor que coincidan con el filtro se incluyen en el grupo. Cada filtro consta de los siguientes elementos:
-
"Key": una cadena con un nombre de clave. Únicamente los recursos de la cuenta que están etiquetados con un par de clave-valor coincidente con las siguientes claves: -
"Values": una cadena con una lista de valores separados por comas para la clave especificada. Únicamente los recursos de la cuenta que están etiquetados con un par de clave-valor coincidente son miembros del grupo.
-
-
Todos estos elementos JSON deben combinarse en una representación de cadena de una sola línea de la estructura JSON. Por ejemplo, considere una
Querycon la siguiente estructura JSON de ejemplo. Esta consulta debe coincidir únicamente con las EC2 instancias de Amazon que tengan la etiqueta «Stage» con el valor «Test».{ "ResourceTypeFilters": [ "AWS::EC2::Instance" ], "TagFilters": [ { "Key": "Stage", "Values": [ "Test" ] } ] }Ese JSON se puede representar como la siguiente cadena de una sola línea y se puede usar como el valor del elemento
Query. Como el valor de una estructura JSON debe ser una cadena entre comillas dobles, debe evitar los caracteres de comillas dobles o barras diagonales incrustados precediendo a cada uno de ellos con una barra invertida, como se muestra a continuación:"Query":"{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"TagFilters\":[{\"Key\":\"Stage\",\"Values\":[\"Test\"]}]}"La cadena
ResourceQuerycompleta se representa como se muestra aquí, como un parámetro de comando CLI:--resource-query '{"Type":"TAG_FILTERS_1_0","Query":"{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"TagFilters\":[{\"Key\":\"Stage\",\"Values\":[\"Test\"]}]}"}' -
- basadas en una pila de CloudFormation
-
En una consulta CloudFormation basada en pilas, eliges una CloudFormation pila de tu cuenta en la región actual y, a continuación, eliges los tipos de recursos de la pila que quieres que formen parte del grupo. Puede basar la consulta en una sola CloudFormation pila.
nota
Una CloudFormation pila puede contener otras pilas CloudFormation «secundarias». Sin embargo, un grupo de recursos basado en una pila “principal” no obtiene todos los recursos de las pilas secundarias como miembros del grupo. Los grupos de recursos agregan las pilas secundarias al grupo de recursos de la pila principal como miembros de un solo grupo y no las amplían.
Resource Groups admite consultas basadas en CloudFormation pilas que tienen uno de los siguientes estados.
-
CREATE_COMPLETE -
CREATE_IN_PROGRESS -
DELETE_FAILED -
DELETE_IN_PROGRESS -
REVIEW_IN_PROGRESS
importante
Solo los recursos que se crean directamente como parte de la pila de la consulta se incluyen en el grupo de recursos. Los recursos creados posteriormente por los miembros de la CloudFormation pila no se convierten en miembros del grupo. Por ejemplo, si un grupo de autoescalado es creado CloudFormation como parte de la pila, entonces ese grupo de autoescalado es miembro del grupo. Sin embargo, una EC2 instancia de Amazon creada por ese grupo de autoscalamiento como parte de su operación no es miembro del grupo de recursos basado en CloudFormation pilas.
Si creas un grupo basado en una CloudFormation pila y el estado de la pila cambia a uno que ya no se admite como base para una consulta de grupo, por ejemplo, el grupo de recursos sigue existiendo, pero no tiene recursos de miembros.
DELETE_COMPLETE -
Después de crear un grupo de recursos, puede realizar tareas en los recursos del grupo.
La sintaxis del ResourceQuery parámetro de un grupo de recursos CloudFormation basado en una pila contiene los siguientes elementos:
-
TypeEste elemento indica qué tipo de consulta define este grupo de recursos.
Para crear un grupo de recursos CloudFormation basado en pilas, especifique el valor
CLOUDFORMATION_STACK_1_0de la siguiente manera:"Type": "CLOUDFORMATION_STACK_1_0" -
QueryEste elemento define la consulta real que se utiliza para compararla con los recursos. Contiene una representación de cadena de una estructura JSON con los siguientes elementos:
-
ResourceTypeFiltersEste elemento limita los resultados solo a los tipos de recursos que coinciden con el filtro. Puede especificar los valores siguientes:
-
"AWS::AllSupported": para especificar que los resultados pueden incluir recursos de cualquier tipo que coincidan con la consulta. -
"AWS::: una lista separada por comas de cadenas de especificación de tipos de recursos con este formato: , como por ejemploservice-id::resource-type"AWS::EC2::Instance".
-
-
StackIdentifierEste elemento especifica el Nombre de recurso de Amazon (ARN) de la pila de CloudFormation cuyos recursos desea incluir en el grupo.
-
Todos estos elementos JSON deben combinarse en una representación de cadena de una sola línea de la estructura JSON. Por ejemplo, considere una Query con la siguiente estructura JSON de ejemplo. Esta consulta debe coincidir únicamente con los buckets de Amazon S3 que forman parte de la CloudFormation pila especificada.
{ "ResourceTypeFilters": [ "AWS::S3::Bucket" ], "StackIdentifier": "arn:aws:cloudformation:us-west-2:123456789012:stack/MyCloudFormationStackName/fb0d5000-aba8-00e8-aa9e-50d5cEXAMPLE" }
Ese JSON se puede representar como la siguiente cadena de una sola línea y se puede usar como el valor del elemento Query. Como el valor de una estructura JSON debe ser una cadena entre comillas dobles, debe evitar los caracteres de comillas dobles o barras diagonales incrustados precediendo a cada uno de ellos con una barra invertida, como se muestra a continuación:
"Query":"{\"ResourceTypeFilters\":[\"AWS::S3::Bucket\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-west-2:123456789012:stack\/MyCloudFormationStackName\/fb0d5000-aba8-00e8-aa9e-50d5cEXAMPLE\"
La cadena ResourceQuery completa se representa como se muestra aquí, como un parámetro de comando CLI:
--resource-query '{"Type":"CLOUDFORMATION_STACK_1_0","Query":"{\"ResourceTypeFilters\":[\"AWS::S3::Bucket\"],\"StackIdentifier\":\"arn:aws:cloudformation:us-west-2:123456789012:stack\/MyCloudFormationStackName\/fb0d5000-aba8-00e8-aa9e-50d5cEXAMPLE\"}'