As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Você pode executar uma AWS Lambdafunção que registra eventos sempre que um grupo do Auto Scaling inicia ou encerra uma EC2 instância da Amazon que indica se um evento foi bem-sucedido.
Para obter informações sobre mais cenários que usam eventos do Amazon EC2 Auto Scaling, consulte Use to handle EventBridge Auto Scaling events no Amazon Auto Scaling User EC2 Guide.
Neste tutorial, você cria uma função Lambda e cria uma regra no EventBridge console que chama essa função quando um grupo do Amazon Auto EC2 Scaling inicia ou encerra uma instância.
Etapas:
Pré-requisitos
Para concluir este tutorial, serão necessários os seguintes recursos:
Um grupo do Auto Scaling. Para obter mais informações sobre como criar um, consulte Criação de um grupo de Auto Scaling usando uma configuração de lançamento no Guia do usuário do Amazon Auto EC2 Scaling.
Etapa 1: criar uma função do Lambda
Crie uma função do Lambda para registrar os eventos de aumento e redução da escala na horizontal para seu grupo do Auto Scaling.
Criar uma função do Lambda
Abra o AWS Lambda console em https://console.aws.amazon.com/lambda/
. -
Escolha Create function (Criar função).
-
Escolha Author from scratch (Criar do zero).
-
Insira um nome para a função do Lambda. Por exemplo, atribua à função o nome
LogAutoScalingEvent
. -
Deixe o resto das opções como padrão e escolha Criar função.
-
Na guia Código da página da função, clique duas vezes em index.js.
-
Substitua o código existente pelo código a seguir.
'use strict'; exports.handler = (event, context, callback) => { console.log('LogAutoScalingEvent'); console.log('Received event:', JSON.stringify(event, null, 2)); callback(null, 'Finished'); };
-
Escolha Deploy (Implantar).
Etapa 2: Criar uma regra
Crie uma regra para executar a função do Lambda criada na etapa 1. A regra é executada quando seu grupo do Auto Scaling inicia ou interrompe uma instância.
Para criar uma regra do
Abra o EventBridge console da Amazon em https://console.aws.amazon.com/events/
. -
No painel de navegação, escolha Regras.
-
Escolha Create rule.
-
Insira um nome e uma descrição para a regra. Por exemplo, nomeie a regra como
TestRule
-
Em Barramento de Eventos, escolha o barramento de eventos que você deseja associar a essa regra. Se quiser que essa regra faça a correspondência com eventos provenientes da sua conta, selecione padrão. Quando um serviço da AWS em sua conta emite um evento, ele sempre vai para o barramento de eventos padrão da sua conta.
-
Em Tipo de Regra, escolha Regra com Padrão de Evento.
-
Selecione Next (Próximo).
-
Em Fonte do evento, selecione Serviços da AWS .
-
Em Event pattern (Padrão de evento), faça o seguinte:
-
Em Origem do evento, selecione ajuste de escala automático na lista suspensa.
-
Em Tipo de evento, selecione Iniciar e encerrar instância na lista suspensa.
-
Escolha Qualquer evento de instância e Qualquer nome de grupo.
-
-
Escolha Next (Avançar).
-
Em Tipos de destino, escolha Serviço da AWS .
-
Em Selecionar um destino, escolha a função do Lambda na lista suspensa.
-
Em Função, selecione a função do Lambda criada na seção Etapa 1: criar uma função do Lambda. Neste exemplo, selecione
LogAutoScalingEvent
. -
Escolha Próximo.
-
Escolha Próximo.
-
Analise os detalhes da regra e selecione Criar regra.
Etapa 3: Testar a regra
Você pode testar a regra escalando manualmente um grupo do Auto Scaling para que ele inicie uma instância. Espere alguns minutos para que o evento que aumenta a escala horizontalmente ocorra, verifique se sua função do Lambda foi invocada.
Para testar a regra usando um grupo do Auto Scaling
-
Para aumentar o tamanho de seu grupo do Auto Scaling, faça o seguinte:
-
Abra o EC2 console da Amazon em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Auto Scaling, Auto Scaling Groups (Grupos de Auto Scaling).
-
Marque a caixa de seleção para seu grupo do Auto Scaling.
-
Na guia Details (Detalhes), escolha Edit (Editar). Em Desejada, aumente a capacidade desejada para um. Por exemplo, se o valor atual for 2, digite 3. A capacidade desejada deve ser menor ou igual ao tamanho máximo do grupo. Se o seu novo valor para Desejado for maior que Máx, você deve atualizar Máx. Ao terminar, escolha Salvar.
-
-
Para visualizar a saída da função do Lambda, faça o seguinte:
Abra o CloudWatch console em https://console.aws.amazon.com/cloudwatch/
. -
No painel de navegação, selecione Logs.
-
Selecione o nome do grupo de logs para sua função do Lambda (
/aws/lambda/
).function-name
-
Selecione o nome do fluxo de logs para visualizar os dados fornecidos pela função para a instância que você iniciou.
-
(Opcional) Ao concluir, é possível diminuir a capacidade desejada em um nível para que o grupo do Auto Scaling volte ao tamanho anterior.
Etapa 4: confirmar o êxito
Se você ver o evento Lambda nos CloudWatch registros, concluiu com êxito este tutorial. Se o evento não estiver em seus CloudWatch registros, comece a solucionar problemas verificando se a regra foi criada com sucesso e, se a regra parecer correta, verifique se o código da sua função Lambda está correto.
Etapa 5: limpar os recursos
Agora você pode excluir os recursos criados para este tutorial, a menos que queira mantê-los. Ao excluir AWS recursos que você não está mais usando, você evita cobranças desnecessárias em sua AWS conta.
Para excluir a (s) EventBridge regra (s)
-
Abra a página Regras
do EventBridge console. -
Selecione as regras que foram criadas.
-
Escolha Excluir.
-
Escolha Excluir.
Para excluir as funções do Lambda
-
Abra a página Funções
do console do Lambda. -
Selecione as funções que foram criadas.
-
Selecione Ações, Excluir.
-
Escolha Excluir.