Tutorial: Protokollieren des Status einer Amazon-EC2-Instance mit EventBridge - Amazon EventBridge

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Tutorial: Protokollieren des Status einer Amazon-EC2-Instance mit EventBridge

Sie können eine AWS Lambda-Funktion erstellen, die eine Statusänderung einer Amazon-EC2-Instance protokolliert. Anschließend können Sie eine Regel erstellen, die Ihre Lambda-Funktion ausführt, sobald ein Statusübergang oder ein Übergang zu einem oder mehreren Status stattfindet, die für sie von Interesse sind. In diesem Tutorial protokollieren Sie den Start einer neuen Instance.

Schritt 1: Erstellen einer AWS Lambda-Funktion

Erstellen Sie eine Lambda-Funktion, um die Ereignisse bezüglich der Änderung des Status zu protokollieren. Wenn Sie die Regel in Schritt 2 erstellen, geben Sie diese Funktion an.

So erstellen Sie eine Lambda-Funktion:
  1. Öffnen Sie die AWS Lambda-Konsole unter https://console.aws.amazon.com/lambda/.

  2. Wählen Sie Create function (Funktion erstellen).

  3. Wählen Sie Author from scratch aus.

  4. Geben Sie einen Namen und eine Beschreibung für die Lambda-Funktion ein. Geben Sie der Funktion beispielsweise den Namen LogEC2InstanceStateChange.

  5. Behalten Sie die übrigen Optionen als Standardwerte bei und wählen Sie Funktion erstellen aus.

  6. Doppelklicken Sie auf der Registerkarte Code der Funktionsseite auf index.js.

  7. Ersetzen Sie den vorhandenen Code mit folgendem Code.

    'use strict'; exports.handler = (event, context, callback) => { console.log('LogEC2InstanceStateChange'); console.log('Received event:', JSON.stringify(event, null, 2)); callback(null, 'Finished'); };
  8. Wählen Sie Deploy (Bereitstellen) aus.

Schritt 2: Erstellen einer Regel

Erstellen Sie eine Regel, um die Lambda-Funktion auszuführen, die Sie in Schritt 1 erstellt haben. Die Regel wird ausgeführt, wenn Sie eine Amazon-EC2-Instance starten.

So erstellen Sie die EventBridge-Regel
  1. Öffnen Sie die Amazon EventBridge-Konsole unter https://console.aws.amazon.com/events/.

  2. Wählen Sie im Navigationsbereich Rules aus.

  3. Wählen Sie Regel erstellen.

  4. Geben Sie einen Namen und eine Beschreibung für die Regel ein. Nennen Sie die Regel beispielsweise TestRule.

  5. Wählen Sie für Event Bus den Event Bus aus, den Sie dieser Regel zuordnen möchten. Wenn Sie möchten, dass diese Regel mit Ereignissen aus Ihrem eigenen Konto übereinstimmt, wählen Sie Standard aus. Wenn ein AWS-Service in Ihrem Konto ein Ereignis ausgibt, wird es stets an den Standard-Event-Bus Ihres Kontos weitergeleitet.

  6. Bei Rule type (Regeltyp) wählen Sie Rule with an event pattern (Regel mit einem Ereignismuster) aus.

  7. Wählen Sie Next (Weiter).

  8. Als Event source (Ereignisquelle) wählen Sie AWS-Services aus.

  9. Gehen Sie bei Event pattern (Ereignismuster) wie folgt vor:

    1. Wählen Sie für Ereignisquelle die Option EC2 aus der Dropdown-Liste aus.

    2. Wählen Sie für Ereignistyp die Option Benachrichtigung über die Statusänderung der EC2-Instance aus der Dropdown-Liste aus

    3. Wählen Sie Spezifische Statusart(en) und anschließend Wird ausgeführt aus der Dropdown-Liste aus.

    4. Wählen Sie Beliebige Instance aus.

  10. Wählen Sie Next (Weiter).

  11. Bei Target types (Zieltypen) wählen Sie AWS-Service aus.

  12. Wählen Sie für Ziel auswählen die Option Lambda-Funktion aus der Dropdown-Liste aus.

  13. Wählen Sie für Funktion die Lambda-Funktion aus, die Sie im Abschnitt Schritt 1: Erstellen einer Lambda-Funktion erstellt haben. Wählen Sie in diesem Beispiel LogEC2InstanceStateChange aus.

  14. Wählen Sie Next (Weiter).

  15. Wählen Sie Next (Weiter).

  16. Überprüfen Sie die Details der Regel und wählen Sie dann Create rule (Regel erstellen) aus.

Schritt 3: Testen der Regel

Sie können Ihre Regeln testen, indem Sie eine Amazon EC2-Instance mithilfe der Amazon EC2-Konsole anhalten. Warten Sie ein paar Minuten, bis die Instance gestoppt ist. Überprüfen Sie dann Ihre AWS Lambda-Metriken in der CloudWatch-Konsole, um zu prüfen, ob die Funktion ausgeführt wurde.

Testen der Regel durch Anhalten einer Instance
  1. Öffnen Sie die Amazon EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Starten Sie eine Instance. Weitere Informationen finden Sie unter Ausführen von Befehlen auf Linux-Instances beim Start im Amazon EC2-Benutzerhandbuch für Linux Instances.

  3. Halten Sie die Instance an. Weitere Informationen finden Sie unter Grundlagen zur automatischen Platzierung und Affinität im Amazon EC2 Benutzerhandbuch für Linux-Instances.

  4. So zeigen Sie die Ausgabe aus der Lambda-Funktion an:

    1. Öffnen Sie die CloudWatch-Konsole unter https://console.aws.amazon.com/cloudwatch/.

    2. Wählen Sie im Navigationsbereich Logs (Logs) aus.

    3. Wählen Sie den Namen der Protokollgruppe für Ihre Lambda-Funktion aus (/aws/lambda/function-name).

    4. Wählen Sie den Namen des Protokoll-Streams aus, um die von der Funktion für die von Ihnen angehaltene Instance bereitgestellten Daten anzuzeigen.

  5. (Optional) Beenden Sie die angehaltene Instance, wenn Sie fertig sind. Weitere Informationen finden Sie unter Beenden Ihrer Instance im Amazon EC2-Benutzerhandbuch für Linux-Instances.

Schritt 4: Bestätigen des Erfolgs

Wenn Sie das Lambda-Ereignis in den CloudWatch-Protokollen sehen, haben Sie dieses Tutorial erfolgreich abgeschlossen. Wenn das Ereignis nicht in Ihren CloudWatch-Protokollen enthalten ist, beginnen Sie mit der Fehlerbehebung, indem Sie überprüfen, ob die Regel erfolgreich erstellt wurde. Wenn die Regel korrekt aussieht, überprüfen Sie, ob der Code Ihrer Lambda-Funktion korrekt ist.

Schritt 5: Bereinigen Ihrer Ressourcen

Sie können jetzt die Ressourcen, die Sie für dieses Tutorial erstellt haben, löschen, es sei denn, Sie möchten sie behalten. Durch das Löschen von AWS-Ressourcen, die Sie nicht mehr verwenden, können Sie verhindern, dass unnötige Gebühren in Ihrem AWS-Konto anfallen.

So löschen Sie die EventBridge-Regel(n)
  1. Öffnen Sie die Seite Regeln der EventBridge-Konsole.

  2. Wählen Sie die Regel(n) aus, die Sie erstellt haben.

  3. Wählen Sie Delete (Löschen).

  4. Wählen Sie Delete (Löschen).

So löschen Sie die Lambda-Funktion(en)
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie die Funktion(en) aus, die Sie erstellt haben.

  3. Wählen Sie Aktionen, Löschen aus.

  4. Wählen Sie Delete (Löschen).