0

A、B、C の 3 つの ec2 インスタンスを持つ Amazon ロード バランサーを作成したとします。

asp.net アプリをインスタンス A にデプロイするたびに、ロード バランシングによって B、C インスタンスにデプロイ/更新されますか?

いいえの場合、どうすればそれを達成できますか?

4

1 に答える 1

0

ELB (ロード バランサー) はデプロイとは関係なく、少なくとも有用なものではありません。クライアントからの着信 (http) 要求に対してトラフィックを異なるインスタンスに分割するだけです。

AWS Elastic Beanstalk (簡単な方法)

Amazon Visual Studio Toolkit を介して asp.net アプリケーションをデプロイする Elastic Beanstalk アプリケーションを作成します。プロセスは非常に簡単で、すべてのインスタンスへの展開を行う必要はありません。プロジェクトをビルドして S3 にアップロードした後、Beanstalk はサイズに応じて 20 ~ 60 秒以内に新しいバージョンをすべてのインスタンスに配布します。

アドバンテージ:

  • 非常に簡単
  • 既存のツール
  • すべての AWS リソースを自分でセットアップする場合に適用されるのは、サービスとしてのインフラストラクチャ (IaaS) ではなく、サービスとしてのプラットフォーム (PaaS) です。

不利益:

  • Beanstalkアプリごとに 1 つの「プロジェクト」を展開するだけでよいため、異なる「仮想ディレクトリ アプリ」を展開することはできません。
  • 独自のカスタム Beanstalk AMI を構築する必要があるかもしれませんが、通常は AWS のデフォルト イメージを使用できます (Beanstalk ホスト マネージャーはインスタンスで実行する必要があります。そうしないと機能しません)。
  • 少しコントロールを失うかもしれませんが、それは問題ではありません

詳細情報:

難しい方法

3 つのインスタンスが背後にあるロード バランサーを既にセットアップしている場合は、コードをすべてのインスタンスにデプロイする必要があります。

たとえば、Visual Studio と Web Deploy を介して、3 つのインスタンスすべてに次々とデプロイすることもできます。ここでは、ロード バランサー/アプリの DNS 名ではなく、インスタンス自体のパブリック DNS 名を使用する必要があります。

アプリ ディレクトリに何らかの Web サーバー同期ソフトウェアを使用することもできます。たとえば、MS Web デプロイは機能するはずですが、セットアップは楽しいものではなく、Beanstalk よりも明らかに複雑です。

詳細情報:

于 2013-03-10T16:21:38.123 に答える