2
0

More than 1 year has passed since last update.

AWSドキュメント CodeDeploy とElastic Load Balancing

Posted at

AWS CodeDeployのユーザーガイドのCodeDeploy とElastic Load Balancingに関して記載
https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/integrations-aws-elastic-load-balancing.html

Blue/Green デプロイ
→ 古い方(blue)のインスタンスへのトラフィックはブロックされ新しい方(green)の方は許可される
→ 切り替える際にロードバランサーが 新しい方(green)を登録して(先)、古い方(blue)のインスタンス登録解除する(後)
image.png

インプレースデプロイ
→ インスタンスを登録解除してデプロイが完了したらインスタンスを再登録する
image.png

Blue/Green デプロイ
Elastic Load Balancing ロードバランサーの背後でインスタンストラフィックを再ルーティングすることは CodeDeploy Blue/Green デプロイの基本です。

※以下、原文と参考
Blue/Green デプロイの場合、ロードバランサーは、最新のアプリケーションリビジョンのデプロイ先であるデプロイグループの新しいインスタンス (置き換え先環境) に対しては、指定したルールに基づくトラフィックのルーティングを許可し、前回のアプリケーションリビジョンの実行元である古いインスタンス (元の環境) からはトラフィックをブロックします。

置き換え先環境のインスタンスがロードバランサーに登録されると、置き換え元環境のインスタンスは登録解除され、終了可能になります。

青/緑のデプロイでは、デプロイグループでClassic Load Balancer、Application Load Balancer、またはNetwork Load Balancer を指定できます。CodeDeploy コンソールまたはAWS CLIをクリックして、ロードバランサーをデプロイグループに追加します。

インプレースデプロイ
インプレースデプロイ中は、ロードバランサーにより、デプロイ先のインスタンスに対するインターネットトラフィックのルーティングがブロックされ、そのインスタンスへのデプロイが完了した時点でインスタンスに対するトラフィックのルーティングが再開されます。

インプレースデプロイ中にロードバランサーが使用されないと、インターネットトラフィックはデプロイプロセス中に依然としてインスタンスにルーティングされる場合があります。その結果、お客様に表示されるウェブアプリケーションが破損していたり、不完全であったり、古いものであったりする可能性があります。インプレースデプロイで Elastic Load Balancing ロードバランサーを使用する場合、デプロイグループのインスタンスはロードバランサーから登録解除され、最新のアプリケーションリビジョンに更新されてから、デプロイ後に同じデプロイグループの一部としてロードバランサーに再登録されます。成功しました。CodeDeploy は、ロードバランサーの背後でインスタンスが正常になるまで最大 1 時間待機します。待機期間中にロードバランサーによってインスタンスが正常とマークされていない場合、CodeDeploy はデプロイ設定に基づいて、次のインスタンスに移動するか、デプロイに失敗します。

インプレースデプロイの場合、Classic Load Balancer、Application Load Balancer、または Network Load Balancer を指定できます。ロードバランサーをデプロイグループの設定の一部として指定できます。または CodeDeploy が提供するスクリプトを使用してロードバランサーを実装します。

参考

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0