Tutorial: registre o estado de uma instância do Amazon EC2 usando EventBridge - Amazon EventBridge

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á.

Tutorial: registre o estado de uma instância do Amazon EC2 usando EventBridge

Também é possível criar uma função do AWS Lambda que registra as alterações de estado para uma instância do Amazon EC2. Você pode optar por criar uma regra que execute a função do Lambda sempre que houver uma transição de estado ou uma transição para um ou mais estados de interesse. Neste tutorial, você registra a execução de qualquer nova instância.

Etapa 1: criar uma AWS Lambda função

Crie uma função do Lambda para registrar em log os eventos de alteração de estado. Ao criar sua regra na etapa 2, essa função é especificada.

Criar uma função do Lambda
  1. Abra o AWS Lambda console em https://console.aws.amazon.com/lambda/.

  2. Escolha Create function (Criar função).

  3. Escolha Author from scratch (Criar do zero).

  4. Digite um nome e uma descrição para a função Lambda. Por exemplo, atribua à função o nome LogEC2InstanceStateChange.

  5. Deixe o resto das opções como padrão e escolha Criar função.

  6. Na guia Código da página da função, clique duas vezes em index.js.

  7. Substitua o código existente pelo código a seguir.

    'use strict'; exports.handler = (event, context, callback) => { console.log('LogEC2InstanceStateChange'); console.log('Received event:', JSON.stringify(event, null, 2)); callback(null, 'Finished'); };
  8. 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 você iniciará uma instância do Amazon EC2.

Para criar a EventBridge regra
  1. Abra o EventBridge console da Amazon em https://console.aws.amazon.com/events/.

  2. No painel de navegação, escolha Regras.

  3. Escolha Create rule.

  4. Insira um nome e uma descrição para a regra. Por exemplo, nomeie a regra como TestRule

  5. 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.

  6. Em Rule type, escolha Rule with an event pattern.

  7. Selecione Next (Próximo).

  8. Em Fonte do evento, selecione Serviços da AWS .

  9. Em Event pattern (Padrão de evento), faça o seguinte:

    1. Em Origem do evento, selecione EC2 na lista suspensa.

    2. Em Tipo de evento, escolha Notificação de mudança de estado da instância do EC2 na lista suspensa.

    3. Escolha Estados específicos e escolha em execução na lista suspensa.

    4. Escolha Qualquer instância

  10. Escolha Próximo.

  11. Em Tipos de destino, escolha Serviço da AWS .

  12. Em Selecionar um destino, escolha a função do Lambda na lista suspensa.

  13. Em Função, selecione a função do Lambda criada na seção Etapa 1: criar uma função do Lambda. Neste exemplo, selecione LogEC2InstanceStateChange.

  14. Escolha Próximo.

  15. Escolha Próximo.

  16. Analise os detalhes da regra e selecione Criar regra.

Etapa 3: Testar a regra

Você pode testar a regra ao interromper uma instância do Amazon EC2 usando o console do Amazon EC2. Aguarde alguns minutos até que a instância pare e, em seguida, verifique suas AWS Lambda métricas no CloudWatch console para verificar se sua função foi executada.

Como testar a regra ao parar uma instância
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. Execute uma instância. Para obter mais informações, consulte Iniciar uma instância no Manual do usuário do Amazon EC2.

  3. Pare a instância. Para obter mais informações, consulte Início e interrupção de instâncias no Manual do usuário do Amazon EC2.

  4. Para visualizar a saída da função do Lambda, faça o seguinte:

    1. Abra o CloudWatch console em https://console.aws.amazon.com/cloudwatch/.

    2. No painel de navegação, selecione Logs.

    3. Selecione o nome do grupo de logs para sua função do Lambda (/aws/lambda/function-name).

    4. Selecione o nome do fluxo de logs para visualizar os dados fornecidos pela função para a instância que você interrompeu.

  5. (Opcional) Ao terminar, encerre a instância interrompida. Para obter mais informações, consulte Encerramento de instâncias no Guia do usuário do Amazon EC2.

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)
  1. Abra a página Regras do EventBridge console.

  2. Selecione as regras que foram criadas.

  3. Escolha Excluir.

  4. Escolha Excluir.

Para excluir as funções do Lambda
  1. Abra a página Funções do console do Lambda.

  2. Selecione as funções que foram criadas.

  3. Selecione Ações, Excluir.

  4. Escolha Excluir.