GoogleはGoogle Cloud Platform (GCP) の新サービスとして、フルマネージドcronジョブサービスCloud Schedulerを発表した。これによりアプリケーションは、バッチ、ビッグデータ、クラウドインフラ操作を起動できるようになる。現在、このサービスはベータ版として利用可能だ。
Google Cloud Schedulerのカスタマーは、インフラ管理不要のcronサービスを利用できる。失敗したジョブはリトライされるため、一時的な障害時に手動で介在する必要もない。さらに、カスタマーは実行する操作に対して料金を支払い、Cloud Schedulerの操作に必要なリソースプロビジョニング、レプリケーション、スケーリングはすべてGCPが面倒をみてくれる。GoogleのプロダクトマネージャであるVinod Ramachandran氏によると、次のような利点があるという。
信頼性の高い配信: Cloud Schedulerは、ターゲットに対するジョブのat-least-once配信を提供し、ミッションクリティカルなジョブの実行呼び出しを保証します。
フォールトトレラントな実行: Cloud Schedulerを使うと、リトライは自動化され、異なるリージョンにデプロイすることでフォールトトレラントな方法でジョブを実行できるため、ホストされたcronの単一障害点リスクを排除できます。
統一した管理体験: Cloud Schedulerを使うと、UI、CLI、APIによるスケジュールを呼び出しを可能にしつつ、1つの画面での管理体験を提供します。また、ジョブスケジュールを定義するために、なじみのあるUnix cron形式もサポートしています。
Cloud Schedulerは、データベース更新のスケジューリング、CI/CDパイプラインのトリガー、Cloud Pub/Sub経由でのCloud Functions実行といった各種シナリオに適している。開発者はCloud SchedulerのUI、CLI、APIのいずれかを使って、HTTP/Sエンドポイント、Pub/Subトピック、App Engineアプリケーションを呼び出すためにジョブをスケジューリングすることができる。
例えば、定期スケジュールで指定のターゲットにHTTPリクエストを送信する場合、ターゲットハンドラはジョブを実行してレスポンスを返す。ジョブが成功すると、HTTP/AppEngineのコード2xxをCloud Schedulerサービスに返す。しかし、ジョブが失敗すると、Cloud Schedulerサービスにエラーを返し、そのあと最大試行回数に達するまでジョブをリトライする。また、ジョブがスケジュールされると、開発者はCloud Scheduler UI上でそれを監視し、ステータスをチェックすることができる。
ソース: https://cloud.google.com/scheduler/docs/scheduling-instances-with-cloud-scheduler
パブリッククラウドで利用できるマネージドcronサービスはGoogle Cloud Schedulerだけではない。競合であるMicrosoftとAmazonには、すでにスケジューラーサービスがある。Microsoftが提供しているAzure Schedulerは2015年後半に一般利用可能になっており、Azure Logic Appsに置き換えられる予定だ。そこでは、開発者はスケジューラーコネクタを使うことができる。またLogic Appsは、アプリケーションおよびプロセス統合、データ統合、B2Bコミュニケーションに追加機能を提供する。AWSも2016年後半、Schedulerに同様の機能を追加したAWS Batchをリリースした。そこでは、開発者はAWS Lambdaでcronを使った関数をスケジュールすることもできる。
詳しい料金とドキュメントはGoogle Schedulerのページにある。
Rate this Article
- Editor Review
- Chief Editor Action