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á.
Uso EventBridge com pipelines do Image Builder
AWS e serviços de parceiros transmitem eventos para os ônibus de EventBridge eventos da Amazon quase em tempo real. Você também pode enviar seus próprios eventos personalizados. Os ônibus de eventos usam regras para direcionar cada evento para um ou mais alvos.
O Image Builder funciona EventBridge em duas direções independentes:
-
Inicie uma criação de pipeline a partir de uma regra. Você pode definir um pipeline do Image Builder como um destino de regra, então EventBridge executa o pipeline quando um evento corresponde à regra ou quando um agendamento é acionado. Consulte Acione uma criação de funil de acordo com um cronograma e Acione uma construção de pipeline a partir de um padrão de evento.
-
Reaja aos eventos que o Image Builder envia. O Image Builder publica eventos no barramento de eventos padrão quando ocorrem alterações significativas, por exemplo, quando uma imagem se torna
AVAILABLEou um escaneamento detecta CVEs. Você pode combinar esses eventos com uma regra e encaminhá-los para destinos como uma função do Lambda ou um tópico do Amazon SNS para iniciar suas próprias automações. Consulte Reaja aos eventos que o Image Builder envia.
Para obter mais informações sobre os eventos que o Image Builder envia e os campos em cada evento, consulteMensagens de eventos que o Image Builder envia.
nota
Os ônibus para eventos são Region-specific. Uma regra e os recursos que ela invoca normalmente estão na mesma região; para rotear entre regiões, use um ônibus de eventos na região de destino. O Image Builder publica seus eventos no barramento de eventos padrão na região em que a compilação é executada.
Conteúdo
EventBridge termos
Os termos a seguir ajudam você a entender como EventBridge se integra aos seus pipelines do Image Builder.
- Event
-
Descreve uma alteração em um ambiente que pode afetar um ou mais recursos do aplicativo. O ambiente pode ser um AWS ambiente, um serviço ou aplicativo de um parceiro SaaS ou um de seus aplicativos ou serviços. Também é possível configurar eventos agendados em uma linha do tempo.
- Barramento de eventos
-
Um pipeline que recebe dados de eventos de aplicativos e serviços.
- Fonte
-
O serviço ou aplicativo que enviou o evento para o ônibus do evento.
- Destino
-
Um recurso ou endpoint que EventBridge invoca quando corresponde a uma regra, entregando dados do evento para o destino.
- Regra
-
Uma regra corresponde a eventos de entrada e encaminha-os para os destinos para processamento. Uma única regra pode enviar um evento para vários destinos, que podem ser executados paralelamente. As regras são baseadas em um padrão de evento ou em uma programação.
- Padrão
-
Um padrão de evento define a estrutura do evento e os campos aos quais uma regra corresponde para iniciar a ação de destino.
- Agendamento
-
As regras de agendamento executam uma ação em um cronograma, como executar um pipeline do Image Builder para atualizar uma imagem trimestralmente. Há dois tipos de expressões de agendamento:
-
Expressões Cron: combine critérios de agendamento específicos usando a sintaxe cron que pode delinear critérios simples; por exemplo, execução semanal em um dia específico. Você também pode estabelecer critérios mais complexos, como correr trimestralmente no quinto dia do mês, entre 2h e 4h.
-
Expressões de taxa: especifique um intervalo regular quando o alvo é invocado, como a cada 12 horas.
-
Veja EventBridge as regras do seu pipeline do Image Builder
A guia de EventBridge regras na página de detalhes dos pipelines de imagens do Image Builder exibe os barramentos de EventBridge eventos aos quais sua conta tem acesso e as regras do barramento de eventos selecionado que se aplicam ao pipeline atual. Essa guia também está vinculada diretamente ao EventBridge console para criar novos recursos.
Ações vinculadas ao EventBridge console
-
Crie um barramento de eventos
-
Criar regra
Para saber mais EventBridge, consulte os tópicos a seguir no Guia do EventBridge usuário da Amazon.
Acione uma criação de funil de acordo com um cronograma
Defina um pipeline do Image Builder como o alvo de uma regra de EventBridge agendamento para atualizar uma imagem em uma cadência regular. O exemplo a seguir cria uma regra que inicia a criação de um pipeline a cada 90 dias.
nota
Um pipeline também pode carregar sua própria programação embutida (uma expressão cron ou de taxa armazenada no pipeline). Esse agendamento é gerenciado pelo Image Builder e é separado de qualquer EventBridge regra:
-
Use o cronograma do pipeline para uma simples reconstrução recorrente. Ele também pode bloquear compilações com base em atualizações de dependências e desativar automaticamente um pipeline com falha. Veja
Schedulena Referência da API do EC2 Image Builder. -
Use uma EventBridge regra para iniciar uma construção a partir de um padrão de evento ou para direcionar um gatilho para vários alvos.
nota
Para saber mais sobre as configurações das regras de expressão de taxa que não são abordadas neste exemplo, consulte Expressões de taxa no Guia EventBridge do usuário da Amazon.
Acione uma construção de pipeline a partir de um padrão de evento
Em vez de um cronograma, você pode iniciar a criação de um pipeline quando um evento corresponder a um padrão. Crie uma regra com um padrão de evento e adicione seu pipeline como destino (com a mesma função do IAM descrita emAcione uma criação de funil de acordo com um cronograma).
O exemplo a seguir inicia uma construção sempre que uma imagem base específica se torna AVAILABLE — por exemplo, para encadear uma construção de imagem dependente após a conclusão da imagem base. O resources prefixo define o escopo da regra para a imagem base para que ela corresponda somente a essa imagem, e não à saída do próprio pipeline dependente:
{ "source": ["aws.imagebuilder"], "detail-type": ["EC2 Image Builder Image State Change"], "detail": { "state": { "status": ["AVAILABLE"] } }, "resources": [{ "prefix": "arn:aws:imagebuilder:us-west-2:111122223333:image/my-base-image/" }] }
Importante
Escale o padrão do evento para a imagem base, conforme mostrado pelo resources prefixo neste exemplo. Um padrão que corresponde a cada AVAILABLE imagem na conta também corresponde à imagem de saída do próprio pipeline dependente, que inicia o pipeline novamente e pode criar um ciclo de construção infinito. Filtre pelo nome da imagem base específica ou pelo prefixo ARN para que a regra corresponda somente à imagem que você deseja.
Para os eventos que você pode combinar e seus campos, consulteMensagens de eventos que o Image Builder envia.
Reaja aos eventos que o Image Builder envia
O Image Builder publica eventos no barramento de eventos padrão quando seus recursos atingem pontos significativos, por exemplo, quando uma imagem muda de estado, uma digitalização é concluída, uma etapa do fluxo de trabalho é interrompida para entrada ou um pipeline é automaticamente desativado. Você pode combinar esses eventos com uma regra e encaminhá-los para um alvo para iniciar sua própria automação. Os padrões comuns incluem:
-
Notifique uma equipe por meio de um tópico do Amazon SNS quando uma imagem se tornar
AVAILABLEouFAILED. -
Invoque uma função do Lambda para registrar uma nova AMI em um repositório de parâmetros, iniciar testes de conformidade externos ou atualizar um pipeline de implantação.
-
Alerta sobre descobertas de segurança quando um escaneamento relata CVEs críticos.
-
Promova um fluxo de trabalho de aprovação quando uma etapa do
WaitForActionfluxo de trabalho pausa uma compilação.
Para agir em um evento enviado pelo Image Builder, crie uma regra cujo padrão de evento corresponda ao evento source (aws.imagebuilder) edetail-type, opcionalmente, restrinja os campos internos. detail Em seguida, adicione o alvo que executa sua automação.
Exemplo: notificar sobre a conclusão da imagem (AVAILABLEouFAILED)
{ "source": ["aws.imagebuilder"], "detail-type": ["EC2 Image Builder Image State Change"], "detail": { "state": { "status": ["AVAILABLE", "FAILED"] } } }
Exemplo: Alerta somente quando um escaneamento encontra CVEs críticos
Use um combinador numérico para que escaneamentos limpos não acionem a regra:
{ "source": ["aws.imagebuilder"], "detail-type": ["EC2 Image Builder CVE Detected"], "detail": { "finding-severity-counts": { "critical": [{ "numeric": [">", 0] }] } } }
nota
Quando você combina o EC2 Image Builder Workflow Step Waiting evento, seu alvo pode ligar SendWorkflowStepAction com o workflow-step-execution-id do evento e um action de RESUME ouSTOP. Consulte WaitForAction.