Importar recursos de AWS a una pila de CloudFormation con una importación de recursos - AWS CloudFormation

Importar recursos de AWS a una pila de CloudFormation con una importación de recursos

La característica de importación de recursos le permite importar los recursos AWS existentes a una pila de CloudFormation nueva o existente. Esta característica es útil si desea empezar a utilizar CloudFormation para la administración de los recursos creados por fuera de CloudFormation, sin la necesidad de eliminarlos o de volver a crearlos.

CloudFormation ofrece dos opciones para importar los recursos existentes a una pila:

  • El generador de IaC es una herramienta que escanea automáticamente los recursos existentes y genera una plantilla de CloudFormation en función de su estado actual. Luego, esta plantilla se puede usar para importar esos recursos a una pila.

  • La importación de recursos es un proceso manual en el que se describen los recursos existentes en la plantilla de CloudFormation y, a continuación, se importan a una pila. Este enfoque requiere que especifique manualmente las propiedades y configuraciones de los recursos en la plantilla.

Además de poner los recursos existentes bajo la administración de CloudFormation, la característica de importación de recursos puede resultar útil en las siguientes situaciones:

  • Mover recursos entre pilas: puede importar recursos de una pila a otra, lo que le permite reorganizar la infraestructura según sea necesario.

  • Anidar las pilas existentes: puede importar una pila existente como una pila anidada dentro de otra pila, lo que permite diseños de infraestructura modulares y reutilizables.

CloudFormation es compatible con la importación de una amplia gama de recursos. Para obtener más información, consulte Tipo de recurso compatible.

Información general

Durante una operación de importación, se crea un conjunto de cambios que importa los recursos existentes en una pila o se crea una nueva pila a partir de los recursos existentes. Proporcione lo siguiente durante la importación.

  • Una plantilla que describa toda la pila, incluidos los recursos de pila originales y los recursos que esté importando. Cada recurso que se va a importar debe tener un Atributo DeletionPolicy.

  • Identificadores de los recursos que está importando que CloudFormation puede usar para asignar los ID lógicos en la plantilla con los recursos existentes.

nota

CloudFormation solo admite un nivel de anidamiento mediante la importación de recursos. Esto significa que no puede importar una pila a una pila secundaria ni importar una pila que tenga secundarias.

Identificadores de recursos

Proporcione dos valores para identificar cada recurso que esté importando.

  • Una propiedad de identificador. Se trata de una propiedad de recurso que se puede utilizar para identificar cada tipo de recurso. Por ejemplo, un recurso AWS::S3::Bucket se puede identificar utilizando su BucketName.

    La propiedad de recurso que utiliza para identificar el recurso que va a importar varía según el tipo de recurso. Puede encontrar la propiedad de recurso en la consola de CloudFormation. Tras crear una plantilla que incluya el recurso que se va a importar, puede iniciar el proceso de importación, donde encontrará las propiedades de identificadores de los recursos que va a importar. Para algunos tipos de recursos, puede haber varias formas de identificarlos y puede seleccionar qué propiedad usar en las listas desplegables.

    Como alternativa, para obtener las propiedades de identificadores de los recursos que está importando, llame al comando de la CLI get-template-summary y especifique la URL de S3 de la plantilla de pila como valor de la opción --template-url.

  • Un valor de identificador. Este es el valor real de la propiedad del recurso. Por ejemplo, el valor real de la propiedad BucketName podría ser MyS3Bucket.

    Puede obtener el valor de la propiedad del identificador en la consola de servicio del recurso.

Validación de la importación de recursos

Durante una operación de importación, CloudFormation lleva a cabo las siguientes validaciones.

  • El recurso que se va a importar existe.

  • Las propiedades y los valores de configuración de cada recurso que se va a importar se adhieren al esquema de tipo de recurso, que define las propiedades aceptadas, las propiedades requeridas y los valores de propiedad admitidos.

  • Las propiedades requeridas se especifican en la plantilla. Las propiedades requeridas para cada tipo de recurso se enumeran en la Referencia de tipos de recursos y propiedades de AWS.

  • El recurso que se va a importar no pertenece a otra pila de la misma región.

CloudFormation no comprueba si la configuración de la plantilla coincide con la configuración real de las propiedades del recurso.

importante

Compruebe que los recursos y las propiedades que se definieron en la plantilla coincidan con la configuración prevista de la importación de recursos para evitar cambios inesperados.

Códigos de estado de la importación de recursos

En esta tabla se describen los distintos tipos de estado utilizados con la característica de importación de recursos.

Estado de la operación de importación Descripción

IMPORT_IN_PROGRESS

La operación de importación está en curso.

IMPORT_COMPLETE

La operación de importación se ha completado correctamente para todos los recursos de la pila.

IMPORT_ROLLBACK_IN_PROGRESS

La operación de restauración de importación ha restablecido la configuración de plantilla anterior.

IMPORT_ROLLBACK_FAILED

Se produjo un error en la operación de restauración de importación.

IMPORT_ROLLBACK_COMPLETE

La importación restableció la configuración de la plantilla anterior.

Consideraciones durante una operación de importación

  • Una vez finalizada la importación y antes de realizar operaciones de pila posteriores, se recomienda ejecutar la detección de desviaciones en los recursos importados. La detección de desviaciones garantiza que la configuración de la plantilla coincida con la configuración real. Para obtener más información, consulte Detección de desviaciones en una pila de CloudFormation completa.

  • Las operaciones de importación no permiten nuevas creaciones de recursos, eliminaciones de recursos ni cambios en las configuraciones de propiedades.

  • Cada recurso que se vaya a importar debe tener un atributo DeletionPolicy para que la operación de importación se realice correctamente. La DeletionPolicy se puede establecer en cualquier valor posible. Solo los recursos que está importando necesitan un parámetro DeletionPolicy. Los recursos que ya forman parte de la pila no necesitan una DeletionPolicy.

  • No puede importar el mismo recurso en varias pilas.

  • Puede utilizar la condición de política de IAM cloudformation:ImportResourceTypes para controlar con qué tipos de recursos pueden trabajar los usuarios durante una operación de importación. Para obtener más información, consulte Condiciones de CloudFormation.

  • Al importar recursos se aplican los límites de pila de CloudFormation. Para obtener más información acerca los límites, consulte Comprensión de las cuotas de CloudFormation.

Recursos adicionales de

Para solucionar el problema de la desviación de pilas mediante la importación de recursos, consulte Resolver desviaciones con una operación de importación.