Wie verwende ich AWS Batch als Ziel für meine EventBridge-Regel?

Lesedauer: 4 Minute
0

Ich möchte AWS Batch als Ziel für meine Amazon EventBridge-Regel verwenden.

Auflösung

Das folgende Beispiel zeigt, wie Amazon EventBridge so konfiguriert wird, dass ein AWS Batch-Auftrag gesendet wird, wenn ein neuer Amazon-Simple-Storage-Service-Bucket (Amazon S3) erstellt wird.

Erstellen einer Aufgabendefinition

1.    Öffnen Sie die AWS-Batch-Konsole.

2.    Wählen Sie in der Navigationsleiste Ihre AWS-Region aus.

3.    Wählen Sie im Navigationsbereich Aufgabendefinitionen und dann Erstellen aus.

4.    Geben Sie für Aufgabendefinitionsname einen eindeutigen Namen für Ihre Aufgabendefinition ein.

Hinweis: Sie können bis zu 128 Buchstaben (Groß- und Kleinbuchstaben), Zahlen, Bindestriche und Unterstriche in Ihrem eindeutigen Namen verwenden.

5.    Geben Sie für Containerbild****amazonlinux ein.

6.    Geben Sie für Befehl Folgendes ein:

echo Ref::S3bucket

7.    Geben Sie für vCPUs****2 ein.

8.    Geben Sie für **Speicher (MiB)**500 ein.

9.    Wählen Sie die Option Weiter und dann Erstellen aus.

Holen Sie sich den ARN Ihrer Aufgabenwarteschlange und Aufgabendefinition

1.    Öffnen Sie die AWS-Batch-Konsole.

2.    Wählen Sie im Navigationsbereich Aufgabenwarteschlange aus.

3.    Wählen Sie Ihre Aufgabenwarteschlange aus.

4.    Kopieren Sie im Abschnitt Details zur Aufgabenwarteschlange den Warteschlangen-ARN, und speichern Sie ihn dann für später.

5.    Wählen Sie im Navigationsbereich Aufgabendefinitionen aus, und wählen Sie dann die Aufgabendefinition aus, die Sie zuvor erstellt haben.

6.    Kopieren Sie im Abschnitt Aufgabendefinitionsdetails den ARN der Aufgabendefinition, und speichern Sie ihn dann für später.

CloudTrail-Datenereignisprotokollierung für Objekte in einem S3-Bucket

Informationen zum Auslösen von AWS-Batch-Aufgaben bei Amazon-S3-Vorgängen auf Objektebene (z. B. wenn ein neues Objekt in einen vorhandenen Bucket hochgeladen wird), siehe CloudTrail-Ereignisprotokollierung für S3-Buckets und Objekte aktivieren.

Erstellen der EventBridge-Regel

1.    Öffnen Sie die EventBridge-Konsole.

2.    Wählen Sie Regel erstellen aus.

3.    Geben Sie einen Namen für Ihre Regel ein. Optional können Sie eine Beschreibung eingeben.

4.    Wählen Sie unter Muster definieren die Option Ereignismuster aus.

5.    Wählen Sie Vordefiniertes Muster nach Service aus.

6.    Wählen Sie als Dienstanbieter AWS aus.

7.    Wählen Sie für Dienstname Simple Storage Service (S3).

8.    Wählen Sie als Ereignistyp****API-Aufruf auf Bucket-Level via CloudTrail aus.

9.    Wählen Sie Beliebiger Vorgang.

10.    Wählen Sie im Abschnitt Ziele auswählen in der Dropdown-Liste Ziel die Option Batch-Aufgabenwarteschlange aus.

11.    Fügen Sie für die Aufgabenwarteschlange den ARN der Aufgabenwarteschlange ein, den Sie zuvor kopiert haben.

12.    Fügen Sie für die Aufgabendefinition den ARN der Aufgabendefinition ein, den Sie zuvor kopiert haben.

13.    Geben Sie als Aufgabenname einen Namen für Ihre AWS-Batch-Aufgabe ein.

14.    Wählen Sie im Abschnitt Eingabe konfigurieren die Option Eingangstransformator.

15.    Geben Sie im ersten Eingabefeld die S3-Bucket-Werte ein, die gesendet werden sollen, wenn das Ereignis ausgelöst wird:

{"S3BucketNameValue":"$.detail.requestParameters.bucketName"}

Hinweis: Ersetzen Sie S3BucketNameValue durch Ihren eigenen Wert.

16.    Geben Sie im zweiten Eingabefeld die Struktur Parameter ein, die an die Batch-Aufgabe übergeben werden soll:

{"Parameters" : {"S3bucket": S3BucketNameValue}}

Hinweis: Ersetzen Sie S3BucketNameValue durch Ihren eigenen Wert. Ersetzen Sie S3Bucket durch den Namen des Parameters, den Sie in Ihrer AWS-Batch-Aufgabe definieren möchten.

17.    Wählen Sie entweder Neue Rolle für diese bestimmte Ressource erstellen oder Vorhandene Rolle verwenden.

Hinweis: Wenn Sie eine vorhandene Rolle auswählen, sollte diese Rolle über eine AWS-Identity-and-Access-Management-Richtlinie (IAM) verfügen, die die Batch:SubmitJob-Aktion zulässt.

18.    Wählen Sie Erstellen aus.

Testen Sie die neue Regel, die Sie erstellt haben

1.    Öffnen Sie die Amazon-S3-Konsole.

2.    Klicken Sie auf Bucket erstellen.

3.    Geben Sie in das Feld Bucket-Name einen eindeutigen, DNS-konformen Namen für Ihren neuen Bucket ein.

4.    Wählen Sie für Region dieselbe Region aus, in der Sie die EventBridge-Regel erstellt haben.

5.    Wählen Sie Erstellen aus.

Überprüfen Sie Ihre Protokolle

1.    Öffnen Sie die AWS-Batch-Konsole.

2.    Wählen Sie im Navigationsbereich Aufgaben aus.

3.    Wählen Sie Ihre Aufgabe mit dem Status ERFOLG.

4.    Wählen Sie auf der Seite Aufgabendetails im Abschnitt Versuche die Option Protokolle anzeigen. Das Protokoll zeigt Ihren Bucket-Namen in der CloudWatch-Konsole an.


Relevante Informationen

Tutorial: Verwendung des Eingabetransformators zur Anpassung der Weitergabe an das Ereignisziel durch EventBridge

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren