Use Amazon EventBridge para monitorar eventos de Frota do EC2 - Amazon Elastic Compute Cloud

Use Amazon EventBridge para monitorar eventos de Frota do EC2

Quando uma notificação de uma alteração de estado é emitida para uma EC2 Fleet, o evento da notificação é enviado para o Amazon EventBridge na forma de arquivo JSON. Você pode escrever uma regra de EventBridge e automatizar quais ações tomar quando o padrão de evento corresponder à regra. Se o EventBridge detectar um padrão de evento que corresponda a um padrão definido em uma regra, o EventBridge invocará um destino (ou destinos) especificado(s) na regra.

Os campos a seguir formam o padrão de evento definido na regra:

"source": "aws.ec2fleet"

Identifica que o evento é de Frota do EC2.

"detail-type": "EC2 Fleet State Change"

Identifica o tipo de evento.

"detail": { "sub-type": "submitted" }

Identifica o subtipo de evento.

Para obter a lista de eventos do EC2 Fleet e dados de eventos de exemplo, consulteTipos de evento de Frota do EC2.

Criar uma regra de EventBridge para enviar uma notificação

O exemplo a seguir cria uma regra de EventBridge para enviar um e-mail, mensagem de texto ou notificação por push móvel sempre que o Amazon EC2 emite uma notificação de Frota do EC2. O sinal neste exemplo é emitido como um evento de EC2 Fleet State Change, que aciona a ação definida pela regra.

Antes de criar a regra EventBridge, você deve criar o tópico do Amazon SNS para e-mail, mensagem de texto ou notificação por push móvel.

Para criar uma regra de EventBridge para enviar uma notificação quando um estado de Frota do EC2 muda
  1. Abra o console do Amazon EventBridge em https://console.aws.amazon.com/events/.

  2. Selecione Criar regra.

  3. Em Define rule detail (Definir detalhe da regra), faça o seguinte:

    1. Informe um Name (Nome) para a regra e, opcionalmente, uma descrição.

      Uma regra não pode ter o mesmo nome que outra regra na mesma região e no mesmo barramento de eventos.

    2. Em Event Bus (Barramento de eventos), escolha default (padrão). Quando um serviço da AWS em sua conta gerar um evento, ele sempre irá para o barramento de eventos padrão da sua conta.

    3. Em Rule type (Tipo de regra), escolha Rule with an event pattern (Regra com um padrão de evento).

    4. Escolha Próximo.

  4. Em Build event pattern (Criar padrão de evento), faça o seguinte:

    1. Em Event source (Origem do evento), escolha Eventos da AWS ou eventos de parceiro do EventBridge.

    2. Em Event pattern (Padrão de evento), nesse exemplo, você especificará o seguinte padrão de evento para corresponder ao evento EC2 Fleet Instance Change.

      { "source": ["aws.ec2fleet"], "detail-type": ["EC2 Fleet Instance Change"] }

      Para adicionar o padrão de evento, é possível usar um modelo escolhendo Event pattern form (Formulário de padrão de evento), ou especifique seu próprio padrão escolhendo Custom pattern (JSON editor) (Padrão personalizado (editor JSON)), como segue:

      1. Para usar um modelo para criar o padrão de evento, faça o seguinte:

        1. Escolha Event pattern form (Formulário de evento).

        2. Em Event source (Origem do evento), escolha AWS services (Serviços da ).

        3. Para Service (Serviço da AWS), escolha EC2 Fleet (Frota do EC2).

        4. Em Event type (Tipo de evento), escolha EC2 Fleet Instance Change (Alteração da instância da frota do EC2).

        5. Para personalizar o modelo, escolha Edit pattern (Editar padrão) e faça as alterações para corresponder ao padrão de evento de exemplo.

      2. (Alternativa) Para especificar um padrão de evento personalizado, faça o seguinte:

        1. Escolha Custom pattern (JSON editor) (Padrão personalizado (editor JSON)).

        2. Na caixa Event pattern (Padrão de evento), adicione o padrão de evento para este exemplo.

    3. Escolha Próximo.

  5. Em Select target(s) (Selecionar destino(s)), faça o seguinte:

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

    2. Em Select a target (Selecione um destino), escolha SNS topic (Tópico do SNS) para enviar um email, mensagem de texto ou notificação por push móvel quando o evento ocorrer.

    3. Em Topic (Tópico), escolha um tópico existente. Para fazer isso, você precisa criar um tópico do Amazon SNS usando o console do Amazon SNS. Para obter mais informações, consulte Usar o Amazon SNS para mensagens de aplicação para pessoa (A2P) no Guia do desenvolvedor do Amazon Simple Notification Service.

    4. (Opcional) Em Additional settings (Configurações adicionais), é possível, opcionalmente, definir configurações adicionais. Para obter mais informações, consulte Criar regras do Amazon EventBridge que reajam a eventos (etapa 16) no Guia do usuário do Amazon EventBridge.

    5. Escolha Próximo.

  6. (Opcional) Em Tags (Etiquetas), é possível atribuir, opcionalmente, uma ou mais etiquetas à sua regra e, em seguida, escolher Next (Próximo).

  7. Em Review and create (Revisar e criar), faça o seguinte:

    1. Revise os detalhes da regra e modifique-os conforme necessário.

    2. Escolha Criar Regra.

Para obter mais informações, consulte Amazon EventBridge rules (Regras do Amazon EventBridge) e Amazon EventBridge event patterns (Padrões de eventos do Amazon EventBridge) no Amazon EventBridge User Guide (Guia do usuário do Amazon EventBridge).

Criar uma regra de EventBridge para acionar uma função do Lambda

O exemplo a seguir cria uma regra de EventBridge para acionar uma função do Lambda toda vez que Amazon EC2 emite uma notificação de Frota do EC2. O sinal neste exemplo é emitido como um evento de EC2 Fleet Instance Change, subtipo launched, que aciona a ação definida pela regra.

Antes de criar a regra de EventBridge, você deve criar a função do Lambda.

Como criar a função do Lambda a ser usada na regra EventBridge
  1. Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.

  2. Escolha Create function.

  3. Digite um nome para sua função, configure o código e escolha Create function (Criar função).

    Para obter mais informações sobre como usar o Lambda, consulte Criar uma função do Lambda com o console no Guia do desenvolvedor do AWS Lambda.

Para criar uma regra de EventBridge para acionar uma função do Lambda quando uma instância em um estado de Frota do EC2 muda
  1. Abra o console do Amazon EventBridge em https://console.aws.amazon.com/events/.

  2. Selecione Criar regra.

  3. Em Define rule detail (Definir detalhe da regra), faça o seguinte:

    1. Informe um Name (Nome) para a regra e, opcionalmente, uma descrição.

      Uma regra não pode ter o mesmo nome que outra regra na mesma região e no mesmo barramento de eventos.

    2. Em Event Bus (Barramento de eventos), escolha default (padrão). Quando um serviço da AWS em sua conta gerar um evento, ele sempre irá para o barramento de eventos padrão da sua conta.

    3. Em Rule type (Tipo de regra), escolha Rule with an event pattern (Regra com um padrão de evento).

    4. Escolha Próximo.

  4. Em Build event pattern (Criar padrão de evento), faça o seguinte:

    1. Em Event source (Origem do evento), escolha Eventos da AWS ou eventos de parceiro do EventBridge.

    2. Em Event pattern (Padrão de evento) nesse exemplo, você especificará o seguinte padrão de evento para corresponder ao evento EC2 Fleet Instance Change e ao subtipo launched.

      { "source": ["aws.ec2fleet"], "detail-type": ["EC2 Fleet Instance Change"], "detail": { "sub-type": ["launched"] }

      Para adicionar o padrão de evento, é possível usar um modelo escolhendo Event pattern form (Formulário de padrão de evento), ou especifique seu próprio padrão escolhendo Custom pattern (JSON editor) (Padrão personalizado (editor JSON)), como segue:

      1. Para usar um modelo para criar o padrão de evento, faça o seguinte:

        1. Escolha Event pattern form (Formulário de evento).

        2. Em Event source (Origem do evento), escolha AWS services (Serviços da ).

        3. Para Service (Serviço da AWS), escolha EC2 Fleet (Frota do EC2).

        4. Em Event type (Tipo de evento), escolha EC2 Fleet Instance Change (Alteração da instância da frota do EC2).

        5. Selecione Edit pattern (Editar padrão) e adicione "detail": {"sub-type": ["launched"] para corresponder ao padrão do evento de exemplo. Para o formato JSON adequado, insira uma vírgula (,) após o colchete anterior (]).

      2. (Alternativa) Para especificar um padrão de evento personalizado, faça o seguinte:

        1. Escolha Custom pattern (JSON editor) (Padrão personalizado (editor JSON)).

        2. Na caixa Event pattern (Padrão de evento), adicione o padrão de evento para este exemplo.

    3. Escolha Próximo.

  5. Em Select target(s) (Selecionar destino(s)), faça o seguinte:

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

    2. Em Select a target (Selecione um destino), escolha SNS topic (Tópico do SNS) para enviar um email, mensagem de texto ou notificação por push móvel quando o evento ocorrer.

    3. Para Topic (Tópico), escolha a Lambda function (função Lambda) e, para Function (Função), escolha a função que você criou para responder quando o evento ocorrer.

    4. (Opcional) Em Additional settings (Configurações adicionais), é possível, opcionalmente, definir configurações adicionais. Para obter mais informações, consulte Criar regras do Amazon EventBridge que reajam a eventos (etapa 16) no Guia do usuário do Amazon EventBridge.

    5. Escolha Próximo.

  6. (Opcional) Em Tags (Etiquetas), é possível atribuir, opcionalmente, uma ou mais etiquetas à sua regra e, em seguida, escolher Next (Próximo).

  7. Em Review and create (Revisar e criar), faça o seguinte:

    1. Revise os detalhes da regra e modifique-os conforme necessário.

    2. Escolha Criar Regra.

Para obter um tutorial sobre como criar uma função do Lambda e uma EventBridge regra que executa a função do Lambda, consulte Tutorial: Log the State of an Amazon EC2 Instance Using EventBridge (Tutorial: Registrar em log o estado de uma instância do Amazon EC2 usando o EventBridge) no AWS Lambda User Guide (Guia do usuário do Amazon EventBridge).