Question#21(Professional Cloud Developer)
あなたは Cloud Run で本番稼働中のアプリケーションを運用しています。チームは、アプリケーションのサービスの1つを変更して、新しいフィールドを返すようにする必要があります。最小限の手間で、クライアントの 10% を使用して新しいリビジョンをテストしたいと考えています。また、サービスのバックワード互換性(後方互換性)を維持する必要があります。
あなたは何をすべきですか?
正解:C
Cloud Run において、一部のユーザーだけに新しいバージョンを試す「カナリアデプロイ」を「最小限の手間」で実現する標準的なフローが問われています。
なぜ C が正解なのか?
最小限の手間(Least effort): Cloud Run の「トラフィック分割」機能を使用するのが最も効率的です。外部のロードバランサを別途構成する必要はありません。
安全なデプロイ: 新しいリビジョンをデプロイする際、いきなり 100% のトラフィックを流すのではなく、まず「0%(トラフィックを割り当てない)」の状態でデプロイします。これにより、デプロイ直後に予期せぬエラーが全ユーザーに波及するのを防げます。
トラフィック制御: 0% でデプロイした後に、既存リビジョンを 90%、新規リビジョンを 10% に手動で(またはコマンドで)調整します。これにより、要件である「10% のクライアントでテスト」が実現できます。

コメント