Direkte Ereignisse von Cloud Storage erhalten (Console)

In dieser Kurzanleitung erfahren Sie, wie Sie direkte Ereignisse von Cloud Storage in einem nicht authentifizierten Cloud Run-Dienst empfangen.

Sie können diese Kurzanleitung mit der Console ausführen. Eine Anleitung zur Verwendung der Google Cloud CLI finden Sie unter Ereignisse mit Cloud-Audit-Logs empfangen (gcloud-CLI).

In dieser Kurzanleitung werden folgende Schritte erläutert:

  1. Cloud Storage-Bucket als Ereignisquelle erstellen

  2. einen Ereignisempfängerdienst für Cloud Run bereitstellen

  3. einen Eventarc-Trigger erstellen, um Ereignisse zu filtern und weiterzuleiten

  4. Laden Sie eine Datei in den Cloud Storage-Bucket hoch, um ein Ereignis zu erstellen und es in den Cloud Run-Logs aufzurufen.


Eine detaillierte Anleitung zu dieser Aufgabe finden Sie direkt in der Console. Klicken Sie dazu einfach auf Anleitung:

Anleitung


Die folgenden Abschnitte führen Sie durch dieselben Schritte wie das Klicken auf Anleitung.

Hinweis

Einige der Schritte in diesem Dokument funktionieren möglicherweise nicht richtig, wenn Ihre Organisation Einschränkungen auf Ihre Google Cloud-Umgebung anwendet. In diesem Fall können Sie möglicherweise keine Aufgaben wie das Erstellen öffentlicher IP-Adressen oder Dienstkontoschlüssel ausführen. Wenn Sie eine Anfrage stellen, die einen Fehler zu Einschränkungen zurückgibt, lesen Sie, wie Anwendungen in einer eingeschränkten Google Cloud-Umgebung entwickeln werden.

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Cloud Build and Eventarc APIs aktivieren.

    Aktivieren Sie die APIs

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Cloud Build and Eventarc APIs aktivieren.

    Aktivieren Sie die APIs

Cloud Storage-Bucket erstellen

In dieser Kurzanleitung wird Cloud Storage als Ereignisquelle verwendet.

  1. Rufen Sie in der Console Cloud Storage auf.

    Cloud Storage aufrufen

  2. Klicken Sie auf Bucket erstellen.

    Neuer Bucket

  3. Geben Sie einen eindeutigen Namen für den Bucket ein. Beispiel: helloworld-bucket.

  4. Klicken Sie auf Weiter.

  5. Wählen Sie als Standorttyp die Option Region und dann us-central1 (Iowa) aus.

  6. Übernehmen Sie die anderen Standardeinstellungen.

  7. Klicken Sie auf Erstellen.

Nachdem die Ereignisquelle erstellt wurde, können Sie den Ereignisempfängerdienst in Cloud Run bereitstellen.

Dienst zum Empfangen von Ereignissen in Cloud Run bereitstellen

Stellen Sie einen Cloud Run-Dienst bereit, der Ereignisse empfängt und loggt.

  1. Erstellen Sie eine Verzweigung des Beispiel-Repositorys zu Ihrem GitHub-Konto:

    Go

    1. Rufen Sie in GitHub GoogleCloudPlatform/golang-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Speicherort für das Repository aus.

    Java

    1. Rufen Sie in GitHub GoogleCloudPlatform/java-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Speicherort für das Repository aus.

    .NET

    1. Rufen Sie in GitHub GoogleCloudPlatform/dotnet-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Speicherort für das Repository aus.

    Node.js

    1. Rufen Sie in GitHub GoogleCloudPlatform/nodejs-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Speicherort für das Repository aus.

    Python

    1. Rufen Sie in GitHub GoogleCloudPlatform/python-docs-samples auf.

    2. Klicken Sie auf Fork.

      Screenshot der Schaltfläche "Fork"

    3. Wählen Sie bei entsprechender Aufforderung den Speicherort für das Repository aus.

  2. Rufen Sie in der Console Cloud Run auf.

    Öffnen Sie Cloud Run.

  3. Klicken Sie auf DIENST ERSTELLEN.

  4. Wählen Sie im Formular Dienst erstellen die Option Neue Überarbeitungen aus einem Quell-Repository kontinuierlich bereitstellen aus.

  5. Klicken Sie auf Mit Cloud Build einrichten.

  6. Führen Sie im Formular Mit Cloud Build einrichten die folgenden Schritte aus:

    Seite "Mit Cloud Build einrichten"

    1. Aktivieren Sie bei entsprechender Aufforderung die Cloud Build API.
    2. Wählen Sie in der Liste Repository-Anbieter die Option GitHub aus.

    3. Wählen Sie in der Liste Repository das GitHub-Repository aus, das Sie verzweigt haben.

    4. Klicken Sie nach der Auswahl des GitHub-Kontos und des Repositorys das Kästchen an, um die Bedingungen des Haftungsausschlusses zu akzeptieren, und klicken Sie dann auf Weiter.

    5. Behalten Sie für das Feld Zweig den Wert ^main$ bei.

    6. Wählen Sie für den Build-Typ die Option Dockerfile aus und geben Sie den Quellspeicherort des Dockerfile an:

      eventarc/audit-storage/Dockerfile
      

      Oder für das Go-Beispiel:

      eventarc/audit_storage/Dockerfile
      
    7. Klicken Sie auf Speichern.

  7. Geben Sie im Formular Dienst erstellen einen Dienstnamen ein. Beispiel: helloworld-events

  8. Akzeptieren Sie die Standardeinstellung Region als Dienstspeicherort. Beispiel: us-central1(Iowa).

  9. Übernehmen Sie die Standardwerte für CPU-Zuweisung und -Preise und Autoscaling.

  10. Wählen Sie im Bereich Eingehender Traffic die Option Gesamten Traffic zulassen aus.

  11. Wählen Sie im Bereich Authentifizierung die Option Nicht authentifizierte Aufrufe zulassen aus.

  12. Klicken Sie auf Erstellen.

Eventarc-Trigger erstellen

Der Eventarc-Trigger sendet Ereignisse aus dem Cloud Storage-Bucket an den Cloud Run-Dienst helloworld-events.

  1. Rufen Sie in der Console die Seite Eventarc auf.

    Zu Eventarc

  2. Klicken Sie auf Trigger erstellen.

  3. Geben Sie einen Triggernamen ein.

    z. B. helloworld-trigger.

  4. Wählen Sie in der Liste Ereignisanbieter die Option Google-Quellen > Cloud Storage aus.

  5. Wählen Sie in der Liste Ereignis die Option Direkt > google.cloud.storage.object.v1.finalized aus. finden Sie weitere Informationen.

  6. Geben Sie unter Bucket den zuvor erstellten Cloud Storage-Bucket helloworld-bucket an.

  7. Wenn Sie dazu aufgefordert werden, erteilen Sie Folgendes:

    • Rolle iam.serviceAccountTokenCreator dem Pub/Sub-Dienstkonto
    • Rolle pubsub.publisher dem Cloud Storage-Dienstkonto
  8. Verwenden Sie das Compute-Standarddienstkonto als Dienstkonto, das Ihren Dienst aufruft.

  9. Wählen Sie in der Liste Ereignisziel die Option Cloud Run aus.

  10. Wählen Sie für den Cloud Run-Dienst den zuvor erstellten Dienst helloworld-Events aus.

  11. Klicken Sie auf Erstellen.

Ereignis erstellen und abrufen

Generieren Sie ein Ereignis und prüfen Sie, ob der Eventarc-Trigger wie erwartet funktioniert.

  1. So erstellen Sie ein Ereignis:

    1. Erstellen Sie eine Textdatei mit dem Dateinamen random.txt und dem Text „Hello World“.

    2. Rufen Sie in der Console Cloud Storage auf.

      Cloud Storage aufrufen

    3. Klicken Sie auf den Namen des Storage-Buckets, den Sie erstellt haben.

    4. Klicken Sie auf dem Tab Objekte auf Dateien hochladen und laden Sie die Datei random.txt hoch.

    Beim Upload wird ein Ereignis erstellt und der Cloud Run-Dienst loggt die Nachricht des Ereignisses.

  2. So rufen Sie den Logeintrag auf:

    1. Rufen Sie in der Console Cloud Run auf.

      Öffnen Sie Cloud Run.

    2. Klicken Sie auf den Namen des Dienstes, den Sie erstellt haben.

    3. Klicken Sie auf der Seite Dienstdetails auf den Tab Logs, um die Logeinträge für alle Überarbeitungen dieses Dienstes abzurufen. Sie können nach Logschweregrad filtern.

    4. Suchen Sie nach einem Logeintrag wie dem folgenden:

      Received event of type google.cloud.storage.object.v1.finalized. Event data: [...]

Das war's auch schon! Sie haben einen Ereignisempfängerdienst in Cloud Run erfolgreich bereitgestellt, einen Eventarc-Trigger erstellt sowie ein Ereignis aus Cloud Storage generiert und in den Cloud Run-Logs angesehen.

Bereinigen

Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

Für Cloud Run fallen keine Kosten an, wenn der Dienst nicht verwendet wird. Allerdings können für das Speichern des Container-Images in Container Registry, die Cloud Run-Ressourcen und das Speichern von Dateien im Cloud Storage-Bucket Gebühren berechnet werden.

Sie können Ihr Image löschen, Ihren Storage-Bucket löschen und Ihren Dienst löschen.

So löschen Sie den Eventarc-Trigger:

  1. Rufen Sie in der Console die Seite Eventarc auf.

    Zu Eventarc

  2. Klicken Sie auf den Namen des Triggers, den Sie erstellt haben.

  3. Klicken Sie auf der Seite Triggerdetails auf Löschen.

Alternativ können Sie Ihr Google Cloud-Projekt löschen, um wiederkehrende Gebühren zu vermeiden. Durch das Löschen des Cloudprojekts wird die Abrechnung für alle in diesem Projekt verwendeten Ressourcen beendet.

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte