知りたいこと
・ブルーグリーンデプロイメントでグリーン環境へルーティングを切り替える時に
一時的にブルー環境・グリーン環境両方にアクセスできてしまう。
・この事象はブルーグリーンデプロイメントをする上で一般的な問題なのでしょうか?
・この事象を防ぐことはできる方法はあるのでしょうか?
前提
AWSの
・EC2起動テンプレート
・アプリケーションロードバランサー ≒ (ALB)
・オートスケーリンググループ ≒ (ASG)
・CodeCommit
・CodeDeploy
・CodePipeline
を使用して
CodeCommitのmainブランチにコミットすると、CodePipelineによってCodeDeployが動作し
新しいASG(グリーン環境)が作成され、ASG内に
CodeDeploy AgentがインストールされたEC2インスタンスが作成・最新のソースコードがデプロイされるようなインフラを作成しました。
CodeDeployのデプロイ方法にはブルーグリーンデプロイメントを選択しており
グリーン環境は既存のASG(ブルー環境)のコピーにより作成され、ALBがグリーン環境側にルーティングすることでブルーグリーンデプロイメントを実現していると理解しています。
このようなデプロイ環境で
- グリーン環境が作成された
- グリーン環境のインスタンスにアプリケーション等がインストールされた
あと、ブルー環境からグリーン環境に再ルーティング中にALBのDNSにアクセスすると
index.htmlで
・Hello World Blue(ブルー環境)
・Hello World Green(グリーン環境)
が交互に表示されてしまう時間が数分発生してしまいます。
これはブルーグリーンデプロイメントを採用すると、一般的に起きてしまうことなのでしょうか?
私が設定を間違えているのか、一般的な問題なのかを知りたいです。
よろしくお願いします。
0 コメント