Lambda paquetes de implementación - AWS Lambda

Lambda paquetes de implementación

El código de la función AWS Lambda se compone de scripts o programas compilados y sus dependencias. Utilice un paquete de implementación para implementar el código de función en Lambda. Lambda admite dos tipos de paquetes de implementación: imágenes de contenedor y archivos .zip.

Imágenes de contenedor

Una imagen contenedor incluye el sistema operativo base, el tiempo de ejecución, las Lambda extensiones, el código de la aplicación y sus dependencias. También puede agregar datos estáticos, como modelos de aprendizaje automático, a la imagen.

Lambda proporciona un conjunto de imágenes base de código abierto que puede usar para crear su imagen contenedor. Para crear y probar imágenes de contenedor, puede utilizar la interfaz de línea de comandos Modelo de aplicación sin servidor de AWS (AWS SAM) (CLI) o herramientas de contenedor nativas como la CLI de Docker.

Cargue las imágenes de contenedor a Amazon EC2 Container Registry (Amazon ECR), un servicio de registro de imágenes de AWS contenedor administrado. Para implementar la imagen en su función, especifique la URL de la imagen Amazon ECR mediante la consola Lambda, la API Lambda, las herramientas de línea de comandos o los SDK AWS.

Para obtener más información acerca de las imágenes de contenedor Lambda, consulte Usar imágenes de contenedor con Lambda.

archivos de archivo .zip

Un archivo de archivo .zip incluye el código de la aplicación y sus dependencias. Al crear funciones mediante la consola Lambda o un kit de herramientas, Lambda crea automáticamente un archivo de archivo .zip del código.

Al crear funciones con la Lambda API, las herramientas de línea de comandos o los AWS SDK, debe crear un paquete de implementación. También debe crear un paquete de implementación si su función utiliza un lenguaje compilado, o para agregar dependencias a su función. Para implementar el código de su función, cargue el paquete de implementación desde Amazon Simple Storage Service (Amazon S3) o desde su equipo local.

Puede cargar un archivo.zip como paquete de implementación mediante la consola de Lambda, AWS Command Line Interface (AWS CLI) o en un bucket Amazon Simple Storage Service (Amazon S3).

Mediante la consola de Lambda

Los siguientes pasos muestran cómo cargar un archivo.zip como paquete de implementación mediante la consola de Lambda.

Para cargar un archivo.zip en la consola de Lambda

  1. Abra la Página de funciones en la consola de Lambda.

  2. Seleccione una función.

  3. En el panel Code Source (Origen de código), elija Upload from (Cargar desde) y, a continuación, .zip file (archivo .zip).

  4. Seleccione Cargar para seleccionar el archivo.zip local.

  5. Seleccione Save.

Mediante AWS CLI

Puede cargar un archivo.zip como paquete de implementación utilizando AWS Command Line Interface (AWS CLI). Si desea obtener instrucciones específicas del lenguaje, consulte los temas siguientes.

Uso de Amazon S3

Puede cargar un archivo.zip como paquete de implementación utilizando Amazon Simple Storage Service (Amazon S3). Para obtener más información, consulte Uso de otros servicios de AWS para crear un paquete de implementación.

Capas

Si implementa el código de función mediante un archivo de archivo.zip, puede usar Lambda capas como mecanismo de distribución para bibliotecas, tiempos de ejecución personalizados y otras dependencias de funciones. Las capas le permiten administrar su código de función en desarrollo con independencia del código invariable y los recursos que utiliza. Puede configurar su función para que utilice capas que cree, capas que AWS proporciona o capas de otros clientes AWS.

No se utilizan capas con imágenes de contenedor. En su lugar, empaqueta su tiempo de ejecución preferido, bibliotecas y otras dependencias en la imagen contenedor cuando construye la imagen.

Para obtener más información acerca de las capas, consulte Capas de Lambda.

Uso de otros servicios de AWS para crear un paquete de implementación

En la siguiente sección se describen otros servicios de AWS que puede utilizar para empaquetar dependencias para su función de Lambda.

Paquetes de implementación con bibliotecas C o C++

Si el paquete de implementación contiene bibliotecas nativas, puede compilar el paquete de implementación con Modelo de aplicación sin servidor de AWS (AWS SAM). Puede utilizar el comando sam build de la CLI de AWS SAM con --use-container para crear el paquete de implementación. Esta opción crea un paquete de implementación dentro de una imagen de Docker que es compatible con el entorno de ejecución de Lambda.

Para obtener más información, consulte compilación sam en la Guía para desarrolladores de Modelo de aplicación sin servidor de AWS.

Paquetes de implementación superiores a 50 MB

Si su paquete de implementación tiene más de 50 MB, le recomendamos que cargue el código de función y las dependencias en un bucket de Amazon S3.

Puede crear un paquete de implementación y cargar el archivo.zip en su bucket de Amazon S3 en la región de AWS donde desee crear una función Lambda. Cuando cree su función Lambda, especifique el nombre del bucket de S3 y el nombre de la clave de objeto en la consola de Lambda o mediante la interfaz de línea de comandos de AWS (CLI de AWS).

Para crear un bucket mediante la consola de Amazon S3, consulte ¿Cómo se crea un bucket de S3? en la guía del usuario de la consola de Amazon Simple Storage Service.