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à.
Guida introduttiva: crea una EventBridge pipa Amazon
Per acquisire familiarità con le pipe e le loro funzionalità, utilizzeremo un AWS CloudFormation modello per configurare una EventBridge pipe e i componenti associati. Poi potremo esplorare varie caratteristiche delle tubazioni.
Il modello crea una EventBridge pipe che collega un flusso da una tabella DynamoDB a una coda Amazon SQS. Ogni volta che un record viene creato o modificato nella tabella del database, la pipe invia l'evento risultante alla coda.
La pipe distribuita è composta da:
Una tabella (e un flusso) DynamoDB che funge da sorgente pipe e una coda Amazon SQS come destinazione.
Un ruolo di esecuzione che concede EventBridge le autorizzazioni necessarie per accedere alla tabella DynamoDB e alla coda Amazon SQS.
La pipe stessa, che contiene un filtro eventi che seleziona solo gli eventi generati quando un elemento della tabella viene creato (inserito) o modificato.
Per dettagli tecnici specifici del modello, vederedettagli del modello.
Creazione della pipe usando AWS CloudFormation
Per creare la pipe e le risorse associate, creeremo un CloudFormation modello e lo useremo per creare uno stack contenente una pipe di esempio, completa di sorgente e destinazione.
Importante
Se crei uno stack da questo modello, ti verranno addebitate le risorse Amazon utilizzate.
Creazione del modello
Per prima cosa, crea il CloudFormation modello.
Nella Modello sezione, fai clic sull'icona di copia nella scheda JSON o YAML per copiare il contenuto del modello.
Incolla il contenuto del modello in un nuovo file.
Salva il file localmente.
Creazione dello stack
Quindi, usa il modello che hai salvato per effettuare il provisioning di uno CloudFormation stack.
Apri la AWS CloudFormation console.
Nella pagina Pile, dal menu Crea pila, scegli con nuove risorse (standard).
Specificate il modello:
In Prerequisito, scegli Scegli un modello esistente.
In Specificare modello, scegli Carica un file modello.
Scegli il file, vai al file modello e selezionalo.
Scegli Next (Successivo).
Specificate i dettagli dello stack:
Inserisci un nome per lo stack.
Per i parametri, accettate i valori predefiniti o inserite i vostri.
Scegli Next (Successivo).
Configura le opzioni dello stack:
In Opzioni di errore dello stack, scegli Elimina tutte le risorse appena create.
Nota
La scelta di questa opzione evita che ti vengano addebitate le risorse la cui politica di eliminazione specifica che tali risorse vengano mantenute anche se la creazione dello stack fallisce. Per ulteriori informazioni, consulta l'
DeletionPolicy
attributo nella Guida per l'utente.AWS CloudFormationAccetta tutti gli altri valori predefiniti.
In Capacità, seleziona la casella per confermare che CloudFormation potresti creare risorse IAM nel tuo account.
Scegli Next (Successivo).
Controlla i dettagli dello stack e scegli Invia.
AWS CloudFormation crea lo stack. Una volta completata la creazione dello stack, le risorse dello stack sono pronte per l'uso. Puoi utilizzare la scheda Risorse nella pagina dei dettagli dello stack per visualizzare le risorse disponibili nel tuo account.
Esplorazione delle funzionalità delle pipe
Una volta creata la pipe, puoi utilizzare la EventBridge console per osservare il funzionamento della pipe e testare la consegna degli eventi.
Aprire la EventBridge console a https://console.aws.amazon.com/events/casa? #/tubi
. -
Scegli la pipa che hai creato.
Nella pagina dei dettagli della tubazione, la sezione Componenti del tubo mostra le risorse che compongono la tubazione e contiene schede che forniscono maggiori dettagli su ciascun componente.
Puoi trovare il ruolo di esecuzione che abbiamo creato per la pipe nella scheda Impostazioni, nella sezione Autorizzazioni.
Esame del filtro del tubo
Prima di testare il funzionamento della pipe, esaminiamo il filtro che abbiamo specificato per controllare quali eventi vengono inviati alla destinazione. La pipe invierà alla destinazione solo gli eventi che corrispondono ai criteri di filtro; tutti gli altri verranno scartati. In questo caso, vogliamo che solo gli eventi generati quando le voci della tabella vengono create o modificate vengano inviati alla coda di Amazon SQS.
Nella pagina dei dettagli della tubazione, in Pipe Components, scegli la scheda Filtraggio.
Abbiamo incluso un filtro che seleziona solo gli eventi in cui
eventName
è impostato su o.INSERT
MODIFY
{ "eventName": ["INSERT", "MODIFY"] }
Invio di eventi tramite la pipe
Successivamente, genereremo eventi nella sorgente della pipe per verificare che il filtraggio e la consegna delle pipe funzionino correttamente. Per fare ciò, creeremo e modificheremo un elemento nella tabella DynamoDB che abbiamo specificato come sorgente pipe.
Nella pagina dei dettagli della tubazione, in Pipe Components, selezionate la scheda Source.
In Source, scegli il nome del flusso DynamoDB.
Questo apre la console DynamoDB in una finestra separata, con i dettagli della tabella di origine visualizzati.
Scegli Explore table items (Esplora elementi della tabella).
-
Genera un
INSERT
evento creando un elemento nella tabella:Scegli Crea elemento.
Aggiungi valori per gli attributi Album e Artista.
Scegli Crea elemento.
Genera un evento
DELETE
e unINSERT
evento modificando l'elemento:Scegli l'elemento dall'elenco e dal menu Azioni scegli Modifica elemento.
Inserisci un nuovo valore per l'attributo Album o Artista.
Seleziona la casella che conferma che stai modificando il valore delle chiavi dell'elemento, quindi scegli Ricrea elemento.
Ciò comporta l'eliminazione e la ricreazione dell'elemento, la generazione di un
DELETE
evento e quindi di un nuovo evento.INSERT
Genera un
MODIFY
evento aggiungendo un attributo all'elemento:Scegli l'elemento dall'elenco e dal menu Azioni scegli Modifica elemento.
Dal menu Aggiungi nuovo attributo, scegli Numero.
Per il nome dell'attributo, inserisci Anno, quindi inserisci un valore per l'attributo. Selezionare Save and close (Salva e chiudi).
Conferma della consegna dell'evento tramite pipe
Infine, confermeremo che la pipe ha filtrato e fornito correttamente gli eventi che abbiamo generato creando e modificando l'elemento della tabella in DynamoDB.
Nella pagina dei dettagli della tubazione, in Pipe Components, selezionate la scheda Target.
In Target, scegli il nome della coda Amazon SQS.
In questo modo si apre la console Amazon SQS in una finestra separata, con i dettagli della coda di destinazione visualizzati.
Scegli Invia e ricevi messaggi.
In Ricevi messaggi, scegli Sondaggio per i messaggi.
Amazon SQS carica i messaggi ricevuti nella coda. Fai clic su un singolo messaggio per visualizzarne i dettagli.
Dovrebbero esserci tre messaggi relativi agli eventi nella coda:
Due di tipo
INSERT
, uno generato quando hai creato per la prima volta l'elemento della tabella e l'altro generato quando hai ricreato l'elemento modificando un valore chiave.Uno di tipo
MODIFY
, generato quando hai aggiunto un attributo all'elemento della tabella.
Nota che non c'è un messaggio di evento di tipo
DELETE
nella coda, anche se ne è stato generato uno quando hai eliminato e ricreato l'elemento della tabella modificando un valore chiave. Il filtro pipe che abbiamo specificato si limita a selezionareINSERT
eMODIFY
, quindi, ha filtrato l'DELETE
evento anziché inviarlo alla coda.
Pulizia: eliminazione delle risorse
Come passaggio finale, elimineremo lo stack e le risorse in esso contenute.
Importante
Ti verranno addebitate le risorse Amazon contenute nello stack per tutto il tempo in cui esiste.
Apri la console. AWS CloudFormation
-
Nella pagina Pile, scegli lo stack creato dal modello, quindi scegli Elimina, quindi conferma Elimina.
CloudFormation avvia l'eliminazione dello stack e di tutte le risorse che include.
CloudFormation dettagli del modello
Questo modello crea risorse e concede autorizzazioni nel tuo account.
Risorse
Il AWS CloudFormation modello di questo tutorial creerà le seguenti risorse nel tuo account:
Importante
Se crei uno stack da questo modello, ti verranno addebitate le risorse Amazon utilizzate.
AWS::DynamoDB::Table
: una tabella DynamoDB che funge da origine degli eventi per la pipe.AWS::SQS::Queue
: una coda Amazon SQS che funge da destinazione per gli eventi che fluiscono attraverso la pipe.AWS::IAM::Role
: Un ruolo di esecuzione IAM che concede le autorizzazioni al servizio EventBridge Pipes del tuo account.AWS::Pipes::Pipe
: La pipe che collega la tabella DynamoDB alla coda Amazon SQS.
Autorizzazioni
Il modello include una AWS::IAM::Role
risorsa che rappresenta un ruolo di esecuzione. Questo ruolo concede al servizio EventBridge Pipes (pipes.amazonaws.com
) le seguenti autorizzazioni nell'account.
Le seguenti autorizzazioni sono limitate alla tabella DynamoDB e al flusso creato dal modello come origine dell'evento per la pipe:
dynamodb:DescribeStream
dynamodb:GetRecords
dynamodb:GetShardIterator
dynamodb:ListStreams
La seguente autorizzazione è limitata alla coda Amazon SQS creata dallo stack come destinazione della pipe:
sqs:SendMessage
CloudFormation modello
Salva il seguente codice JSON o YAML come file separato da utilizzare come CloudFormation modello per questo tutorial.