Classic Load Balancer における EC2 インスタンスの登録または登録解除
EC2 インスタンスを登録すると、ロードバランサーに追加されます。ロードバランサーは、登録済みインスタンスの状態を、有効になっているアベイラビリティーゾーンで常に監視し、正常なインスタンスにリクエストをルーティングします。インスタンスの需要が上昇した場合、需要に対応できるようにロードバランサーに追加インスタンスを登録できます。
EC2 インスタンスを登録解除すると、ロードバランサーから削除されます。登録解除するとすぐに、ロードバランサーはインスタンスへのリクエストのルーティングを停止します。需要が低下した場合や、インスタンスを保守する必要がある場合、ロードバランサーからインスタンスを登録解除することができます。登録解除されたインスタンスは実行され続けますが、ロードバランサーからトラフィックを受信しなくなります。準備ができたら、再度ロードバランサーに登録することができます。
インスタンスを登録解除すると、Connection Drainingが有効な場合、Elastic Load Balancing は実行中のリクエストが完了するまで待機します。詳細については、「Classic Load Balancer の Connection Draining の設定」を参照してください。
ロードバランサーが Auto Scaling グループにアタッチされている場合、グループ内のインスタンスはロードバランサーに自動的に登録されます。Auto Scaling グループからロードバランサーをデタッチした場合、グループ内のインスタンスが登録解除されます。
Elastic Load Balancing は、IP アドレスを使用して EC2 インスタンスをロードバランサーに登録します。
[EC2-VPC] アタッチされている Elastic Network Interface (ENI) にインスタンスを登録するとき、ロードバランサーは、インスタンスのプライマリインターフェイス (eth0) のプライマリ IP アドレスにリクエストをルーティングします。
前提条件
インスタンスは、ロードバランサーと同じネットワークで実行中のインスタンスである必要があります (EC2-Classic または同じ VPC)。EC2-Classic インスタンスと VPC 内のロードバランサーで ClassicLink が有効になっている場合、EC2-Classic インスタンスをその VPC にリンクし、VPC 内のロードバランサーに登録できます。
インスタンスの登録
準備が整ったら、ロードバランサーにインスタンスを登録します。インスタンスがロードバランサーで有効なアベイラビリティーゾーンにある場合、そのインスタンスは、必要な数のヘルスチェックに合格するとすぐに、ロードバランサーからトラフィックを受信する準備が整います。
コンソールを使用してインスタンスを登録するには
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインの [LOAD BALANCING] で [ロードバランサー] を選択します。
-
ロードバランサーを選択します。
-
下部のペインで、[Instances] タブを選択します。
-
[Edit Instances] を選択します。
-
ロードバランサーに登録するインスタンスを選択します。
-
[Save] を選択します。
AWS CLI を使用してインスタンスを登録するには
次の register-instances-with-load-balancer コマンドを使用します。
aws elb register-instances-with-load-balancer --load-balancer-name
my-loadbalancer
--instancesi-4e05f721
ロードバランサーに登録されているインスタンスを一覧表示する応答の例を次に示します。
{
"Instances": [
{
"InstanceId": "i-315b7e51"
},
{
"InstanceId": "i-4e05f721"
}
]
}
ロードバランサーに登録されているインスタンスの表示
指定したロードバランサーに登録されているインスタンスを一覧表示するには、次の describe-load-balancers コマンドを使用します。
aws elb describe-load-balancers --load-balancer-names
my-load-balancer
--output text --query "LoadBalancerDescriptions[*].Instances[*].InstanceId"
出力例を次に示します。
i-e905622e i-315b7e51 i-4e05f721
インスタンスが登録されているロードバランサーの確認
指定したインスタンスが登録されているロードバランサーの名前を取得するには、次の describe-load-balancers コマンドを使用します。
aws elb describe-load-balancers --output text --query "LoadBalancerDescriptions[?Instances[?InstanceId==`
i-e905622e
`]].[LoadBalancerName]"
出力例を次に示します。
my-load-balancer
インスタンスの登録解除
容量が必要なくなった場合やインスタンスを保守する必要がある場合、ロードバランサーからインスタンスを登録解除することができます。
ロードバランサーが Auto Scaling グループにアタッチされている場合、グループからインスタンスをデタッチするとロードバランサーからも登録解除されます。詳細については、Amazon EC2 Auto Scaling ユーザーガイドの「Auto Scaling グループから EC2 インスタンスをデタッチする」を参照してください。
コンソールを使用してインスタンスを登録解除するには
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインの [LOAD BALANCING] で [ロードバランサー] を選択します。
-
ロードバランサーを選択します。
-
下部のペインで、[Instances] タブを選択します。
-
インスタンスの [Actions] 列で [Remove from Load Balancer] を選択します。
-
確認を求めるメッセージが表示されたら、[Yes, Remove] を選択します。
AWS CLI を使用してインスタンスを登録解除するには
次の deregister-instances-from-load-balancer コマンドを使用します。
aws elb deregister-instances-from-load-balancer --load-balancer-name
my-loadbalancer
--instancesi-4e05f721
ロードバランサーに登録されている残りのインスタンスをリスト表示する応答の例を次に示します。
{
"Instances": [
{
"InstanceId": "i-315b7e51"
}
]
}