Uso de Lambda con la infraestructura como código (IaC)
Las funciones de Lambda rara vez se ejecutan de forma aislada. En cambio, a menudo forman parte de una aplicación sin servidor con otros recursos, como bases de datos, colas y almacenamiento. Con la infraestructura como código (IaC)
Herramientas de IaC para Lambda
- AWS CloudFormation
-
CloudFormation es el servicio de IaC fundamental de AWS. Puede usar plantillas YAML o JSON para modelar y aprovisionar toda su infraestructura de AWS, incluidas las funciones de Lambda. CloudFormation gestiona las complejidades de crear, actualizar y eliminar sus recursos de AWS.
- AWS Serverless Application Model (AWS SAM)
-
AWS SAM es un marco de código abierto creado sobre CloudFormation. Proporciona una sintaxis simplificada para definir aplicaciones sin servidor. Utilice plantillas de AWS SAM para aprovisionar rápidamente funciones de Lambda, API, bases de datos y orígenes de eventos con solo unas pocas líneas de YAML.
- AWS Cloud Development Kit (AWS CDK)
-
El CDK es un enfoque de la IaC que prioriza el código. Puede definir su arquitectura basada en Lambda mediante TypeScript, JavaScript, Python, Java, C#/.Net o Go. Elija el lenguaje que prefiera y utilice elementos de programación como parámetros, condicionales, bucles, composición y herencia para definir el resultado deseado de su infraestructura. A continuación, la CDK genera las plantillas de CloudFormation subyacentes para su implementación. Si desea ver un ejemplo de cómo usar Lambda con el CDK, consulte Implementación de funciones de Lambda con AWS CDK.

AWS también ofrece un servicio llamado AWS Infrastructure Composer para desarrollar plantillas de IaC mediante una interfaz gráfica sencilla. Con Infrastructure Composer, puede arrastrar, agrupar y conectar los Servicios de AWS en un lienzo visual para diseñar una arquitectura de aplicaciones. A continuación, Infrastructure Composer crea una plantilla de AWS SAM o una plantilla de AWS CloudFormation a partir de su diseño que puede usar para implementar la aplicación.
En la siguiente sección, Uso de funciones de Lambda en AWS SAM y en Infrastructure Composer, utilizará Infrastructure Composer para desarrollar una plantilla para una aplicación sin servidor basada en una función de Lambda existente.