Cloud Deploy にパイプライン自動化機能と Cloud Run ジョブのサポートを追加
Google Cloud Japan Team
※この投稿は米国時間 2023 年 11 月 16 日に、Google Cloud blog に投稿されたものの抄訳です。
このたび、Google Cloud の DevOps ツール ポートフォリオについて最新アップデートがリリースされることになりましたのでお知らせします。お客様にはすでに、アプリケーション デリバリー パイプラインの定義と手動による制御を可能とし、カナリアのデプロイと検証を容易にする継続的デリバリー用途に Cloud Deploy をご利用いただいています。デリバリー パイプラインの自動化機能のプレビュー版が導入されることで、Cloud Deploy は継続的デプロイ、すなわち、継続的デリバリーのエンドツーエンドの自動化もサポートするようになります。具体的にはどうなるのでしょうか。一つは、ターゲット間の昇格を自動化できるようになります。たとえば、開発環境でアプリケーションをリリースできた場合に、それをステージング環境に自動的に昇格させることができます。10% のカナリア ロールアウトが成功すると、自動的に 50% まで進むなど、カナリア アドバンスメントを自動化することもできます。パイプラインの自動化は Cloud Deploy のビジョンに基づいて構築されており、より迅速、確実かつ安全なデリバリーが実現します。
パイプラインの自動化のほかにも、Cloud Deploy は Cloud Run ジョブをサポートするようになります。Cloud Run ジョブは、実行から完了に至るまで、ワークロードの実行に適した手段で、管理および自動化スクリプト、バッチデータ処理ジョブの実行にも対応します。今回のアップデートにより、Cloud Deploy を使用すれば、サービスとジョブのすべての Cloud Run デプロイを一貫した方法で管理できるようになります。
パイプラインを自動化する
アプリケーションの継続的デリバリーを実現する手順の第一歩として挙げられるのが、デリバリー パイプラインの構成です。構成では、アプリケーションを開発環境からステージング環境、そして最終的に本番環境に段階的に昇格させるプロセスを指定します。この動きを手動でオーケストレートすることが、通常、継続的デリバリーと呼ばれます。このプロセスが自動で行われる場合、具体的には、開発からステージング、そして本番へと各環境のロールアウトが成功するたびにその昇格を自動で行う場合、それは継続的デプロイと呼ばれます。
パイプラインの自動化機能が導入されたことで、Cloud Deploy は継続的デプロイをサポートするようになります。今回のリリースで導入された 2 つの新しい自動化ルール、promote-release と advance-rollout の利便性について説明します。promote-release を使用すれば、ロールアウトが成功するたびに、リリースを次のターゲットに昇格させることができます。たとえば、開発環境のデプロイが成功すると、アプリケーションをステージング環境に自動的に昇格させることができます。同様に、advance-rollout ルールを使用すれば、カナリア ロールアウトが進行するにつれて、次のカナリア率にカナリア デプロイを自動的に進行させることができます。
デリバリー パイプラインの自動化リソース
自動化が実行されるたびに automationRun リソースが生成されるため、どの自動化がいつ実行されたかや、自動化の結果を把握できます。
自動化の詳細と自動化の実行のリスト
Cloud Run ジョブ
Cloud Deploy に Cloud Run ジョブのサポートが追加されたことで、あらゆる Cloud Run サービスおよびジョブに対するコードのデリバリーを一貫した方法で管理できるようになりました。ユーザーは、進行、承認、ロールバックなど、Cloud Deploy の継続的デリバリー機能の多くを利用できます。ご利用の開始にあたっては、クイックスタートの手順をご覧ください。
今後の計画
包括的で使いやすく、費用対効果に優れた DevOps ツールは、効率的なソフトウェア デリバリー機能を構築するうえで重要な存在です。Cloud Deploy が、完全な CI / CD パイプラインの実装を実現するうえで皆様のお役に立てば幸いです。今後数か月にわたって Cloud Deploy に魅力的な機能を導入してまいりますので、引き続きご注目ください。
こうした新機能を活用して現状のパイプラインを今すぐアップデートしてみませんか?プロダクト ページ、ドキュメント、クイックスタート、チュートリアルをご確認ください。最後に、Cloud Deploy に関するご意見やご感想については、ぜひこちらから会話にご参加ください。皆様からのフィードバックをお待ちしております。
-ソフトウェア エンジニア Chris Ge
-ソフトウェア エンジニア Angel Montero