1

AWS で VPC を介した自動スケーリングを使用するサーバー環境を計画しています。

私のアプリケーションには、サーバー上でいくつかのステップで実行されるプロセスがあり、ユーザーは ELB のスティッキー セッションを使用して同じサーバーに固執する必要があります。

問題は、Auto Scaling グループがサーバーをシャットダウンすることを想定している場合、一部のユーザーがプロセスの途中にいる可能性があることです (プロセスには複数のリクエストが必要です。たとえば、1. アルバムを作成する 2. 写真をアルバムにそれぞれアップロードします)。 3.写真をムービーに変換して写真を削除する 4.ムービーを S3 に保存する)

ELB を構成して、シャットダウンしようとしているサーバーに新しいユーザーを渡すのを停止し、以前のユーザー (スティッキーセッションが設定されている) を引き続き渡すことは可能ですか? また、サーバーに待機するように指示することは可能ですか? 10分としましょう。実際にシャットダウンする前にシャットダウンルールが適用された後?

どうもありがとうございました

4

1 に答える 1

1

この機能は、質問の時点ではElastic Load Balancingでは利用できませんでしたが、その間、AWS はELB コネクション ドレインを追加して、インスタンスのサービスを停止している間に開いているネットワーク接続を切断しないようにすることで、質問の主要部分に対処しました。そのソフトウェア、または更新されたソフトウェアを含む新しいインスタンスに置き換えます

ユーザーがアクティビティを完了すると予想される最大時間に基づいて、十分に大きなタイムアウトを指定する必要があることに注意してください。接続ドレインを参照してください。

ロード バランサーのコネクション ドレインを有効にすると、ロード バランサーが接続を閉じる前に、ロード バランサーが登録解除中のインスタンスに処理中のリクエストを処理し続ける最大時間を設定できます。ロード バランサーは、最大時間制限に達すると、登録を解除するインスタンスへの接続を強制的に閉じます。

[...]

インスタンスが Auto Scaling グループの一部であり、ロード バランサーでコネクション ドレインが有効になっている場合、Auto Scaling は処理中のリクエストが完了するか、最大タイムアウトが期限切れになるまで待機します。スケーリング イベントまたはヘルス チェックの置き換え。[...] [私の強調]

強調された部分は、最後の接続が排出された後にのみ適用される追加のタイムアウトを指定できないことを確認しています。

于 2014-04-26T12:35:38.353 に答える