Importación de las pilas administradas por servicios para conjuntos de pilas de AWS CloudFormation
La operación de importación de pilas de CloudFormation puede importar pilas existentes en StackSets nuevos o existentes, de modo que pueda migrar las pilas existentes a un StackSet en una sola operación. StackSets amplía la funcionalidad de las pilas para que pueda crear, actualizar o eliminar pilas de varias cuentas y regiones con una sola operación.
Consideraciones para la importación de pilas administradas por servicios
-
La operación de importación de la pila requiere una cuenta de administración o una cuenta de administrador delegado en la que pueda administrar los AWS Organizations asociados; por ejemplo, para permitir el acceso de confianza con StackSets.
-
Las cuentas de destino deben ser miembros de la AWS Organizations administrada por la cuenta de administración o la cuenta de administrador delegado.
-
La pila de destino existe en una de las unidades organizativas de destino.
-
La cuenta de destino debe ser miembro de AWS Organizations.
-
El acceso a AWS Organizations debe tener el estado
ACTIVATED
para las organizaciones. -
Las pilas que se van a importar deben estar presentes en cualquiera de las cuentas de los miembros y no en la cuenta de administración.
Temas
Importación de una pila administrada por servicios en un nuevo StackSet (consola)
Creación e importación de una pila administrada por servicios en un StackSet existente (consola)
Importación de una pila administrada por servicios en un StackSet existente (consola)
Importación de una pila administrada por servicios en un StackSet (AWS CLI)
Importación de una pila administrada por servicios en un nuevo StackSet (consola)
Importación de una pila en un nuevo StackSet mediante la AWS Management Console
Para importar una pila nueva en un StackSet, identifique una pila que contenga el recurso que desee importar.
Inicie sesión en la AWS Management Console y abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation
. -
En el panel de navegación, seleccione StackSets (Conjuntos de pilas).
-
En la parte superior de la página StackSets (Conjuntos de pilas), seleccione Create StackSet (Crear conjunto de pilas).
-
En la página Elegir una plantilla, haga lo siguiente:
-
En StackSet permission model, seleccione Permisos administrados por servicios.
-
En Requisito previo: preparar plantilla, seleccione La plantilla está lista y elija la plantilla mediante una de las siguientes opciones:
-
En URL de Amazon S3, ingrese su URL de Amazon S3 en el campo URL de Amazon S3.
-
En Cargar un archivo de plantilla, seleccione una plantilla de CloudFormation de su equipo local.
-
Acepte la configuración y elija Next (Siguiente).
-
-
En la página Especificar detalles del StackSet, haga lo siguiente:
-
Ingrese un nombre de StackSet en el cuadro Nombre del StackSet.
-
(Opcional) Ingrese una descripción en la sección StackSet description (Descripción de StackSet).
En la página Configurar las opciones del StackSet, revise las opciones y seleccione Siguiente.
-
-
En la página Establecer opciones de implementación, realice las siguientes acciones:
-
En Agregar pilas al conjunto de pilas, seleccione Importar pilas al conjunto de pilas.
-
En Stacks to import (Pilas para importar), elija el método de importación de pila.
-
En Stack ID (ID de la pila), ingrese el ID de la pila.
-
En URL de la pila ingrese la URL de Amazon S3.
-
-
-
En Asociar unidades organizativas, haga lo siguiente:
-
Seleccione Asociar con la organización para utilizar la unidad organizativa raíz.
-
Seleccione Asociar con unidades organizativas (OU) para ingresar los ID de las unidades organizativas principales para las pilas que se van a importar. Por ejemplo, si
Stack 1
yStack 2
están debajo deOU1
, yStack 3
está debajo deOU2
, ingreseOU1
yOU2
.
Acepte la configuración y elija Next (Siguiente).
-
-
Revise las opciones en la página Review (Revisar) y elija Submit (Enviar).
Creación e importación de una pila administrada por servicios en un StackSet existente (consola)
Para importar una pila existente en un nuevo StackSet, identifique una pila que contenga el recurso que desee importar.
Creación de un StackSet e importación de una pila
Inicie sesión en la AWS Management Console y abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation
. -
En el panel de navegación, seleccione StackSets (Conjuntos de pilas).
-
En la parte superior de la página StackSets (Conjuntos de pilas), seleccione Create StackSet (Crear conjunto de pilas).
-
En la página Elegir una plantilla, haga lo siguiente:
-
En StackSet permission model, seleccione Permisos administrados por servicios.
-
En Requisito previo: preparar plantilla, seleccione La plantilla está lista y elija la plantilla mediante una de las siguientes opciones:
-
En URL de Amazon S3, ingrese su URL de Amazon S3 en el campo URL de Amazon S3.
-
En Cargar un archivo de plantilla, seleccione una plantilla de CloudFormation de su equipo local.
-
Acepte la configuración y elija Next (Siguiente).
-
-
En la página Especificar detalles del StackSet, haga lo siguiente:
-
Ingrese un nombre de StackSet en el cuadro Nombre del StackSet.
-
(Opcional) Ingrese una descripción en la sección StackSet description (Descripción de StackSet).
En la página Configurar las opciones del StackSet, revise las opciones y seleccione Siguiente.
-
-
En la página Establecer opciones de implementación, realice las siguientes acciones:
-
En Add stacks to stack set (Agregar pilas al conjunto de pilas), seleccione Deploy new stacks (Implementar pilas nuevas).
-
-
En la sección Asociar unidades organizativas, haga lo siguiente:
-
Seleccione Asociar con la organización para utilizar la unidad organizativa raíz.
-
Seleccione Asociar con unidades organizativas (OU) para ingresar los ID de las unidades organizativas principales para las pilas que se van a importar. Por ejemplo, si
Stack 1
yStack 2
están debajo deOU1
, yStack 3
está debajo deOU2
, ingreseOU1
yOU2
.
-
-
En Specify regions (Especificar regiones) y Deployment options (Opciones de implementación), revise las opciones.
Acepte la configuración y elija Next (Siguiente).
-
Revise las opciones en la página Review (Revisar) y elija Submit (Enviar).
Importación de una pila administrada por servicios en un StackSet existente (consola)
Seleccione su StackSet e identifique la pila que desee importar.
Importación de una pila en un StackSet existente
Inicie sesión en la AWS Management Console y abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation
. -
En el panel de navegación, seleccione StackSets (Conjuntos de pilas).
-
Seleccione el StackSet en el que desee importar una pila y, a continuación, elija Agregar pilas al StackSet en el menú desplegable Acciones.
-
En la página Establecer opciones de implementación, realice las siguientes acciones:
-
En Agregar pilas al conjunto de pilas, seleccione Importar pilas al conjunto de pilas.
-
En Pilas para importar, haga lo siguiente
-
En Stack ID (ID de la pila), ingrese el ID de la pila.
-
En URL de la pila, ingrese la URL de Amazon S3.
-
-
En Asociar unidades organizativas, haga lo siguiente:
-
Seleccione Asociar con la organización para utilizar la unidad organizativa raíz.
-
Seleccione Asociar con unidades organizativas (OU) para ingresar los ID de las unidades organizativas principales para las pilas que se van a importar. Por ejemplo, si
Stack 1
yStack 2
están debajo deOU1
, yStack 3
está debajo deOU2
, ingreseOU1
yOU2
.
Acepte la configuración y elija Next (Siguiente).
-
-
-
Revise la página Specify overrides (Especificar anulaciones) y elija Next (Siguiente).
-
Confirme y revise la página Review (Revisar) y elija Submit (Enviar).
Importación de una pila administrada por servicios en un StackSet (AWS CLI)
Una vez creado el StackSet, puede importar las pilas si pasa el ID de las pilas que se van a importar. También puede pasar la lista de ID de unidades organizativas a las que desea asignar el conjunto.
CloudFormation importará las pilas proporcionadas por el usuario dentro de esas UO y utilizará dichas UO como destinos de implementación para el StackSet. Los ID de pila que se muestran en la entrada se asignarán internamente a la unidad organizativa más próxima en la lista de ID de unidades organizativas. Si una pila no pertenece a un ID de unidad organizativa existente en la lista de entrada, la AWS CLI devolverá el error StackNotFoundException
.
La operación import-stacks-to-stack-set
crea instancias de pila para las pilas en la entrada de ID de unidad organizativa. En los siguientes ejemplos de la AWS CLI, se utiliza la operación import-stacks-to-stack-set
para importar una pila en un StackSet.
-
Para utilizar la operación
import-stacks-to-stack-sets
, especifique losstack-ids
ostack-ids-url
que desee importar a su conjunto de pilas.aws cloudformation import-stacks-to-stack-set \ --stack-set-name
ServiceMangedStackSet
\ --stack-ids "arn:123456789012:us-east-1:Stack1
" \ --organizational-unit-idsou-examplerootid111-exampleouid111
aws cloudformation import-stacks-to-stack-set \ --stack-set-name
ServiceMangedStackSet
\ --stack-ids-urlhttps://amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com/file-name.json
\ --organizational-unit-idsou-examplerootid111-exampleouid111
nota
La operación import-stacks-to-stack-sets
requiere que especifique al menos un ID de unidad organizativa para que pueda asociar la pila que se va a importar a dicha unidad organizativa en particular. Esta operación no crea instancias de pila para otras cuentas de miembros en las unidades organizativas asociadas. Para actualizar las cuentas de miembros de las unidades organizativas asociadas, utilice create-stack-instances
o update-stack-instances
.
create-stack-set
crea instancias de pila para todas las cuentas de las unidades organizativas con una plantilla brindada por el usuario, ya sea mediante carga directa o Amazon S3. En los siguientes ejemplos de la AWS CLI, se utiliza la operación create-stack-set
para importar una pila en un nuevo StackSet.
-
Para utilizar la operación
create-stack-set
, especifique el nombre del StackSet e importe una pila en un StackSet recién creado.aws cloudformation create-stack-set \ --template-url
https://amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com/file-name.json
\ --permission-model SERVICE_MANAGED \ --auto-deployment Enabled=true