Tutorial: registra lo stato di un'EC2istanza Amazon utilizzando EventBridge - Amazon EventBridge

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à.

Tutorial: registra lo stato di un'EC2istanza Amazon utilizzando EventBridge

Puoi creare una AWS Lambdafunzione che registra una modifica di stato per un'EC2istanza Amazon. Successivamente, puoi scegliere di creare una regola che esegua la funzione Lambda ogni volta che si verifica una transizione di stato o una transizione a uno o più stati di interesse. In questo tutorial, registrerai l'avvio di qualsiasi nuova istanza.

Passaggio 1: creare una funzione AWS Lambda

Crea una funzione Lambda per registrare gli eventi di modifica dello stato. Quando crei la regola nella sezione Passaggio 2, specifichi questa funzione.

Per creare una funzione Lambda
  1. Apri la AWS Lambda console all'indirizzo https://console.aws.amazon.com/lambda/.

  2. Selezionare Create function (Crea funzione).

  3. Scegli Author from scratch (Crea da zero).

  4. Digitare un nome e una descrizione per la funzione Lambda. Ad esempio, denomina la funzione LogEC2InstanceStateChange.

  5. Per le altre opzioni, mantieni il valore predefinito e scegli Crea funzione.

  6. Nella scheda Codice della pagina della funzione, fai doppio clic su index.js.

  7. Sostituisci il codice esistente con il seguente.

    'use strict'; exports.handler = (event, context, callback) => { console.log('LogEC2InstanceStateChange'); console.log('Received event:', JSON.stringify(event, null, 2)); callback(null, 'Finished'); };
  8. Selezionare Deploy (Distribuisci).

Fase 2: Creazione di una regola

Crea una regola per eseguire la funzione Lambda creata nella sezione Passaggio 1. La regola viene eseguita quando avvii un'EC2istanza Amazon.

Per creare la EventBridge regola
  1. Apri la EventBridge console Amazon all'indirizzo https://console.aws.amazon.com/events/.

  2. Nel pannello di navigazione, scegli Regole.

  3. Scegli Create rule (Crea regola).

  4. Immettere un nome e una descrizione per la regola. Ad esempio, assegnale il nome TestRule.

  5. Per Select event bus (Seleziona bus di eventi), scegli il bus di eventi che desideri associare a questa regola. Se vuoi che questa regola corrisponda agli eventi provenienti dal tuo account, seleziona Predefinito. Quando un servizio di AWS nell'account emette un evento, passa sempre al bus di eventi predefinito dell'account.

  6. Per Rule type (Tipo di regola), scegli Rule with an event pattern (Regola con un modello di eventi).

  7. Seleziona Successivo.

  8. Per Origine evento, scegli Servizi AWS .

  9. Per Event pattern (Modello di eventi), procedi come segue:

    1. Per Event source, seleziona EC2dall'elenco a discesa.

    2. Per Tipo di evento, scegli Notifica di modifica dello stato dell'EC2istanza dall'elenco a discesa.

    3. Scegli Stati specifici e scegli In esecuzione dall'elenco a discesa.

    4. Scegli Qualsiasi istanza.

  10. Seleziona Successivo.

  11. Per Target types (Tipi di destinazione), scegli AWS service (Servizio ).

  12. In Seleziona una destinazione, scegli la funzione Lambda dall'elenco a discesa.

  13. In Funzione, seleziona la funzione Lambda che hai creato nella sezione Passaggio 1: creare una funzione Lambda. In questo esempio, seleziona LogEC2InstanceStateChange.

  14. Seleziona Successivo.

  15. Seleziona Successivo.

  16. Rivedi i dettagli della regola e scegli Create rule (Crea regola).

Fase 3: Test della regola

Puoi testare la tua regola interrompendo un'EC2istanza Amazon utilizzando la EC2 console Amazon. Attendi qualche minuto che l'istanza si fermi, quindi controlla i AWS Lambda parametri sulla CloudWatch console per verificare che la funzione funzioni.

Test della regola arrestando un'istanza
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Avvia un'istanza. Per ulteriori informazioni, consulta Launch Your Instance nella Amazon EC2 User Guide.

  3. Arrestare l'istanza. Per ulteriori informazioni, consulta Stop and Start Your Instance nella Amazon EC2 User Guide.

  4. Per visualizzare l'output della funzione Lambda, procedi nel seguente modo:

    1. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

    2. Nel riquadro di navigazione scegli Logs (Log).

    3. Seleziona il nome del gruppo di log per la funzione Lambda (/aws/lambda/function-name).

    4. Selezionare il nome del flusso di log per visualizzare i dati forniti dalla funzione per l'istanza arrestata.

  5. (Facoltativo) Al termine, terminare l'istanza arrestata. Per ulteriori informazioni, consulta Terminate Your Instance nella Amazon EC2 User Guide.

Passaggio 4: verificare il corretto completamento del tutorial

Se vedi l'evento Lambda nei CloudWatch log, significa che hai completato con successo questo tutorial. Se l'evento non è presente nei CloudWatch registri, inizia la risoluzione dei problemi verificando che la regola sia stata creata correttamente e, se la regola sembra corretta, verifica che il codice della funzione Lambda sia corretto.

Passaggio 5: eliminare le risorse

Ora è possibile eliminare le risorse create per questo tutorial, a meno che non si voglia conservarle. Eliminando AWS le risorse che non utilizzi più, eviti addebiti inutili sul tuo account. AWS

Per eliminare le EventBridge regole
  1. Apri la pagina Regole della EventBridge console.

  2. Seleziona la regola che hai creato.

  3. Scegliere Delete (Elimina).

  4. Scegliere Delete (Elimina).

Per eliminare la funzione Lambda
  1. Aprire la pagina Funzioni della console Lambda.

  2. Seleziona la funzione creata.

  3. Scegliere Actions (Operazioni), Delete (Elimina).

  4. Scegli Delete (Elimina).