Elastic Load Balancing (ELB)はAmazon EC2 Elastic IP アドレスでは機能しません。実際、この 2 つの概念はまったく一致しません。
Elastic Load Balancing による弾力性
むしろ、ELB は通常、CNAME レコードを介して使用されます(ただし、以下を参照)。これにより、必要に応じてエイリアス DNS アドレスが使用中の ELB の IP を変更できるようになるため、最初のレベルの弾力性/可用性が提供されます。2 番目のレベルの弾力性/可用性は、登録した EC2 インスタンス間でトラフィックを分散するときに、ロード バランサーによって実行されます。
このように考えてください: CNAME は ( Elastic IP アドレスのように) 変更されることはなく、EC2 インスタンスの置き換えは、ロード バランサー、Auto Scaling、またはユーザー自身によって (インスタンスの登録/登録解除によって) 処理されます。
これは、Shlomo Swidler の優れた分析The “Elastic” in “Elastic Load Balancing”: ELB Elasticity and How to Test itで詳しく説明されています。これは、最近提供された、AWS によるElastic Load Balancing の評価におけるベスト プラクティスを参照しています。彼の分析と、Elastic Load Balancing Service のアーキテクチャとそれ自体のしくみに関する全体的な読み物を提供します (ただし、Shlomo が提供する段階的なサンプルの説明はありません)。
ドメイン名
CNAME を必要とする以前の制限は、ルート ドメイン (またはZone Apex )も使用できるようにするために Amazon Route 53にそれぞれ追加することで対処されていることに注意してください。詳細については、簡単な概要とElastic Load Balancingでのドメイン名の使用を参照してください。
Elastic Beanstalk による弾力性
何よりもまず、AWS Elastic Beanstalkは前述のように Elastic Load Balancing を順番に使用します。さらに、アプリケーションのライフサイクル管理を追加します。
AWS Elastic Beanstalk は、AWS クラウドでアプリケーションを迅速にデプロイおよび管理するためのさらに簡単な方法です。アプリケーションをアップロードするだけで、Elastic Beanstalk がキャパシティ プロビジョニング、ロード バランシング、自動スケーリング、およびアプリケーション ヘルス モニタリングのデプロイの詳細を自動的に処理します。[...] [私の強調]
これは、アーキテクチャの概要で説明されている環境の概念をミックスに追加することによって実現されます。
環境はアプリケーションの心臓部です。[...] 環境を作成すると、AWS Elastic Beanstalk はアプリケーションの実行に必要なリソースをプロビジョニングします。環境用に作成された AWS リソースには、1 つのエラスティック ロード バランサー (図の ELB)、Auto Scaling グループ、および 1 つ以上の Amazon EC2 インスタンスが含まれます。
すべての環境には、ロード バランサーを指す CNAME (URL) があることに注意してください。つまり、ELB を単独で使用するのと同じです。
これらはすべて、アプリケーションと環境の管理と設定にまとめられています。この記事では、AWS マネジメント コンソール、CLI、API を使用した使用例など、AWS Elastic Beanstalk の最も重要な機能のいくつかについて詳しく説明しています。
ダウンタイムゼロ
説明のために最も関連性の高い部分を特定するのは困難ですが、ゼロ ダウンタイムでバージョンをデプロイすることは、ユース ケースに正確に対応し、必要なすべての先行ステップ (たとえば、新しいアプリケーション バージョンの作成および新しい環境の起動) を暗示しているため、 AWS マネジメント コンソールのセクションを読むと、このプラットフォームがどのように機能するかの最良の全体像。
幸運を!