Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo EventBridge con le pipeline di Image Builder
AWS e i servizi partner trasmettono gli eventi agli EventBridge event bus di Amazon quasi in tempo reale. Puoi anche inviare i tuoi eventi personalizzati. I bus per eventi utilizzano regole per indirizzare ogni evento verso uno o più obiettivi.
Image Builder funziona EventBridge in due direzioni indipendenti:
-
Avvia la creazione di una pipeline a partire da una regola. È possibile impostare una pipeline di Image Builder come destinazione della regola, in modo EventBridge da eseguire la pipeline quando un evento corrisponde alla regola o quando viene attivato un programma. Consulta Attiva una pipeline costruita in base a una pianificazione e Attiva una pipeline creata a partire da un pattern di eventi.
-
Reagisci agli eventi inviati da Image Builder. Image Builder pubblica gli eventi sul bus degli eventi predefinito quando si verificano modifiche significative, ad esempio quando un'immagine diventa
AVAILABLEo una scansione rileva CVE. Puoi abbinare questi eventi a una regola e indirizzarli verso obiettivi come una funzione Lambda o un argomento di Amazon SNS per avviare le tue automazioni. Per informazioni, consulta Reagisci agli eventi inviati da Image Builder.
Per ulteriori informazioni sugli eventi inviati da Image Builder e sui campi di ciascun evento, consulta. Messaggi di evento inviati da Image Builder
Nota
I bus per eventi sono Region-specific. Una regola e le risorse richiamate si trovano in genere nella stessa regione; per passare da una regione all'altra, scegli come destinazione un bus di eventi nella regione di destinazione. Image Builder pubblica i suoi eventi sul bus di eventi predefinito nella regione in cui viene eseguita la compilazione.
Indice
EventBridge termini
I seguenti termini ti aiutano a capire come si EventBridge integra con le tue pipeline di Image Builder.
- Event
-
Descrive una modifica in un ambiente che potrebbe influire su una o più risorse dell'applicazione. L'ambiente può essere un AWS ambiente, un servizio o un'applicazione di un partner SaaS oppure una delle tue applicazioni o servizi. Puoi anche impostare eventi programmati su una sequenza temporale.
- Router di eventi
-
Una pipeline che riceve dati sugli eventi da applicazioni e servizi.
- Origine
-
Il servizio o l'applicazione che ha inviato l'evento al bus degli eventi.
- Target
-
Una risorsa o un endpoint che EventBridge richiama quando corrisponde a una regola, fornendo i dati dall'evento alla destinazione.
- Regola
-
Una regola trova gli eventi in entrata corrispondenti e li invia alle destinazioni per l'elaborazione. Una singola regola può inviare un evento a più destinazioni, che possono quindi essere eseguite in parallelo. Le regole si basano su un modello di eventi o su una pianificazione.
- Pattern
-
Un pattern di eventi definisce la struttura dell'evento e i campi a cui una regola corrisponde per avviare l'azione target.
- Schedule
-
Le regole di pianificazione eseguono un'azione in base a una pianificazione, ad esempio l'esecuzione di una pipeline di Image Builder per aggiornare un'immagine su base trimestrale. Esistono due tipi di espressioni di pianificazione:
-
Espressioni cron: corrispondono a criteri di pianificazione specifici utilizzando la sintassi cron che può delineare criteri semplici, ad esempio una esecuzione settimanale in un giorno specifico. È inoltre possibile stabilire criteri più complessi, ad esempio l'esecuzione trimestrale il quinto giorno del mese, tra le 2:00 e le 4:00.
-
Espressioni di frequenza: specificate un intervallo regolare quando viene richiamato l'obiettivo, ad esempio ogni 12 ore.
-
Visualizza EventBridge le regole per la tua pipeline di Image Builder
La scheda EventBridge delle regole nella pagina dei dettagli delle pipeline di immagini di Image Builder mostra i bus di EventBridge eventi a cui l'account ha accesso e le regole per il bus di eventi selezionato che si applicano alla pipeline corrente. Questa scheda si collega anche direttamente alla EventBridge console per la creazione di nuove risorse.
Azioni che si collegano alla EventBridge console
-
Crea un bus di eventi
-
Creare una regola
Per saperne di più EventBridge, consulta i seguenti argomenti nella Amazon EventBridge User Guide.
Attiva una pipeline costruita in base a una pianificazione
Imposta una pipeline di Image Builder come destinazione di una regola di EventBridge pianificazione per aggiornare un'immagine con una cadenza regolare. L'esempio seguente crea una regola che avvia la creazione di una pipeline ogni 90 giorni.
Nota
Una pipeline può anche avere una propria pianificazione integrata (un'espressione cron o rate memorizzata nella pipeline). Tale pianificazione è gestita da Image Builder ed è separata da qualsiasi regola: EventBridge
-
Usa la pianificazione della pipeline per una semplice ricostruzione ricorrente. Può anche effettuare il gate di build in base agli aggiornamenti delle dipendenze e disabilitare automaticamente una pipeline in errore. Vedi
Schedulenel riferimento alle API di EC2 Image Builder. -
Usa una EventBridge regola per avviare una build da un pattern di eventi o per estendere un trigger a più target.
Nota
Per ulteriori informazioni sulle impostazioni per le regole di espressione dei tassi che non sono trattate in questo esempio, consulta Rate expressions nella Amazon EventBridge User Guide.
Attiva una pipeline creata a partire da un pattern di eventi
Invece di una pianificazione, puoi avviare una creazione di pipeline quando un evento corrisponde a uno schema. Crea una regola con un pattern di eventi, quindi aggiungi la tua pipeline come destinazione (con lo stesso ruolo IAM descritto inAttiva una pipeline costruita in base a una pianificazione).
L'esempio seguente avvia una build ogni volta che diventa un'immagine di base specifica, ad esempio AVAILABLE per concatenare una build di immagine dipendente al termine dell'immagine di base. Il resources prefisso assegna la regola all'immagine di base in modo che corrisponda solo a quell'immagine e non all'output della pipeline dipendente:
{ "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
Ambita il pattern dell'evento all'immagine di base, come mostrato dal resources prefisso in questo esempio. Un pattern che corrisponde a tutte le immagini dell'account corrisponde anche all'AVAILABLEimmagine di output della pipeline dipendente, che riavvia la pipeline e può creare un ciclo di compilazione infinito. Filtra in base al nome specifico dell'immagine di base o al prefisso ARN in modo che la regola corrisponda solo all'immagine desiderata.
Per gli eventi che puoi abbinare e i relativi campi, vediMessaggi di evento inviati da Image Builder.
Reagisci agli eventi inviati da Image Builder
Image Builder pubblica gli eventi sul bus eventi predefinito quando le risorse raggiungono punti significativi, ad esempio quando un'immagine cambia stato, una scansione viene completata, una fase del flusso di lavoro si interrompe per l'input o una pipeline viene automaticamente disabilitata. Puoi abbinare questi eventi a una regola e indirizzarli a un obiettivo per avviare la tua automazione. I modelli più comuni includono:
-
Invia una notifica a un team tramite un argomento di Amazon SNS quando un'immagine diventa
AVAILABLEoFAILED. -
Richiama una funzione Lambda per registrare una nuova AMI in un archivio di parametri, avviare test di conformità esterni o aggiornare una pipeline di distribuzione.
-
Avvisa sui risultati di sicurezza quando una scansione riporta CVE critici.
-
Promuovi un flusso di lavoro di approvazione quando una fase
WaitForActiondel flusso di lavoro sospende una compilazione.
Per agire su un evento inviato da Image Builder, crea una regola il cui modello di evento corrisponda all'evento source (aws.imagebuilder) edetail-type, facoltativamente, restringa i campi all'interno. detail Quindi aggiungi il target che esegue l'automazione.
Esempio: notifica sul completamento dell'immagine (AVAILABLEoFAILED)
{ "source": ["aws.imagebuilder"], "detail-type": ["EC2 Image Builder Image State Change"], "detail": { "state": { "status": ["AVAILABLE", "FAILED"] } } }
Esempio: invia un avviso solo quando una scansione rileva CVE critici
Usa un matcher numerico in modo che le scansioni pulite non attivino la regola:
{ "source": ["aws.imagebuilder"], "detail-type": ["EC2 Image Builder CVE Detected"], "detail": { "finding-severity-counts": { "critical": [{ "numeric": [">", 0] }] } } }
Nota
Quando rispondi all'EC2 Image Builder Workflow Step Waitingevento, il tuo target può chiamare SendWorkflowStepAction con il mittente dell'evento e un numero workflow-step-execution-id di o. action RESUME STOP Per informazioni, consulta WaitForAction.