あなたのチームは Cloud Run にデプロイした API のバージョン管理を行いたいと考えています。新バージョンをデプロイしつつ、既存のトラフィックの 10% だけを新バージョンに向けてテストするためのコマンドはどれですか?
- A. gcloud run revisions update my-service --split-traffic=10
- B. gcloud run services set-iam-policy my-service --traffic-percent=10
- C. gcloud run services update-traffic my-service --to-revisions=NEW_REVISION=10
- D. gcloud run deploy my-service --traffic=10%
解答と解説を見る
正解: C
gcloud run services update-traffic <SERVICE> --to-revisions=<REVISION>=<PERCENT> コマンドで Cloud Run サービスのリビジョンごとのトラフィック分割を設定できます。例えば --to-revisions=my-service-v2=10,my-service-v1=90 とすると、新バージョンに 10%、旧バージョンに 90% のトラフィックを振り分けられます。これが Canary リリースの実装に使用します。選択肢D は gcloud run deploy にトラフィック比率を直接指定する構文で、デプロイとトラフィック割り当てを同時に行う場合の方法ですが、既存のリビジョンへの配分変更には update-traffic を使います。選択肢A の gcloud run revisions update、選択肢B の set-iam-policy はトラフィック制御には使いません。