AWS Lambda
Guia do desenvolvedor

Introdução aos aliases do AWS Lambda

Você pode criar aliases para sua função Lambda. Um alias do AWS Lambda é como um indicador para uma versão específica da função do Lambda. Para obter mais informações sobre controle de versão, consulte Introdução ao versionamento do AWS Lambda.

Usando o alias, você pode acessar a função Lambda à qual ele está apontando (por exemplo, para invocar a função) sem que o chamador tenha que conhecer a versão específica à qual o alias está apontando.

Os aliases do AWS Lambda permitem os seguintes casos de uso:

  • Suporte mais fácil para promoção de novas versões de funções do Lambda e reversão, quando necessário– Após criar uma função do Lambda (a versão $LATEST), você poderá publicar a versão 1 dela. Ao criar um alias chamado PROD que aponta para a versão 1, você agora pode usar o alias PROD para invocar a versão 1 da função Lambda.

    Agora você pode atualizar o código (a versão $LATEST) com todas as melhorias e, em seguida, publicar outra versão estável e aprimorada (versão 2). Você pode promover a versão 2 para produção mapeando novamente o alias PROD para que aponte para a versão 2. Se você encontrar algo errado, poderá facilmente reverter a versão de produção para a versão 1 remapeando o alias PROD para que aponte para a versão 1.

  • Simplifique o gerenciamento de mapeamentos de origem do evento – Em vez de usar os nomes de recurso da Amazon (ARNs) para função do Lambda nos mapeamentos de origem do evento, você pode usar o ARN de um alias. Com essa abordagem, você não precisa atualizar seus mapeamentos de origem de eventos ao promover uma nova versão ou reverter para uma versão anterior.

Tanto a função quanto o alias doLambda são recursos do AWS Lambda, e como todos os outros recursos da AWS, ambos têm Nomes de recurso da Amazon (ARNs) exclusivos. O exemplo a seguir mostra uma função do Lambda (a versão $LATEST) com uma versão publicada. Cada versão tem um alias apontando para si.

Você pode acessar a função usando o ARN da função ou do alias.

  • Como a versão de função para uma função não qualificada sempre mapeia para $LATEST, você poderá acessá-la usando o ARN qualificado ou não qualificado da função. A tabela a seguir mostra um ARN qualificado de função com o sufixo de versão $LATEST.

    arn:aws:lambda:aws-region:acct-id:function:helloworld:$LATEST
  • Ao usar algum dos ARNs do alias, você está usando um ARN qualificado. Cada ARN do alias tem um sufixo de nome do alias.

    arn:aws:lambda:aws-region:acct-id:function:helloworld:PROD arn:aws:lambda:aws-region:acct-id:function:helloworld:BETA arn:aws:lambda:aws-region:acct-id:function:helloworld:DEV

O AWS Lambda oferece as seguintes operações de API para que você crie e gerencie aliases:

Exemplo: Uso de aliases para gerenciar versões da função Lambda

Veja a seguir um cenário de exemplo sobre como usar versionamento e aliases para promover novas versões das funções Lambda na produção.

Inicialmente, você cria uma função Lambda.

A função que você cria é a versão $LATEST. Você também cria um alias (DEV, de desenvolvimento) que aponta para a função recém-criada. Os desenvolvedores podem usar esse alias para testar a função com as fontes de eventos em um ambiente de desenvolvimento.

Em seguida, teste a versão da função usando fontes de eventos em um ambiente beta, de forma estável, enquanto continua a desenvolver versões mais recentes.

Você publica uma versão de $LATEST e faz outro alias (BETA) apontar para ela. Com essa abordagem, você pode associar suas fontes de eventos beta a esse alias específico. Nos mapeamentos da fonte do evento, use o alias BETA para associar sua função do Lambda com a fonte do evento.

Em seguida, promova a versão da função do Lambda na produção para trabalhar com fontes de eventos no ambiente de produção.

Depois de testar a versão BETA da função, você pode definir a versão da produção criando um alias que mapeia para a versão 1. Nessa abordagem, você aponta suas fontes de eventos de produção para essa versão específica. Você pode fazer isso criando um alias PROD e usando o ARN do alias PROD em todos os seus mapeamentos da fonte do evento de produção.

Continue o desenvolvimento, publique mais versões e teste.

À medida que você desenvolve seu código, pode atualizar a versão $LATEST fazendo upload do código atualizado e o publicando para testes beta, para que o alias BETA aponte para ela. Com esse simples remapeamento do alias beta, você pode colocar a versão 2 da sua função Lambda em beta sem alterar nenhuma das suas fontes de eventos. Essa abordagem se trata de como os aliases permitem que você controle quais versões da sua função serão usadas com fontes de eventos específicas no seu ambiente de desenvolvimento.

Se você quiser tentar a criação dessa configuração usando a AWS Command Line Interface, consulte Tutorial: Uso de alias do AWS Lambda.