Más información acerca de los conceptos básicos de AWS CDK - AWS Cloud Development Kit (AWS CDK) v2

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.

Más información acerca de los conceptos básicos de AWS CDK

Obtenga más información acerca de los conceptos básicos de AWS Cloud Development Kit (AWS CDK).

AWS CDK y IaC

AWS CDK es un marco de código abierto que puede utilizar para administrar su infraestructura de AWS mediante código. Este enfoque se conoce como infraestructura como código (IaC). Cuando administra y aprovisiona su infraestructura como código, trata su infraestructura del mismo modo que los desarrolladores tratan el código. Esto ofrece muchos beneficios, como el control de versiones y la escalabilidad. Para obtener más información acerca de la IaC, consulte ¿Qué es la infraestructura como código?

AWS CDK y AWS CloudFormation

AWS CDK está perfectamente integrado en AWS CloudFormation. AWS CloudFormation es un servicio totalmente administrado que puede utilizar para administrar y aprovisionar su infraestructura en AWS. AWS CloudFormation le permite definir su infraestructura en plantillas e implementarlas en AWS CloudFormation. Luego, el servicio AWS CloudFormation aprovisiona la infraestructura en función de la configuración definida en las plantillas.

Las plantillas de AWS CloudFormation son declarativas, lo que significa que declaran el estado o el resultado deseado de la infraestructura. Si utiliza JSON o YAML, declara su infraestructura de AWS mediante la definición de los recursos y las propiedades de AWS. Los recursos representan los numerosos servicios de AWS y las propiedades representan la configuración deseada de esos servicios. Cuando implementa su plantilla en AWS CloudFormation, los recursos y las propiedades configuradas se aprovisionan como se describe en la plantilla.

Gracias a AWS CDK, puede administrar su infraestructura de manera imperativa con lenguajes de programación de uso general. En lugar de solo definir el estado deseado de forma declarativa, puede definir la lógica o la secuencia necesarias para alcanzar el estado deseado. Por ejemplo, puede utilizar instrucciones if o bucles condicionales que determinen cómo alcanzar un estado final deseado para su infraestructura.

La infraestructura creada con AWS CDK se traduce o se sintetiza en plantillas de AWS CloudFormation y se implementa mediante el servicio AWS CloudFormation. Por lo tanto, si bien AWS CDK ofrece un enfoque diferente para la creación de su infraestructura, usted seguirá disfrutando de los beneficios de AWS CloudFormation, como el amplio soporte de configuración de recursos de AWS y los sólidos procesos de implementación.

Para obtener más información acerca de AWS CloudFormation, consulte ¿Qué es AWS CloudFormation? en la Guía del usuario de AWS CloudFormation.

AWS CDK y abstracciones

Cuando utiliza AWS CloudFormation, debe definir cada detalle de la configuración de los recursos. Esto le brinda la ventaja de tener un control total sobre su infraestructura. Sin embargo, esto requiere que aprenda, comprenda y cree plantillas sólidas que contengan los detalles de configuración de los recursos y las relaciones entre los recursos, como los permisos y las interacciones basadas en eventos.

Gracias a AWS CDK, puede tener el mismo control sobre las configuraciones de los recursos. Sin embargo, AWS CDK también ofrece potentes abstracciones, que pueden acelerar y simplificar el proceso de desarrollo de la infraestructura. Por ejemplo, AWS CDK incluye constructos que brindan configuraciones predeterminadas razonables y métodos auxiliares que generan un código reutilizable para usted. AWS CDK también ofrece herramientas, como la interfaz de la línea de comandos de AWS CDK (CLI de AWS CDK), que realizan acciones de administración de la infraestructura por usted.

Más información acerca de los conceptos básicos de AWS CDK

Interacción con AWS CDK

Cuando utilice AWS CDK, interactuará principalmente con la Biblioteca de constructos de AWS y la CLI de AWS CDK.

Desarrollo con el AWS CDK

El AWS CDK se puede escribir en cualquier lenguaje de programación compatible. Comienza con un proyecto de CDK, que contiene una estructura de carpetas y archivos, incluidos los activos. Dentro del proyecto, crea una aplicación de CDK. Dentro de la aplicación, define una pila, que representa directamente una pila de CloudFormation. Dentro de la pila, define los recursos y las propiedades de AWS mediante constructos.

Implementación con el AWS CDK

Las aplicaciones de CDK se implementan en un entorno de AWS. Antes de la implementación, debe llevar a cabo un arranque único para preparar el entorno.

Más información

Para obtener más información acerca de los conceptos básicos de AWS CDK, consulte los temas de esta sección.