Invocar funciones definidas como imágenes de contenedor - AWS Lambda

Invocar funciones definidas como imágenes de contenedor

Para una función de Lambda definida como una imagen contenedor, el comportamiento de la función durante la invocación es muy similar a una función definida como un archivo .zip. En las siguientes secciones se destacan las similitudes y diferencias.

Ciclo de vida de la función

Después de cargar una imagen de contenedor nueva o actualizada, Lambda la optimiza antes de que la función pueda procesar las invocaciones. El proceso de optimización puede tardar unos segundos. La función permanece en el estado Pending hasta que se completa el proceso. A continuación, la función pasa al estado Active. Mientras que el estado es Pending, puede invocar la función, pero otras operaciones en la función fallan. Las invocaciones que se producen mientras una actualización de imagen está en curso ejecutan el código de la imagen anterior.

Si una función no se invoca durante varias semanas, Lambda recupera su versión optimizada y la función pasa al estado Inactive. Para reactivar la función, debe invocarla. Lambda rechaza la primera invocación y la función entra en el estado Pending hasta que Lambda vuelva a optimizar la imagen. A continuación, la función regresa al Active estado.

Lambda recupera periódicamente la imagen del contenedor asociada del repositorio Amazon Elastic Container Registry (Amazon ECR). Si la imagen de contenedor correspondiente ya no existe en Amazon ECR o se revocan los permisos, la función entra en estado Failed y Lambda devuelve un error para cualquier invocación de la función.

Puede utilizar la API de Lambda para obtener información sobre el estado de una función. Para obtener más información, consulte Estados de función de Lambda.

Invocación de la función

Cuando se invoca la función, Lambda implementa la imagen del contenedor en un entorno de ejecución. Lambda inicializa cualquier extensión y luego ejecuta el código de inicialización de la función (el código fuera del controlador principal). Tenga en cuenta que la duración de la inicialización de la función se incluya en el tiempo de ejecución facturado.

Lambda luego ejecuta la función mediante una llamada al punto de entrada de código especificado en la configuración de la función (ajustes de imagen de contenedor CMD y ENTRYPOINT).

Seguridad de imagen

Cuando Lambda descarga por primera vez la imagen contenedor desde su fuente original (Amazon ECR), la imagen del contenedor se optimiza, encripta y almacena utilizando métodos de cifrado convergente autenticados. Todas las claves necesarias para descifrar los datos del cliente están protegidas mediante claves administradas por el cliente de AWS KMS. Para realizar un seguimiento y auditar el uso de las claves administradas por el cliente, puede ver los registros de AWS CloudTrail.