デプロイ戦略を使用する

Cloud Deploy はデプロイ戦略をサポートしています。デプロイ戦略とは、ユーザーへの影響を最小限に抑えながら、アプリケーションに変更をデプロイするためのさまざまな手法のことです。

Cloud Deploy はどのようなデプロイ戦略をサポートしていますか?

Cloud Deploy は、次のデプロイ戦略をサポートしています。

  • 標準デプロイ

    標準のデプロイ戦略では、アプリケーションをターゲット ランタイムにデプロイするだけです。デプロイは段階的に行われず、アプリケーションの古いバージョンと新しいバージョンは分割されません。

    標準デプロイを使用すると、リリースを簡単にロールバックしたり、デプロイを検証したり、複数のターゲットに同時にデプロイしたりできます。

  • カナリア デプロイ

    カナリア デプロイはアプリケーションの段階的なデプロイです。まずアプリをインフラストラクチャの一部にデプロイし、テストを行ってから、さらにロールアウトできます。カナリア Deployment は、バグの影響を受ける可能性のあるユーザーの数を減らすことで、変更を導入するリスクを軽減します。

    たとえば、Cloud Run へのカナリアのデプロイが 50% の場合、トラフィックの半分が新しいリビジョンに転送され、残りの半分は古いリビジョンに転送されます。安定性を確認するためのテストが完了したら、ロールアウトを 100% に進めます。Cloud Deploy では、任意の割合の進行状況を指定できます(20.5% などの部分的な割合を除く)。

どちらのデプロイ戦略も、Cloud Deploy でサポートされているすべてのランタイム環境をサポートしています。また、すべてのデプロイ戦略では、ロールバックロールアウトのキャンセル、複数のターゲットへのデプロイがサポートされています(並行デプロイ)。

フェーズがスキップされることがある理由

カナリアは既存のバージョンのアプリケーションに対して実行され(そのバージョンを段階的に置き換えます)、Cloud Deploy が認識できるバージョンがまだデプロイされていない場合、カナリア戦略を実行できません。

つまり、特定のターゲットにアプリケーションを初めてデプロイし、カナリア デプロイ戦略を使用する場合、ロールアウトでカナリア フェーズがスキップされる可能性があります。この場合、Cloud Deploy が安定フェーズにスキップし、[Advance Rollout] をクリックして stable フェーズを開始すると、アプリケーションがそのターゲットに完全にデプロイされます。次に、変更セットを使用してそのターゲットに対してカナリアを実行できます。[ロールアウトを進め] をクリックすると、このデプロイに適用されないカナリア フェーズがスキップされたことを承認したことになります。

デプロイ戦略で並列デプロイを使用する

デプロイ戦略を使用しても、複数のターゲットに同時にデプロイできます。

カナリアでこれを行う方法については、カナリア デプロイ戦略で並列デプロイを使用するをご覧ください。

次のステップ