Trigger mit Ereignissen

Eventarc ist ein Google Cloud-Dienst, mit dem Sie ereignisgesteuerte Architekturen erstellen können, ohne die zugrunde liegende Infrastruktur implementieren, anpassen oder verwalten zu müssen.

Sie können einen Eventarc-Trigger erstellen, indem Sie Filter für den Trigger angeben und das Routing des Ereignisses konfigurieren, einschließlich der Ereignisquelle und des Cloud Run-Zieldienstes. Wenn das angegebene Ereignis oder die angegebene Gruppe von Ereignissen mit den Filtern übereinstimmt, wird Ihr Cloud Run-Dienst automatisch als Reaktion auf die Ereignisse aufgerufen.

Ereignisse, die an Ihren Cloud Run-Dienst gesendet werden, werden in Form von HTTP-Anfragen empfangen.

Die folgenden Ereignistypen lösen Anfragen an Ihren Dienst aus:

Auf dieser Seite wird gezeigt, wie Sie auf der Seite der Cloud Run-Konsole einen Trigger für einen Dienst erstellen. Eine ähnliche Anleitung zum Erstellen eines Triggers für eine Funktion finden Sie unter Funktionen in Cloud Run bereitstellen.

Sie können einen Eventarc-Trigger auch über die Google Cloud CLI oder über die Seite der Eventarc-Konsole erstellen. Für eine Anleitung zum Erstellen eines Triggers für einen bestimmten Anbieter, Ereignistyp und ein bestimmtes Ziel filtern Sie die Liste, um mehr über die Ereignisanbieter und ‑ziele von Eventarc zu erfahren.

Hinweise

Bevor Sie einen Trigger mit Eventarc erstellen, sollten Sie sich mit den erforderlichen Rollen für die Triggeridentität vertraut machen.

  1. Eventarc API aktivieren

    API aktivieren

  2. Jeder Eventarc-Trigger ist zum Zeitpunkt der Erstellung des Triggers mit einem IAM-Dienstkonto (Identity and Access Management) verknüpft. Dieses Dienstkonto wird als Trigger-Dienstkonto bezeichnet und wird zum Aufrufen der Eventarc API verwendet. Wenn Sie beispielsweise Ereignisse an einen Cloud Run-Dienst senden möchten, der eine Authentifizierung erfordert, muss der Triggeridentität die Rolle Cloud Run Invoker IAM (roles/run.invoker) zugewiesen sein.

  3. Wenn Sie einen Trigger für ein direktes Ereignis aus Cloud Storage erstellen, weisen Sie dem Cloud Storage-Dienstkonto die Rolle pubsub.publisher zu:

    SERVICE_ACCOUNT="$(gcloud storage service-agent --project=PROJECT_ID)"
    
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:${SERVICE_ACCOUNT}" \
        --role='roles/pubsub.publisher'
    

    Ersetzen Sie PROJECT_ID durch Ihre Google Cloud-Projekt-ID. Sie finden Ihre Projekt-ID auf der Willkommensseite der Google Cloud Console.

Trigger erstellen

Nachdem Sie Ihren Dienst bereitgestellt haben, können Sie auf der Cloud Run-Konsolenseite einen Eventarc-Trigger erstellen.

  1. Rufen Sie in der Google Cloud Console Cloud Run auf.

    Öffnen Sie Cloud Run.

  2. Klicken Sie in der Liste der Dienste auf einen vorhandenen Dienst oder erstellen Sie einen neuen Dienst.

  3. Klicken Sie auf der Seite „Dienstdetails“ auf den Tab Trigger.

  4. Klicken Sie auf Eventarc-Trigger hinzufügen.

    Der Bereich Eventarc-Trigger wird geöffnet. Informationen zum Routing von Ereignissen finden Sie unter Optionen für das Ereignisrouting.

  5. Folgen Sie der Anleitung zum Erstellen eines Triggers für bestimmte Anbieter, Ereignistypen und -Ziele und lesen Sie die Anleitung in der Konsole im Abschnitt „Trigger erstellen“.

  6. Wählen Sie das Dienstkonto aus, das Ihren Cloud Run-Dienst aufruft, oder erstellen Sie ein neues Dienstkonto.

    Dies gibt die E-Mail-Adresse des IAM-Dienstkontos an, die mit dem Trigger verknüpft ist. Bei Cloud Run-Zielen wird dieses Dienstkonto verwendet, um beim Aufrufen des Dienstes Identitätstokens zu generieren.

  7. Geben Sie optional den Dienst-URL-Pfad an, an den die eingehende Anfrage gesendet werden soll.

    Dies ist der relative Pfad im Zieldienst, an den die Ereignisse für den Trigger gesendet werden sollen. Beispiel: /, /route, route, route/subroute

  8. Nachdem Sie den Trigger erstellt haben, können Sie seinen Status prüfen. Dazu muss im Tab Trigger ein Häkchen angezeigt werden.

Nächste Schritte