Auto Scaling グループに Load Balancer をアタッチする - Amazon EC2 Auto Scaling (日本語)

Auto Scaling グループに Load Balancer をアタッチする

このトピックでは、Elastic Load Balancing ロードバランサーを既存の Auto Scaling グループにアタッチする方法について説明します。Auto Scaling グループの作成時にロードバランサーをこのグループにアタッチするには、「チュートリアル: スケーリングとロードバランシングを使用するアプリケーションのセットアップ」を参照してください。

Amazon EC2 Auto Scaling は Elastic Load Balancing と統合されて、既存の Auto Scaling のグループに 1 つ以上のロードバランサーをアタッチできるようになります。ロードバランサーをアタッチした後、自動的にインスタンスがグループに登録され、受信トラフィックがインスタンス間で割り振られます。

ロードバランサーをアタッチすると、グループのインスタンスの登録中、Adding 状態になります。グループのすべてのインスタンスがロードバランサーに登録された後、Added 状態になります。最低 1 つの登録されたインスタンスがヘルスチェックを通過した後、InService 状態になります。ロードバランサーによって InService 状態が入力されると、異常と報告されたインスタンスは Amazon EC2 Auto Scaling によって終了し、置き換えられます。登録されたインスタンスからヘルスチェックが渡されない場合 (たとえば、誤って設定されたヘルスチェックが原因)、ロードバランサーは InService 状態になりません。Amazon EC2 Auto Scaling によるインスタンスの削除および置き換えは行われません。

ロードバランサーをデタッチすると、グループのインスタンスの登録解除中、Removing 状態になります。登録解除されてもインスタンスは引き続き実行されます。Connection Draining が有効になっている場合、Elastic Load Balancing はインスタンスの登録を解除する前に、処理中リクエストが完了するまでまたは最大タイムアウトが経過するまで (最初に達する方)、インスタンスの登録を待機します。Connection Draining は、Application Load Balancer に対してデフォルトで有効になりますが、クラシックロードバランサー に対しては手動で有効にする必要があります。詳細については、『クラシックロードバランサー 用ユーザーガイド』の「接続のストリーミング」を参照してください。

前提条件

始める前に、Auto Scaling グループと同じ AWS リージョンに Application Load Balancer または Network Load Balancer を作成します。新しいロードバランサーをお勧めしますが、求めている機能をサポートしていれば Classic Load Balancer を引き続き使用できます。さまざまなタイプのロードバランサーの詳細については、「 Elastic Load Balancing タイプ」を参照してください。

(オプション) Elastic Load Balancing ヘルスチェックを使用するように Auto Scaling グループを設定するには、「Auto Scaling グループへの Elastic Load Balancing ヘルスチェックの追加」を参照してください。

注記

Amazon EC2 Auto Scaling は Auto Scaling グループインターフェースを変更しました。デフォルトでは、古いユーザーインターフェイスが表示されますが、新しいインターフェイスに切り替えることもできます。このトピックでは、両方の手順について説明します。

ロードバランサーをアタッチする (コンソール)

次の手順に従って、ロードバランサーを既存の Auto Scaling グループにアタッチします。

ロードバランサーをグループにアタッチするには (新コンソール)

  1. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。

  3. デフォルトでは、元のコンソールが開きます。新しいコンソールにアクセスするには、ページ上部のバナーで、[新しいコンソールに移動する] を選択します。

  4. 既存のグループの横にあるチェックボックスをオンにします。

    [Auto Scaling グループ] ページの下部に分割ペインが開き、選択したグループに関する情報が表示されます。

  5. [詳細] タブで、[ロードバランシング]、[編集] の順に選択します。

  6. [負荷分散] で、次のいずれかの操作を行います。

    1. [アプリケーション/Network Load Balancer] [ロードバランサーのターゲットグループの選択] で、ターゲットグループを選択します。

    2. [クラシックロードバランサー] [ロードバランサーの選択] で、ロードバランサーを選択します。

  7. [Update (更新)] を選択します。

ロードバランサーをグループにアタッチするには (旧コンソール)

  1. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインの [AUTO SCALING] で、[Auto Scaling グループ] を選択します。

  3. リストから既存のグループを選択します。

  4. [Details (詳細)] タブで、[Edit (編集)] を選択します。

  5. 次のいずれかを行ってください。

    1. [クラシックロードバランサー] [Classic ロードバランサー] で、ロードバランサーを選択します。

    2. [アプリケーションロードバランサー] [Target Groups (ターゲットグループ)] で使用するターゲットグループを選択します。

  6. [Save] を選択します。

ロードバランサーが不要になったら、以下の手順に従って、Auto Scaling グループからデタッチします。

グループからロードバランサーをデタッチするには (新コンソール)

  1. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。

  3. デフォルトでは、元のコンソールが開きます。新しいコンソールにアクセスするには、ページ上部のバナーで、[新しいコンソールに移動する] を選択します。

  4. 既存のグループの横にあるチェックボックスをオンにします。

    [Auto Scaling グループ] ページの下部に分割ペインが開き、選択したグループに関する情報が表示されます。

  5. [詳細] タブで、[ロードバランシング]、[編集] の順に選択します。

  6. [負荷分散] で、次のいずれかの操作を行います。

    1. [アプリケーション/Network Load Balancer] [ロードバランサーのターゲットグループの選択] で、ターゲットグループの横にある削除アイコン (X) を選択します。

    2. [クラシックロードバランサー] [ロードバランサーの選択] で、ロードバランサーの横にある削除アイコン (X) を選択します。

  7. [Update (更新)] を選択します。

グループからロードバランサーをデタッチするには (旧コンソール)

  1. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインの [AUTO SCALING] で、[Auto Scaling グループ] を選択します。

  3. リストから既存のグループを選択します。

  4. [Details (詳細)] タブで、[Edit (編集)] を選択します。

  5. 次のいずれかを行ってください。

    1. [クラシックロードバランサー] [Classic ロードバランサー] で、ロードバランサーを削除します。

    2. [Application/Network Load Balancers] [Target Groups (ターゲットグループ)] でターゲットグループを削除します。

  6. [Save] を選択します。

ロードバランサーをアタッチする (AWS CLI)

ターゲットグループを Application Load Balancer あるいは Network Load Balancer にアタッチするには

以下の attach-load-balancer-target-groups コマンドを使用して、指定したターゲットグループを Auto Scaling グループにアタッチします。

aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-name my-asg \ --target-group-arns my-targetgroup-arn

ターゲットグループを Application Load Balancer または Network Load Balancerからデタッチするには

ロードバランサーが不要になったら、以下の detach-load-balancer-target-groups コマンドを使用して、Auto Scaling グループからターゲットグループをデタッチします。

aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-name my-asg \ --target-group-arns my-targetgroup-arn

Classic Load Balancer をアタッチするには

以下の attach-load-balancers コマンドを使用して、指定したロードバランサーを Auto Scaling グループにアタッチします。

aws autoscaling attach-load-balancers --auto-scaling-group-name my-asg \ --load-balancer-names my-lb

Classic Load Balancer をデタッチするには

ロードバランサーが不要になったら、以下の detach-load-balancers コマンドを使用して、Auto Scaling グループからロードバランサーをデタッチします。

aws autoscaling detach-load-balancers --auto-scaling-group-name my-asg \ --load-balancer-names my-lb