Configuração de extensões do Lambda - AWS Lambda

Configuração de extensões do Lambda

Configurar extensões (arquivamento de arquivo.zip)

Você pode adicionar uma extensão à sua função como uma camada do Lambda. O uso de camadas permite compartilhar extensões em toda a organização ou com toda a comunidade de desenvolvedores do Lambda. É possível adicionar uma ou mais extensões a uma camada. É possível registrar até 10 extensões para uma função.

Adicione a extensão à função usando o mesmo método que faria para qualquer camada. Para ter mais informações, consulte Gerenciar dependências do Lambda com camadas.

Adicionar uma extensão à função (console)
  1. Abra a página Funções do console do Lambda.

  2. Escolha uma função.

  3. Escolha a guia Código se ainda não estiver selecionada.

  4. Em Camadas, escolha Editar.

  5. Em Choose a layer (Selecionar uma camada), selecione Specify an ARN (Especificar um ARN).

  6. Em Specify an ARN (Especificar um ARN), insira o nome de recurso da Amazon (ARN) de uma camada de extensão.

  7. Escolha Adicionar.

Uso de extensões em imagens de contêiner

Você pode adicionar extensões à imagem do contêiner. A configuração de imagem de contêiner ENTRYPOINT especifica o processo principal para a função. Configure a configuração ENTRYPOINT no Dockerfile ou como uma substituição na configuração da função.

Você pode executar vários processos dentro de um contêiner. Lambda gerencia o ciclo de vida do processo principal e quaisquer processos adicionais. O Lambda usa oAPI Extensions dopara gerenciar o ciclo de vida da extensão.

Exemplo: Adicionando uma extensão externa

Uma extensão externa é executada em um processo separado da função Lambda. O Lambda inicia um processo para cada extensão no/opt/extensions/Diretório. O Lambda usa a API de extensões para gerenciar o ciclo de vida da extensão. Depois que a função for executada até a conclusão, o Lambda envia um evento Shutdown para cada extensão externa.

exemplo de adicionar uma extensão externa a uma imagem base Python
FROM public.ecr.aws/lambda/python:3.11 # Copy and install the app COPY /app /app WORKDIR /app RUN pip install -r requirements.txt # Add an extension from the local directory into /opt ADD my-extension.zip /opt CMD python ./my-function.py

Próximas etapas

Para saber mais sobre extensões, recomendamos os seguintes recursos: