Auf dieser Seite wird beschrieben, wie Sie Cloud Run-Jobs mit einem Cloud Scheduler nach einem Zeitplan ausführen.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihren Cloud Run-Job zuzuweisen, um die Berechtigungen zu erhalten, die Sie für die auf dieser Seite beschriebenen Vorgänge benötigen:
- Cloud Scheduler-Administrator (
roles/cloudscheduler.admin
) oder eine benutzerdefinierte Rolle mit der Berechtigungcloudscheduler.jobs.create
- Cloud Run-Invoker (
roles/run.invoker
), um Jobs mithilfe der Google Cloud CLI auszuführen, oder Cloud Run-Entwickler (roles/run.developer
), um Jobs mit der Google Cloud Console auszuführen.
Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run-Job mit Google Cloud APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.
Hinweise
Erstellen Sie einen Cloud Run-Job.
Cloud Run-Job für die zeitgesteuerte Ausführung konfigurieren
So führen Sie einen Cloud Run-Job nach Zeitplan aus:
Console
Klicken Sie auf den Job, den Sie nach einem Zeitplan ausführen möchten.
Klicken Sie auf den Tab Trigger.
Klicken Sie auf Scheduler-Trigger hinzufügen.
Wenn Sie die Cloud Scheduler API für Ihr Projekt noch nicht aktiviert haben, werden Sie im rechten Bereich dazu aufgefordert. Klicken Sie auf API aktivieren.
Formular für Cloud Scheduler-Jobs ausfüllen
Unter Zeitplan definieren gehen Sie so vor:
Geben Sie Ihrem Cloud Scheduler-Job einen Namen.
Wählen Sie eine Region für Ihre Scheduler-Jobs aus. Es muss nicht mit der Region übereinstimmen, die für den Cloud Run-Job verwendet wird.
Geben Sie die Häufigkeit der Ausführung des Jobs im Format unix-cron an, z. B.
0 12 * * *
.Wählen Sie Ihre Zeitzone unter "Timezone" aus.
Klicken Sie auf Weiter.
Wählen Sie im Drop-down-Menü Dienstkonto ein Dienstkonto aus, das die Berechtigung zum Aufrufen des aktuellen Cloud Run-Dienstes hat.
Klicken Sie auf Erstellen, um den Cloud Scheduler-Job zu erstellen, der den Cloud Run-Job dann mit der angegebenen Häufigkeit ausführt.
Befehlszeile
Führen Sie diesen Befehl aus:
gcloud scheduler jobs create http SCHEDULER_JOB_NAME \ --location SCHEDULER_REGION \ --schedule="SCHEDULE" \ --uri="https://CLOUD_RUN_REGION-run.googleapis.com/apis/run.googleapis.com/v1/namespaces/PROJECT-ID/jobs/JOB-NAME:run" \ --http-method POST \ --oauth-service-account-email PROJECT-NUMBER-compute@developer.gserviceaccount.com
Ersetzen
- SCHEDULER_JOB_NAME durch den Namen, den Sie dem Planerjob geben möchten.
- SCHEDULER_REGION durch eine von Cloud Scheduler unterstützte Region, z. B.
europe-west2
. - CLOUD_RUN_REGION durch die Region Ihres Cloud Run-Jobs. Verwenden Sie für eine Vorschau
europe-west9
. - SCHEDULE durch die gewünschte Häufigkeit, z. B.
0 12 * * *
- PROJECT-ID durch Ihre Projekt-ID,
- PROJECT-NUMBER durch Ihre Projektnummer,
- JOB-NAME durch Ihren Cloud Run-Job.
Terraform
So erstellen Sie einen Cloud Scheduler-Job, der einen Cloud Run-Job ausführt:
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Cloud Scheduler führt den Cloud Run-Job mit der angegebenen Häufigkeit aus.
Nächste Schritte
Nachdem Sie dieses Feature verwendet haben, können Sie Folgendes tun: