現在、小さな C# コンソール アプリケーションを 200 の Amazon EC2 インスタンスにデプロイしています。コードが更新されるたびに、すべてのインスタンスを終了し、コードをコンパイルして実行可能ファイルを以前の AMI イメージにコピーし、新しい AMI イメージから 200 個のインスタンスを再度作成しています。これは確かに非常に非効率的であり、より良い方法を見つけたいと考えています。これらの EC2 インスタンスにアプリケーションをすばやくデプロイするにはどうすればよいですか?
2 に答える
Platform-as-a-Service ソリューションの使用を検討することをお勧めします。PaaS を使用すると、コンパイル済みのアプリケーションを PaaS に送信し、マシンを起動してコードを設定することができます。PaaS は、監視、クロスクラウド サポート、アプリケーションのオンザフライ更新などの追加機能も提供します。
ここで言及されている PaaS ベンダーがいくつかあります。PaaS プロバイダーの推奨事項を探しています。
免責事項: 私はオープンソースの PaaS であるCloudifyで働いています。
新しいバージョンをリリースするときに、次のようにプロセスを最適化できます。アプリをコンパイルし、実行中のインスタンス (参照) のどこかにコピーします。その参照から、安価な内部帯域幅のみを使用して、実行中のすべてのインスタンスにアプリをデプロイします。参照インスタンスにインストールするデプロイ ツールを使用して、この手順を自動化できます。たとえば、 Kwatee (私は作成者です) は、軽量で、EC2 固有の機能を備えた Web インターフェイスで簡単に構成できる無料のツールです。Windows 環境で使用するには、AMI で一度設定するだけでよい sshd サーバーでターゲット インスタンスをセットアップする必要があります。