Uso de Lambda con la infraestructura como código (IaC)
Lambda ofrece varias formas de implementar código y crear funciones. Por ejemplo, puede usar la consola de Lambda o la AWS Command Line Interface (AWS CLI) para crear o actualizar las funciones de Lambda manualmente. Además de estas opciones manuales, AWS ofrece una serie de soluciones para implementar funciones de Lambda y aplicaciones sin servidor con infraestructura como código (IaC). Con la IaC, puede aprovisionar y mantener las funciones de Lambda y otros recursos de AWS con código, en lugar de utilizar procesos y ajustes manuales.
La mayoría de las veces, las funciones de Lambda no se ejecutan de forma aislada. En cambio, forman parte de una aplicación sin servidor con otros recursos, como bases de datos, colas y almacenamiento. Con la IaC, puede automatizar sus procesos de implementación para implementar y actualizar de forma rápida y repetible aplicaciones sin servidor completas que requieren muchos recursos de AWS independientes. Este enfoque acelera el ciclo de desarrollo, facilita la administración de la configuración y garantiza que sus recursos se implementen siempre de la misma manera.
Temas
Herramientas de IaC para Lambda
Para implementar funciones de Lambda y aplicaciones sin servidor con IaC, AWS ofrece una serie de herramientas y servicios diferentes.
AWS CloudFormation fue el primer servicio que AWS ofreció para crear y configurar recursos en la nube. Con AWS CloudFormation, puede crear plantillas de texto para definir la infraestructura y el código. A medida que AWS introducía más servicios nuevos y se complicaba cada vez más la creación de plantillas de AWS CloudFormation, se lanzaron dos herramientas más. AWS SAM es otro marco basado en plantillas que se usa para definir aplicaciones sin servidor. El AWS Cloud Development Kit (AWS CDK) representa un enfoque basado en el código para definir y aprovisionar la infraestructura mediante constructos de código en muchos lenguajes de programación populares.
Con tanto AWS SAM como el AWS CDK, AWS CloudFormation se encarga de las tareas no visibles para crear e implementar su infraestructura. En el siguiente diagrama, se muestra la relación entre estas herramientas y, en los párrafos posteriores, se explican sus características clave.
![Diagrama que muestra cómo AWS SAM y AWS CDK implementan los recursos y el código de AWS mediante AWS CloudFormation](images/IaC_tools.png)
-
AWS CloudFormation: con CloudFormation, modela y configura sus recursos de AWS a partir de una plantilla YAML o JSON que describe los recursos y sus propiedades. CloudFormation aprovisiona sus recursos de forma segura y repetible, lo que le permite crear su infraestructura y aplicaciones sin pasos manuales y con frecuencia. Si cambia la configuración, CloudFormation determina cuáles son las operaciones correctas que se deben realizar para actualizar la pila. CloudFormation puede incluso revertir los cambios.
-
AWS Serverless Application Model (AWS SAM): AWS SAM es un marco de código abierto que sirve para definir aplicaciones sin servidor. Las plantillas de AWS SAM utilizan una sintaxis abreviada para definir funciones, API, bases de datos y asignaciones de orígenes de eventos con solo unas pocas líneas de texto (YAML) por recurso. Durante la implementación, AWS SAM transforma y amplía la sintaxis de AWS SAM para convertirla en sintaxis de AWS CloudFormation. Por ello, se puede agregar cualquier sintaxis de CloudFormation a las plantillas de AWS SAM. Esto proporciona a AWS SAM todas las capacidades de CloudFormation, pero con menos líneas de código para la configuración.
-
AWS Cloud Development Kit (AWS CDK): con el AWS CDK, define su infraestructura mediante constructos de código y la aprovisiona con AWS CloudFormation. El AWS CDK le permite modelar la infraestructura de aplicaciones con TypeScript, Python, Java, .NET y Go (en la versión preliminar para desarrolladores) con el entorno de desarrollo integrado, las herramientas de prueba y los patrones de flujo de trabajo que tenga. Obtendrá todos los beneficios que ofrece AWS CloudFormation, entre los que se incluyen implementación repetible, reversión sencilla de cambios y detección de desviaciones.
AWS también ofrece un servicio llamado AWS Application Composer para desarrollar plantillas de IaC mediante una interfaz gráfica sencilla. Con Application Composer, puede diseñar una arquitectura de aplicaciones arrastrando, agrupando y conectando los Servicios de AWS en un lienzo visual. A continuación, Application 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, Introducción a IaC para Lambda, utilizará Application Composer para desarrollar una plantilla para una aplicación sin servidor basada en una función de Lambda existente.
Introducción a IaC para Lambda
En este tutorial, puede empezar a utilizar IaC con Lambda al crear una plantilla de AWS SAM a partir de una función de Lambda existente y, a continuación, crear una aplicación sin servidor en Application Composer al agregar otros recursos de AWS.
Si prefiere empezar con un tutorial de AWS SAM o AWS CloudFormation para aprender a trabajar con plantillas sin usar Application Composer, encontrará enlaces a otros recursos en la sección Siguientes pasos al final de esta página.
A medida que realice este tutorial, aprenderá algunos conceptos fundamentales, como la forma en que se especifican los recursos de AWS en AWS SAM. También aprenderá a usar Application Composer para crear una aplicación sin servidor que pueda implementar usando AWS SAM o AWS CloudFormation.
Para completar este tutorial, debe llevar a cabo los siguientes pasos:
-
Crear un ejemplo de función de Lambda
-
Utilizar la consola de Lambda para obtener la plantilla de AWS SAM de la función
-
Exportar la configuración de la función a AWS Application Composer y diseñar una aplicación sin servidor sencilla que se base en la configuración de la función
-
Guardar una plantilla de AWS SAM actualizada que pueda utilizar como base para implementar su aplicación sin servidor
En la sección Siguientes pasos, encontrará recursos que puede utilizar para obtener más información sobre AWS SAM y Application Composer. Estos recursos incluyen enlaces a tutoriales más avanzados que le enseñan a implementar una aplicación sin servidor con AWS SAM.
Requisitos previos
En este tutorial, utilizará la característica de sincronización local de Application Composer para guardar la plantilla y los archivos de código en su máquina de compilación local. Para utilizar esta característica, necesita un navegador compatible con la API de acceso al sistema de archivos, que permite a las aplicaciones web leer, escribir y guardar archivos en su sistema de archivos local. Recomendamos utilizar Google Chrome o Microsoft Edge. Para obtener más información sobre la API de acceso al sistema de archivos, consulte ¿Qué es la API de acceso al sistema de archivos?
Creación de una función de Lambda
En este primer paso, creará una función de Lambda que podrá utilizar para completar el resto del tutorial. Para simplificar las tareas, utiliza la consola de Lambda para crear una función básica “Hola, mundo” con el tiempo de ejecución Python 3.11.
Para crear una función de Lambda “Hola, mundo” con la consola
-
Abra la consola de Lambda
. -
Elija Crear función.
-
Deje seleccionada la opción Crear desde cero y, en Información básica, ingrese
LambdaIaCDemo
en Nombre de la función. -
En Tiempo de ejecución, elija Python 3.11.
-
Elija Crear función.
Visualización de la plantilla de AWS SAM para su función
Antes de exportar la configuración de la función a Application Composer, utilice la consola de Lambda para ver la configuración actual de la función como una plantilla de AWS SAM. Si sigue los pasos de esta sección, aprenderá sobre la anatomía de una plantilla de AWS SAM y cómo definir recursos, como las funciones de Lambda, para empezar a especificar una aplicación sin servidor.
Visualización de la plantilla de AWS SAM para su función
-
Abra la página de Funciones
en la consola de Lambda. -
Elija la función que acaba de crear (
LambdaIaCDemo
). -
En el panel Información general de la función, elija Plantilla.
En lugar del diagrama que representa la configuración de la función, verá una plantilla de AWS SAM para la función. La plantilla debe tener el siguiente aspecto.
# This AWS SAM template has been generated from your function's # configuration. If your function has one or more triggers, note # that the AWS resources associated with these triggers aren't fully # specified in this template and include placeholder values.Open this template # in AWS Application Composer or your favorite IDE and modify # it to specify a serverless application with other AWS resources. AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Specification template describing your function. Resources: LambdaIaCDemo: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize: 128 Timeout: 3 Handler: lambda_function.lambda_handler Runtime: python3.11 Architectures: - x86_64 EventInvokeConfig: MaximumEventAgeInSeconds: 21600 MaximumRetryAttempts: 2 EphemeralStorage: Size: 512 RuntimeManagementConfig: UpdateRuntimeOn: Auto SnapStart: ApplyOn: None PackageType: Zip Policies: Statement: - Effect: Allow Action: - logs:CreateLogGroup Resource: arn:aws:logs:us-east-1:123456789012:* - Effect: Allow Action: - logs:CreateLogStream - logs:PutLogEvents Resource: - >- arn:aws:logs:us-east-1:123456789012:log-group:/aws/lambda/LambdaIaCDemo:*
Dediquemos un momento a analizar la plantilla YAML de su función y comprender algunos conceptos clave.
La plantilla comienza con la declaración Transform: AWS::Serverless-2016-10-31
. Esta declaración es obligatoria porque, en segundo plano, las plantillas de AWS SAM se implementan con AWS CloudFormation. Usar la instrucción Transform
identifica la plantilla como un archivo de plantilla de AWS SAM.
Después de la declaración Transform
, viene la sección Resources
. Aquí es donde se definen los recursos de AWS que desea implementar con su plantilla de AWS SAM. Las plantillas de AWS SAM pueden contener una combinación de recursos de AWS SAM y AWS CloudFormation. Esto se debe a que, durante la implementación, las plantillas de AWS SAM se expanden para volverlas plantillas de AWS CloudFormation, por lo que se puede agregar cualquier sintaxis de AWS CloudFormation válida a una plantilla de AWS SAM.
Por el momento, solo hay un recurso definido en la sección Resources
de la plantilla, la función de Lambda LambdaIaCDemo
. Para agregar una función de Lambda a una plantilla de AWS SAM, utilice el tipo de recurso AWS::Serverless::Function
. Las Properties
de una función de Lambda definen el tiempo de ejecución de la función, su controlador y otras opciones de configuración. La ruta al código fuente de la función que AWS SAM debe usar para implementarla también se define aquí. Para obtener más información sobre los recursos de funciones de Lambda en AWS SAM, consulte AWS::Serverless::Function en la Guía para desarrolladores de AWS SAM.
Además de las propiedades y las configuraciones de la función, la plantilla también especifica una política de AWS Identity and Access Management (IAM) para su función. Esta política otorga permiso a su función para escribir registros en Registros de Amazon CloudWatch. Al crear una función en la consola de Lambda, dicho servicio adjunta esta política a la función automáticamente. Para obtener más información sobre cómo especificar una política de IAM para una función en una plantilla de AWS SAM, consulte la propiedad policies
en la página AWS::Serverless::Function de la Guía para desarrolladores de AWS SAM.
Para obtener más información sobre la estructura de plantillas de AWS SAM, consulte AWS SAM template anatomy.
Uso de AWS Application Composer para diseñar una aplicación sin servidor
Para empezar a crear una aplicación sin servidor sencilla con la plantilla de AWS SAM de la función como punto de partida, exporte la configuración de la función a Application Composer y active el modo de sincronización local de Application Composer. La sincronización local guarda automáticamente el código de la función y la plantilla de AWS SAM en la máquina de compilación local y mantiene la plantilla guardada sincronizada a medida que agrega otros recursos de AWS a Application Composer.
Exportación de la función a Application Composer
-
En el panel Información general de la función, elija Exportar a Application Composer.
Para exportar la configuración y el código de la función a Application Composer, Lambda crea un bucket de Amazon S3 en su cuenta para almacenar estos datos temporalmente.
-
En el cuadro de diálogo, seleccione Confirmar y crear proyecto para aceptar el nombre predeterminado de este bucket y exportar la configuración y el código de la función a Application Composer.
-
(Opcional) Para elegir otro nombre para el bucket de Amazon S3 que Lambda crea, introduzca un nombre nuevo y elija Confirmar y crear proyecto. Los nombres de los buckets de Amazon S3 no pueden repetirse en ningún lado y deben seguir las reglas de nomenclatura de buckets.
Al seleccionar Confirmar y crear proyecto, se abre la consola de Application Composer. En el lienzo, verá su función de Lambda.
-
En el menú desplegable, seleccione Activar la sincronización local.
-
En el cuadro de diálogo que se abre, elija Seleccionar carpeta y, luego, seleccione una carpeta de su máquina de compilación local.
-
Seleccione Activar para activar la sincronización local.
A fin de exportar su función a Application Composer, necesita permiso para usar ciertas acciones de la API. Si no puede exportar la función, compruebe Permisos necesarios y asegúrese de tener los permisos que necesita.
nota
Para el bucket que Lambda crea, se aplican los precios de Amazon S3
Para evitar que se agreguen más cargos a su Cuenta de AWS, siga las instrucciones que se indican en Eliminar un bucket después de haber exportado la función a Application Composer. Para obtener más información acerca del bucket de Amazon S3 que Lambda crea, consulte Uso de AWS Lambda con AWS Application Composer.
Diseño de su aplicación sin servidor en Application Composer
Después de activar la sincronización local, los cambios que realice en Application Composer se reflejarán en la plantilla de AWS SAM guardada en su máquina de compilación local. Ahora puede arrastrar y soltar recursos de AWS adicionales en el lienzo de Application Composer para crear su aplicación. En este ejemplo, agrega una cola simple de Amazon SQS como desencadenador de la función de Lambda y una tabla de DynamoDB en la que la función escribe datos.
-
Para agregar un desencadenador de Amazon SQS a su función de Lambda, haga lo siguiente:
-
En el campo de búsqueda de la paleta Recursos, ingrese
SQS
. -
Arrastre el recurso Cola de SQS al lienzo y colóquelo a la izquierda de la función de Lambda.
-
Elija Detalles y, en ID lógico, ingrese
LambdaIaCQueue
. -
Seleccione Guardar.
-
Conecte sus recursos de Amazon SQS y Lambda haciendo clic en el puerto Suscripción de la tarjeta de cola de SQS y arrastrándolo hasta el puerto izquierdo de la tarjeta de función de Lambda. La aparición de una línea entre los dos recursos indica que la conexión se ha realizado correctamente. Application Composer también muestra un mensaje en la parte inferior del lienzo que indica que los dos recursos se han conectado correctamente.
-
-
Para agregar una tabla de Amazon DynamoDB en la que la función de Lambda pueda escribir datos, haga lo siguiente:
-
En el campo de búsqueda de la paleta Recursos, ingrese
DynamoDB
. -
Arrastre el recurso Tabla de DynamoDB al lienzo y colóquelo a la derecha de la función de Lambda.
-
Elija Detalles y, en ID lógico, ingrese
LambdaIaCTable
. -
Seleccione Guardar.
-
Conecte la tabla de DynamoDB a la función de Lambda haciendo clic en el puerto a la derecha de la tarjeta de la función de Lambda y arrastrándolo hasta el puerto a la izquierda de la tarjeta de DynamoDB.
-
Ahora que ya ha agregado estos recursos adicionales, echemos un vistazo a la plantilla actualizada de AWS SAM que ha creado Application Composer.
Visualización de la plantilla de AWS SAM actualizada
-
En el lienzo de Application Composer, elija Plantilla para cambiar de la vista de lienzo a la vista de plantilla.
Su plantilla de AWS SAM ya debería contener los siguientes recursos y propiedades adicionales:
-
Una cola de Amazon SQS con el identificador
LambdaIaCQueue
LambdaIaCQueue: Type: AWS::SQS::Queue Properties: MessageRetentionPeriod: 345600
Al agregar una cola de Amazon SQS mediante Application Composer, este establece la propiedad
MessageRetentionPeriod
. También puede establecer la propiedadFifoQueue
seleccionando Detalles en la tarjeta de cola de SQS y marcando o desmarcando la cola FIFO.Para establecer otras propiedades de la cola, puede editar la plantilla manualmente para agregarlas. Para obtener más información sobre el recurso
AWS::SQS::Queue
y sus propiedades disponibles, consulte AWS::SQS::Queue en la Guía del usuario de AWS CloudFormation. -
Una propiedad
Events
en la definición de la función de Lambda que especifica la cola de Amazon SQS como desencadenador de la funciónEvents: LambdaIaCQueue: Type: SQS Properties: Queue: !GetAtt LambdaIaCQueue.Arn BatchSize: 1
La propiedad
Events
consta de un tipo de evento y un conjunto de propiedades que dependen del tipo. Para obtener información sobre los distintos Servicios de AWS que puede configurar para activar una función de Lambda y las propiedades que puede establecer, consulte EventSource en la Guía para desarrolladores de AWS SAM. -
Una tabla de DynamoDB con el identificador
LambdaIaCTable
LambdaIaCTable: Type: AWS::DynamoDB::Table Properties: AttributeDefinitions: - AttributeName: id AttributeType: S BillingMode: PAY_PER_REQUEST KeySchema: - AttributeName: id KeyType: HASH StreamSpecification: StreamViewType: NEW_AND_OLD_IMAGES
Al agregar una tabla de DynamoDB mediante Application Composer, puede configurar las claves de la tabla seleccionando Detalles en la tarjeta de la tabla de DynamoDB y editando los valores de la clave. Application Composer también establece los valores predeterminados para otras propiedades, incluidas
BillingMode
yStreamViewType
.Para obtener más información sobre estas y otras propiedades que puede agregar a la plantilla de AWS SAM, consulte AWS::DynamoDB::Table en la Guía del usuario de AWS CloudFormation.
-
Una nueva política de IAM que permite a su función realizar operaciones CRUD en la tabla de DynamoDB que ha agregado
Policies: ... - DynamoDBCrudPolicy: TableName: !Ref LambdaIaCTable
La plantilla final de AWS SAM debería verse similar al siguiente ejemplo.
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Specification template describing your function. Resources: LambdaIaCDemo: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize: 128 Timeout: 3 Handler: lambda_function.lambda_handler Runtime: python3.11 Architectures: - x86_64 EventInvokeConfig: MaximumEventAgeInSeconds: 21600 MaximumRetryAttempts: 2 EphemeralStorage: Size: 512 RuntimeManagementConfig: UpdateRuntimeOn: Auto SnapStart: ApplyOn: None PackageType: Zip Policies: - Statement: - Effect: Allow Action: - logs:CreateLogGroup Resource: arn:aws:logs:us-east-1:594035263019:* - Effect: Allow Action: - logs:CreateLogStream - logs:PutLogEvents Resource: - arn:aws:logs:us-east-1:594035263019:log-group:/aws/lambda/LambdaIaCDemo:* - DynamoDBCrudPolicy: TableName: !Ref LambdaIaCTable Events: LambdaIaCQueue: Type: SQS Properties: Queue: !GetAtt LambdaIaCQueue.Arn BatchSize: 1 Environment: Variables: LAMBDAIACTABLE_TABLE_NAME: !Ref LambdaIaCTable LAMBDAIACTABLE_TABLE_ARN: !GetAtt LambdaIaCTable.Arn LambdaIaCQueue: Type: AWS::SQS::Queue Properties: MessageRetentionPeriod: 345600 LambdaIaCTable: Type: AWS::DynamoDB::Table Properties: AttributeDefinitions: - AttributeName: id AttributeType: S BillingMode: PAY_PER_REQUEST KeySchema: - AttributeName: id KeyType: HASH StreamSpecification: StreamViewType: NEW_AND_OLD_IMAGES
Implementación de su aplicación sin servidor mediante AWS SAM (opcional)
Si desea utilizar AWS SAM para implementar una aplicación sin servidor con la plantilla que acaba de crear en Application Composer, primero debe instalar la AWS SAM CLI. Para ello, siga las instrucciones que se enumeran en Instalación de la AWS SAM CLI.
Antes de implementar la aplicación, también debe actualizar el código de la función que Application Composer guardó junto con la plantilla. Por el momento, el archivo lambda_function.py
que guardó Application Composer contiene solo el código básico “Hola, mundo” que Lambda proporcionó al crear la función.
Para actualizar el código de la función, copie el siguiente código y péguelo en el archivo lambda_function.py
que Application Composer guardó en su máquina de compilación local. Cuando activó el modo de sincronización local, especificó el directorio en el que Application Composer debe guardar este archivo.
Este código acepta un par clave-valor en un mensaje de la cola de Amazon SQS que creó en Application Composer. Si tanto la clave como el valor son cadenas, el código las utiliza para escribir un elemento en la tabla de DynamoDB definida en la plantilla.
import boto3 import os import json # define the DynamoDB table that Lambda will connect to tablename = os.environ['LAMBDAIACTABLE_TABLE_NAME'] # create the DynamoDB resource dynamo = boto3.client('dynamodb') def lambda_handler(event, context): # get the message out of the SQS event message = event['Records'][0]['body'] data = json.loads(message) # write event data to DDB table if check_message_format(data): key = next(iter(data)) value = data[key] dynamo.put_item( TableName=tablename, Item={ 'id': {'S': key}, 'Value': {'S': value} } ) else: raise ValueError("Input data not in the correct format") # check that the event object contains a single key value # pair that can be written to the database def check_message_format(message): if len(message) != 1: return False key, value = next(iter(message.items())) if not (isinstance(key, str) and isinstance(value, str)): return False else: return True
Implementación de la aplicación sin servidor
Para implementar su aplicación con la AWS SAM CLI, lleve a cabo los siguientes pasos. Para que su función se compile e implemente correctamente, su máquina de compilación y su PATH
deben tener instalada la versión 3.11 de Python.
-
Ejecute el siguiente comando desde el directorio en el que Application Composer guardó sus archivos
template.yaml
ylambda_function.py
.sam build
Este comando recopila los artefactos de compilación de la aplicación y los coloca en el formato y la ubicación adecuados para implementarlos.
-
Para implementar la aplicación y crear los recursos de Lambda, Amazon SQS y DynamoDB especificados en la plantilla de AWS SAM, ejecute el siguiente comando.
sam deploy --guided
El uso de la marca
--guided
significa que AWS SAM le mostrará instrucciones para guiarlo a lo largo del proceso de implementación. Para esta implementación, acepte las opciones predeterminadas pulsando Intro.
Durante el proceso de implementación, AWS SAM crea los siguientes recursos en su Cuenta de AWS:
-
Una pila de AWS CloudFormation llamada
sam-app
-
Una función de Lambda con el formato de nombre
sam-app-LambdaIaCDemo-
99VXPpYQVv1M
-
Una cola de Amazon SQS con el formato de nombre
sam-app-LambdaIaCQueue-
xL87VeKsGiIo
-
Una tabla de DynamoDB con el formato de nombre
sam-app-LambdaIaCTable-
CN0S66C0VLNV
AWS SAM también crea las políticas y los roles de IAM necesarios para que su función de Lambda pueda leer los mensajes de la cola de Amazon SQS y realizar operaciones CRUD en la tabla de DynamoDB.
Para obtener más información sobre cómo implementar aplicaciones sin servidor con AWS SAM, consulte los recursos de la sección Siguientes pasos.
Puesta a prueba de la aplicación implementada (opcional)
Para confirmar que la aplicación sin servidor se ha implementado correctamente, envíe un mensaje a la cola de Amazon SQS que contenga un par clave-valor y compruebe que Lambda escribe un elemento en la tabla de DynamoDB con estos valores.
Para probar la aplicación sin servidor
-
Abra la página Colas
de la consola de Amazon SQS y seleccione la cola que creó AWS SAM en su plantilla. El nombre tiene el formato sam-app-LambdaIaCQueue-
.xL87VeKsGiIo
-
Elija Enviar y recibir mensajes y pegue el siguiente JSON en el Cuerpo del mensaje de la sección Enviar mensaje.
{ "myKey": "myValue" }
-
Elija Enviar mensaje.
Al enviar el mensaje a la cola, Lambda invocará la función a través de la asignación de orígenes de eventos definida en la plantilla de AWS SAM. Para confirmar que Lambda haya invocado su función según lo previsto, confirme que se haya agregado un elemento a la tabla de DynamoDB.
-
Abra la página Tablas
en la consola de DynamoDB y seleccione su tabla. El nombre tiene el formato sam-app-LambdaIaCTable-
.CN0S66C0VLNV
-
Elija Explorar elementos de la tabla. En el panel Devolución de elementos, debería ver un elemento con el id
myKey
y el valormyValue
.
Siguientes pasos
Para obtener más información sobre el uso de Application Composer con AWS SAM y AWS CloudFormation, comience con el artículo Uso de Application Composer con AWS CloudFormation y AWS SAM.
Para ver un tutorial guiado en el que se utiliza AWS SAM para implementar una aplicación sin servidor diseñada en Application Composer, también le recomendamos que realice el Tutorial de AWS Application Composer
AWS SAM proporciona una interfaz de línea de comandos (CLI) que puede utilizar con plantillas de AWS SAM e integraciones de terceros compatibles para crear y ejecutar sus aplicaciones sin servidor. Con la AWS SAM CLI, puede crear e implementar su aplicación, realizar pruebas y depuraciones locales, configurar canalizaciones de CI/CD y mucho más. Para obtener más información sobre el uso de AWS SAM CLI, consulte Introducción a AWS SAM en la Guía para desarrolladores de AWS Serverless Application Model.
Para aprender a implementar una aplicación sin servidor con una plantilla de AWS SAM mediante la consola de AWS CloudFormation, comience con la sección Uso de la consola de AWS CloudFormation en la Guía del usuario de AWS CloudFormation.
Regiones en las que se admite la integración de Lambda a Application Composer
La integración de Lambda a Application Composer se admite en las siguientes Regiones de AWS:
-
Este de EE. UU. (Norte de Virginia)
-
Este de EE. UU. (Ohio)
-
Oeste de EE. UU. (Norte de California)
-
Oeste de EE. UU. (Oregón)
-
África (Ciudad del Cabo)
-
Asia-Pacífico (Hong Kong)
-
Asia-Pacífico (Hyderabad)
-
Asia-Pacífico (Yakarta)
-
Asia-Pacífico (Melbourne)
-
Asia-Pacífico (Bombay)
-
Asia-Pacífico (Osaka)
-
Asia-Pacífico (Seúl)
-
Asia-Pacífico (Singapur)
-
Asia-Pacífico (Sídney)
-
Asia-Pacífico (Tokio)
-
Canadá (centro)
-
Europa (Fráncfort)
-
Europa (Zúrich)
-
Europa (Irlanda)
-
Europe (London)
-
Europa (Estocolmo)
-
Oriente Medio (EAU)