Question#46(Professional Cloud Developer)
あなたは GKE 上で動作するアプリケーションの CI/CD パイプラインを管理しています。Cloud Build を使用してコンテナイメージを作成し、Artifact Registry にプッシュしています。イメージをビルドする際、パイプラインでは latest タグを使用しています。
最近、ロールアウトの 24 時間後にデプロイをロールバックする必要が生じましたが、latest タグが上書きされていたため、ロールバック作業が困難でした。将来この問題が発生するのを防ぐ必要があります。最も効率的なアプローチは何ですか?
正解:B
コンテナデプロイにおける「黄金律」は、**「不変(Immutable)なイメージ」**を使用することです。
なぜ B が正解なのか?
不変性(Immutability)の確保:
latestというタグは、新しいビルドが行われるたびに「最新のイメージ」を指し示す先が変わってしまいます(上書きされる)。一方、バージョン番号(例:v1.0.1,v1.0.2)や Git のコミット SHA をタグに使用すると、そのタグが指す内容は永遠に変わりません。確実なロールバック: 以前のバージョン(例:
v1.0.1)が Artifact Registry にそのまま残っているため、問題が発生した際に「一つ前のバージョン番号」を指定するだけで、即座に確実に以前の状態に戻せます。再現性: どの環境にどのバージョンのコードが動いているかが一目でわかり、トラブルシューティングが容易になります。

コメント