Conceptos de StackSets - AWS CloudFormation

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.

Conceptos de StackSets

Cuando se utiliza StackSets, se trabaja con conjuntos de pilas, instancias de pila y pilas.

Cuentas de administrador y de destino

Una cuenta de administrador es la cuenta de AWS en la que se crean los conjuntos de pilas. Para conjuntos de pilas con permisos administrados por servicios, la cuenta de administrador es la cuenta management account de la organización o una cuenta de administrador delegado. Para administrar un conjunto de pilas hay que iniciar sesión en la cuenta de administrador de AWS en la que se creó. Una cuenta de destino es la cuenta en la que se crean, actualizan o eliminan una o varias pilas del conjunto de pilas. Para poder utilizar un conjunto de pilas para crear pilas en una cuenta de destino, debe configurar una relación de confianza entre las cuentas de administrador y de destino.

Conjuntos de pilas

Un conjunto de pilas le permite crear pilas en las cuentas de AWS entre regiones mediante una única plantilla de AWS CloudFormation. Todos los recursos incluidos en cada pila se definen mediante la plantilla de AWS CloudFormation del conjunto de pilas. Al crear el conjunto de pilas, debe especificar la plantilla que desea utilizar, así como todos los parámetros y capacidades que requiere la plantilla.

Una vez definido un conjunto de pilas, puede crear, actualizar o eliminar pilas de las cuentas de destino y las regiones que especifique. Al crear, actualizar o eliminar pilas, también puede especificar preferencias de operación, como el orden de las regiones en el que desea que se realice la operación, la tolerancia a fallos a partir de la cual las operaciones de pila se detienen y el número de cuentas en las que se realizan operaciones en las pilas de forma simultánea.

Un conjunto de pilas es un recurso regional. Si crea un conjunto de pilas en una región, no puede verlo o cambiarlo en otras regiones.

Modelos de permisos para conjuntos de pilas

Los conjuntos de pilas se pueden crear mediante permisos autoadministrados o permisos administrados por servicios.

Puede crear los roles de IAM que StackSets necesita para la implementación en cuentas y regiones con permisos autoadministrados. Estos roles son necesarios para establecer una relación de confianza entre la cuenta desde la que está administrando el conjunto de pilas y la cuenta en la que está implementando instancias de pila. Con este modelo de permisos, StackSets se puede implementar en cualquier cuenta de AWS en la que tenga permisos para crear un rol de IAM.

Con los permisos administrados por servicios puede implementar instancias de pilas en cuentas administradas por AWS Organizations. Con este modelo de permisos, no es necesario crear los roles de IAM necesarios; StackSets crea los roles de IAM en su nombre. Con este modelo, también puede habilitar implementaciones automáticas en cuentas que se añaden a su organización en el futuro. Para obtener más información sobre cómo crear y administrar conjuntos de pilas con permisos administrados por servicios, consulte los siguientes temas:

Instancias de pila

Una instancia de pila es una referencia a una pila en una cuenta de destino dentro de una región. Una instancia de pila puede existir sin una pila; por ejemplo, si la pila no se pudo crear por alguna razón, la instancia de pila muestra el motivo del error de creación de la pila. Una instancia de pila está asociada con un solo conjunto de pilas.

En el siguiente gráfico se muestran las relaciones lógicas entre los conjuntos de pilas, las operaciones de pila y las pilas. Al actualizar un conjunto de pilas, todas las instancias de pilas asociadas se actualizan en todas las cuentas y regiones.


                    Un solo conjunto de pilas puede servir de base para crear, actualizar o eliminar instancias de pilas y pilas en varias cuentas y regiones.

Operaciones con conjuntos de pilas

Puede realizar las siguientes operaciones en conjuntos de pilas.

Crear conjunto de pilas

Para crear un nuevo conjunto de pilas es necesario especificar una plantilla de AWS CloudFormation que desee utilizar para crear pilas, especificar las cuentas de destino en las que desee crear pilas e identificar las regiones de AWS en las que desee implementar pilas en sus cuentas de destino. Un conjunto de pilas garantiza la implementación coherente de los mismos recursos de pila, con la misma configuración, en todas las cuentas de destino especificadas dentro de las regiones que elija.

Actualizar conjunto de pilas

Al actualizar un conjunto de pilas, envía cambios a las pilas del conjunto de pilas. Puede actualizar un conjunto de pilas de cualquiera de las siguientes formas. Tenga en cuenta que las actualizaciones de la plantilla siempre afectan a todas las pilas; no puede actualizar la plantilla de manera selectiva para algunas pilas del conjunto de pilas, pero no para otras.

  • Cambiar la configuración existente en la plantilla o añadir nuevos recursos, como actualizar la configuración de los parámetros de un servicio específico o añadir nuevas instancias Amazon EC2.

  • Reemplazar la plantilla por otra.

  • Añadir pilas en cuentas de destino adicionales o existentes, en regiones adicionales o existentes.

Eliminar pilas

Al eliminar pilas, elimina una pila y todos sus recursos asociados de las cuentas de destino que especifique, dentro de las regiones que indique. Puede eliminar pilas de las siguientes maneras.

  • Eliminar pilas de algunas cuentas de destino, mientras deja en ejecución otras pilas en otras cuentas de destino.

  • Eliminar pilas de algunas regiones, dejando en ejecución pilas en otras regiones.

  • Eliminar pilas del conjunto de pilas, pero guardarlas para que sigan ejecutándose independientemente del conjunto de pilas al elegir la opción Retain Stacks (Conservar pilas). Las pilas conservadas se administran en AWS CloudFormation, fuera del conjunto de pilas.

  • Eliminar todas las pilas del conjunto de pilas, como preparación para eliminar todo el conjunto de pilas.

Eliminar conjunto de pilas

Solo puede eliminar el conjunto de pilas cuando no haya instancias de pilas en él.

Opciones de operaciones con conjuntos de pilas

Las opciones que se describen en esta sección ayudan a controlar el tiempo y el número de fallos que se permiten para realizar correctamente operaciones con conjuntos de pilas y evitan que pierda recursos de pila.

Maximum concurrent accounts

Esta configuración, disponible al crear, actualizar y eliminar flujos de trabajo, permite especificar el número máximo o el porcentaje de cuentas de destino en el que se realiza una operación en un momento dado. Un número o porcentaje menor significa que una operación se realiza en menos cuentas de destino a la vez. Las operaciones se realizan en una región a la vez, en el orden especificado en el cuadro Orden de implementación. Por ejemplo, si va a implementar pilas en 10 cuentas de destino en dos regiones, al establecer Número máximo de cuentas simultáneas en 50 y Por porcentaje se implementarán pilas en cinco cuentas de la primera región, y a continuación en las segundas cinco cuentas de la primera región, antes de pasar a la siguiente región y empezar a realizar la implementación en las primeras cinco cuentas de destino.

Cuando elige By percentage (Por porcentaje), si el porcentaje especificado no representa un número entero de sus cuentas especificadas, AWS CloudFormation lo redondea hacia abajo. Por ejemplo, si va a implementar pilas en 10 cuentas de destino, y establece Maximum concurrent accounts (Número máximo de cuentas simultáneas) en 25 y By percentage (Por porcentaje), AWS CloudFormation hace un redondeo hacia abajo y pasa de implementar 2,5 pilas de forma simultánea (lo que no sería posible) a implementar dos pilas simultáneamente.

Tenga en cuenta que esta configuración le permite especificar el número máximo de operaciones. En implementaciones grandes, el número real de cuentas sobre las que se actúa simultáneamente puede ser menor en determinadas circunstancias debido a la limitación controlada de los servicios. La velocidad máxima de implementación es de 100 instancias de pila simultáneas por conjunto de pila.

Failure tolerance

Esta configuración, disponible al crear, actualizar y eliminar flujos de trabajo, permite especificar el número o el porcentaje máximo de fallos en las operaciones de pila que pueden producirse, por región, a partir del cual AWS CloudFormation detiene una operación automáticamente. Un número o porcentaje menor significa que la operación se realiza en menos pilas, pero que puede empezar antes a solucionar problemas de las operaciones fallidas. Por ejemplo, si va a actualizar 10 pilas en 10 cuentas de destino de tres regiones, establecer Tolerancia a errores en 20 y Por porcentaje significa que pueden fracasar como máximo dos actualizaciones de pila en una región para que la operación pueda continuar. Si se produce un error en una tercera pila de la misma región, AWS CloudFormation detiene la operación. Si una pila no se puede actualizar en la primera región, la operación de actualización continúa en esa región y, a continuación, pasa a la siguiente región. Si dos pilas no se pueden actualizar en la segunda región, se alcanza la tolerancia a fallos del 20 %; si se produce un error en una tercera pila de la región, AWS CloudFormation detiene la operación de actualización y no continúa en las regiones siguientes.

Cuando elige Por porcentaje, si el porcentaje especificado no representa un número entero de sus pilas dentro de cada región, AWS CloudFormation lo redondea hacia abajo. Por ejemplo, si va a implementar pilas en 10 cuentas de destino de tres regiones, y establece Tolerancia a errores en 25 y Por porcentaje, AWS CloudFormation hace un redondeo hacia abajo y pasa de una tolerancia a errores de 2,5 pilas (lo que no sería posible) a una tolerancia a errores de dos pilas por región.

Retain stacks

Esta configuración, disponible al eliminar flujos de trabajo de pila, le permite mantener en ejecución las pilas y sus recursos incluso después de que se hayan eliminado de un conjunto de pilas. Cuando mantiene las pilas, AWS CloudFormation deja intactas las pilas de las cuentas y regiones individuales. Las pilas se desasocian del conjunto de pilas, pero la pila y sus recursos se guardan. Cuando la operación de eliminación de pilas ha finalizado, usted administra las pilas conservadas en AWS CloudFormation, en la cuenta de destino (no en la cuenta de administrador) en la que se han creado. La conservación de pilas desasocia de forma permanente una pila de un conjunto de pilas; la pila no se puede volver a añadir al conjunto de pilas, y no se puede añadir a un nuevo conjunto de pilas.

Etiquetas

Puede añadir etiquetas durante las operaciones de creación y actualización de conjuntos de pilas especificando pares de clave y valor. Las etiquetas son útiles para ordenar y filtrar los recursos de los conjuntos de pilas de cara a la facturación y la asignación de costos. Para obtener más información acerca del uso de etiquetas en AWS, consulte Uso de etiquetas de asignación de costos en la Guía del usuario de AWS Billing and Cost Management. Después de especificar el par clave-valor, elija + para guardar la etiqueta. Para eliminar etiquetas que ya no utiliza, elija la X roja que se encuentra a la derecha una etiqueta.

Las etiquetas que se aplican a los conjuntos de pilas se aplican a todas las pilas y a los recursos creados por las pilas. Las etiquetas se pueden añadir en el nivel solo de pila en AWS CloudFormation, pero puede que esas etiquetas no se muestren en StackSets.

Aunque StackSets no añade actualmente ninguna etiqueta definida por el sistema, no debe usar la cadena aws: al principio de los nombres de clave de ninguna etiqueta.

Códigos de estado de los conjuntos de pilas y de las instancias de pilas

AWS CloudFormation StackSets genera códigos de estado para las operaciones con conjuntos de pilas y las instancias de pilas.

En la siguiente tabla se describen los códigos de estado para las operaciones con conjuntos de pilas.

Estado de la operación con conjuntos de pilas Descripción

RUNNING

La operación está en curso actualmente.

SUCCEEDED

La operación terminó sin superar la tolerancia a fallos de la operación.

FAILED

El número de pilas en las que la operación no se pudo completar superó la tolerancia a fallos definida por el usuario. El valor de tolerancia a fallos que ha establecido para una operación se aplica a cada región durante las operaciones de creación y actualización de pilas. Si el número de pilas fallidas dentro de una región supera la tolerancia a fallos, el estado de la operación en la región se establece en FAILED. El estado de la operación en su conjunto también se establece en FAILED, y AWS CloudFormation cancela la operación en las regiones restantes.

QUEUED

QUEUED: [Permisos administrados por servicios] Para implementaciones automáticas que requieren una secuencia de operaciones, se pone en cola la realización de la operación. Por ejemplo:

  • Si se mueve una cuenta de una unidad organizativa (OU), OU1, a otra, OU2, se activa una implementación automática. StackSets ejecuta una operación de eliminación para quitar la instancia de pila de la cuenta de OU1 de destino en la región de destino y pone en cola una operación de creación para añadir una instancia de pila a la cuenta de OU2 de destino en la región de destino. Cuando se complete la operación de eliminación, StackSets ejecutará la operación de creación.

  • Si se añade una cuenta AccountA a una unidad organizativa, se activa una implementación automática. StackSets ejecuta una operación de creación para añadir una instancia de pila a AccountA en la región de destino. Si añade otra cuenta AccountB a la unidad organizativa mientras se ejecuta la operación de creación, StackSets pone en cola una segunda operación de creación. Cuando se completa la primera operación de creación, StackSets ejecuta la segunda operación de creación para añadir una instancia de pila a AccountB en la región de destino.

STOPPING

La operación se encuentra en proceso de detención, a petición del usuario.

STOPPED

La operación se ha detenido, a petición del usuario.

En la siguiente tabla se describen los códigos de estado para las instancias de pilas dentro de conjuntos de pilas.

Estado de la instancia de pila Descripción

CURRENT

La pila está actualizada actualmente con el conjunto de pilas.

OUTDATED

La pila no está actualizada actualmente con el conjunto de pilas por una de las razones siguientes.

  • Se produjo un error en una operación CreateStackSet o UpdateStackSet en la pila asociada.

  • La pila formaba parte de una operación CreateStackSet o UpdateStackSet que falló, o se detuvo antes de que la pila se creara o actualizara.

INOPERABLE

Se produjo un error en una operación DeleteStackInstances y dejó la pila en un estado inestable. Las pilas que se encuentran en este estado quedan excluidas de otras operaciones UpdateStackSet. Es posible que necesite realizar una operación DeleteStackInstances, con RetainStacks establecido en true, para eliminar la instancia de la pila, y a continuación tenga que eliminar la pila manualmente.

CANCELLED

La operación de la cuenta y la región especificadas se ha cancelado. Esto se debe a que un usuario ha detenido la operación del conjunto de la pila, o a que se ha excedido la tolerancia a errores de la operación del conjunto de la pila.

FAILED

Ha habido un error en la región y cuenta especificadas. Si la operación del conjunto de la pila falla en las cuentas suficientes dentro de una misma región, se puede exceder la tolerancia a errores del total de la operación del conjunto de la pila.

PENDING

La operación aún no ha empezado en la cuenta y región especificadas.

RUNNING

La operación está actualmente en curso en la cuenta y región especificadas.

SUCCEEDED

La operación se ha completado correctamente en la cuenta y región especificadas.