Esta es la segunda versión de la Guía para desarrolladores de AWS CDK. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde el 1.° de junio de 2023.
cdk import
Utilice las importaciones de recursos de AWS CloudFormation para importar los recursos de AWS existentes a una pila de CDK.
Con este comando, puede tomar los recursos existentes que se crearon con otros métodos y empezar a administrarlos mediante el AWS CDK.
A veces, cuando se considera la posibilidad de transferir recursos a la administración de CDK, es aceptable crear nuevos recursos, como con los roles de IAM, las funciones de Lambda y las reglas de eventos. En el caso de otros recursos, como los recursos con estado, como los bucket de Amazon S3 y las tablas DynamoDB, la creación de nuevos recursos puede afectar al servicio. Puede utilizar cdk import para importar los recursos existentes con una interrupción mínima de sus servicios. Para ver la lista de recursos de AWS admitidos, consulte Tipo de recursos admitidos en la Guía del usuario de AWS CloudFormation.
- Para importar un recurso existente a una pila de CDK
-
-
Ejecute
cdk diffpara asegurarse de que la pila de CDK no tenga cambios pendientes. Cuando se ejecutacdk import, el único cambio permitido en una operación de importación es la adición de los nuevos recursos importados. -
Agregue constructos para los recursos que desea importar a la pila. Por ejemplo, agregue lo siguiente para un bucket de Amazon S3:
new s3.Bucket(this, 'ImportedS3Bucket', {});No haga ningún otro cambio. También debe asegurarse de modelar de manera exacta el estado actual del recurso. Para el ejemplo del bucket, asegúrese de incluir las claves AWS KMS, las políticas del ciclo de vida y cualquier otra información relevante sobre el bucket. De lo contrario, es posible que las operaciones de actualización posteriores no den los resultados esperados.
-
Ejecuta
cdk import. Si hay varias pilas en la aplicación CDK, introduzca un nombre de pila específico como argumento. -
La CLI de CDK pedirá que introduzca los nombres reales de los recursos que va a importar. Tras proporcionar esta información, se iniciará la importación.
-
Si el informe
cdk importes correcto, el CDK administrará el recurso. Cualquier cambio posterior en la configuración del constructo se verá reflejada en el recurso.
-
Esta característica tiene actualmente las siguientes limitaciones:
-
No es posible importar recursos en las pilas anidadas.
-
No se comprueba si las propiedades especificadas son correctas o si están completas para el recurso importado. Intente iniciar una operación de detección de desviaciones después de la importación.
-
Los recursos que dependen de otros recursos deben importarse en el orden adecuado, todos juntos o por separado. De lo contrario, la implementación de CloudFormation fallará y las referencias no se resolverán.
-
Este comando usa las credenciales del rol de implementación, que son necesarias para leer el bucket transitorio cifrado. Esto requiere la versión 12 de la plantilla de arranque, que incluye los permisos de IAM necesarios para el rol de implementación.
Uso
$ cdk import <arguments> <options>
Argumentos
- ID de pila de CDK
-
El ID de constructo de la pila de CDK de la aplicación a la que se van a importar los recursos. Este argumento se puede proporcionar varias veces en un mismo comando.
Tipo: cadena
Obligatorio: no
Opciones
Para obtener una lista de las opciones globales que funcionan con todos los comandos de la CLI de CDK, consulte Opciones globales.
-
--change-set-name <STRING> -
El nombre del conjunto de cambios de CloudFormation que se va a crear.
-
--execute <BOOLEAN> -
Especifique si se va a ejecutar el conjunto de cambios.
Valor predeterminado:
true
-
--force, -f <BOOLEAN> -
De forma predeterminada, la CLI de CDK sale del proceso si la diferencia de plantillas incluye actualizaciones o eliminaciones. Especifique el valor
truepara anular este comportamiento y continúe siempre con la importación.
-
--help, -h <BOOLEAN> -
Muestra la información de referencia del comando
cdk import.
-
--record-resource-mapping, -r <STRING> -
Utilice esta opción para generar la asignación de los recursos físicos existentes a los recursos del CDK que se van a importar. La asignación se escribirá en la ruta de archivo que proporcione. No se llevará a cabo ninguna operación de importación real.
-
--resource-mapping, -m <STRING> -
Utilice esta opción para especificar un archivo que defina la asignación de recursos. La CLI de CDK utilizará este archivo para asignar los recursos físicos a los recursos que se van a importar, en lugar de preguntárselo a usted de forma interactiva.
Esta opción se puede ejecutar desde scripts.
-
--rollback <BOOLEAN> -
En caso de fallo, restaure la pila a un estado estable.
Para especificar el valor
false, puede usar--no-rollbacko-R.Especifique el valor
falsesi desea iterar más rápidamente. Las implementaciones que contienen sustituciones de recursos siempre fallarán.Valor predeterminado:
true
-
--toolkit-stack-name <STRING> -
El nombre de la pila del kit de herramientas de CDK que se va a crear.
De forma predeterminada,
cdk bootstrapimplementa una pila con el nombreCDKToolkiten el entorno de AWS especificado. Utilice esta opción para proporcionar un nombre diferente a la pila de arranque.La CLI de CDK usa este valor para verificar la versión de la pila de arranque.