Tutorial: registre o estado de uma EC2 instância da Amazon 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 EC2 instância da Amazon usando EventBridge

Você pode criar uma AWS Lambdafunção que registra uma mudança de estado para uma EC2 instância da Amazon. 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 função do AWS Lambda

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ê executa uma EC2 instância da Amazon.

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 Tipo de Regra, escolha Regra com Padrão de Evento.

  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, EC2selecione na lista suspensa.

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

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

    4. Escolha Qualquer instância

  10. Selecione Next (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 sua regra interrompendo uma EC2 instância da Amazon usando o EC2 console da Amazon. 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 EC2 console da Amazon em https://console.aws.amazon.com/ec2/.

  2. Execute uma instância. Para obter mais informações, consulte Launch Your Instance no Guia EC2 do usuário da Amazon.

  3. Pare a instância. Para obter mais informações, consulte Stop and Start Your Instance no Guia EC2 do usuário da Amazon.

  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 Encerre sua instância no Guia do EC2 usuário da Amazon.

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 Delete (Excluir).

  4. Escolha Delete (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. Escolha Ações, Excluir.

  4. Escolha Excluir.