gcp cloud schedulerの概要
概要
- gcpのサービス間で定期的に処理を実行するためのサービス
- /uxni cron/のような機能を提供する
- 以下のサービスと連携できる
- Pub/Sub
- App Engine
- HTTPエンドポイント
- Cloud Functions
- Cloud Run
コマンド例
Cloud Runを定期実行する
- 外部からのアクセスを禁止したCloud Runに対して、サービスアカウントを設定して、Cloud Schedulerから定期実行する
$ gcloud beta scheduler jobs create http \
[JOB_NAME] \
--schedule="0 9 * * *" \
--uri="https://cron-job-xxxxxx-uc.a.run.app" \
--http-method=GET \
--time-zone="Asia/Tokyo" \
--oidc-service-account-email=[YOUR_SERVICE_ACCOUNT_EMAIL]
設定の確認
$ gcloud beta scheduler jobs describe \
[JOB_NAME] \
--location="asia-northeast1"
スケジュールの変更
- 以下の例では、3日ごとに実行するように変更している
$ gcloud beta scheduler jobs update http \
[JOB_NAME] \
--schedule="0 9 */3 * *" \
--location="asia-northeast1"
参考
-
[cron ジョブのスケジュールを設定して実行する Google Cloud](https://cloud.google.com/scheduler/docs/schedule-run-cron-job?hl=ja)