Classic Load Balancer のサブネットの設定
サブネットをロードバランサーに追加すると、Elastic Load Balancing はアベイラビリティーゾーンにロードバランサーノードを作成します。ロードバランサーノードは、クライアントからのトラフィックを受け入れ、リクエストを 1 つ以上のアベイラビリティーゾーンにある正常な登録済みのインスタンスに送信します。少なくとも 2 つのアベイラビリティーゾーンに、それぞれ 1 つのサブネットに追加することをお勧めします。これにより、ロードバランサーの可用性が向上します。ロードバランサーのサブネットは、いつでも変更できます。
インスタンスと同じアベイラビリティーゾーンからサブネットを選択します。ロードバランサーがインターネット向けロードバランサーである場合は、バックエンドインスタンス (これがプライベートサブネット内にある場合でも) がロードバランサーからトラフィックを受信できるように、パブリックサブネットを選択する必要があります。ロードバランサーが内部向けロードバランサーである場合、プライベートサブネットを選択することをお勧めします。ロードバランサーのサブネットの詳細については、「VPC の推奨事項」を参照してください。
サブネットを追加するには、ロードバランサーでアベイラビリティゾーンにインスタンスを登録して、その後同じアベイラビリティーゾーンからロードバランサーにサブネットをアタッチします。詳細については、「Classic Load Balancer に EC2 インスタンスを登録するには」を参照してください。
サブネットを追加したら、ロードバランサーは対応するアベイラビリティーゾーン内の登録済みインスタンスにリクエストをルーティングするようになります。デフォルトでは、ロードバランサーはアベイラビリティーゾーン間でサブネットにリクエストを均等にルーティングします。アベイラビリティーゾーンのサブネットに登録済みのインスタンス間でリクエストを均等にルーティングするには、クロスゾーン負荷分散を有効にします。詳細については、「Classic Load Balancer のクロスゾーン負荷分散の設定」を参照してください。
アベイラビリティーゾーンに正常な登録済みインスタンスが存在しなくなった場合、または登録済みインスタンスのトラブルシューティングや更新を行う場合は、ロードバランサーからサブネットを一時的に削除することをお勧めします。サブネットを削除すると、ロードバランサーはこのアベイラビリティーゾーンの登録済みインスタンスにリクエストをルーティングしなくなります。アベイラビリティーゾーン内の残りのサブネットの登録済みインスタンスには、引き続きリクエストをルーティングします。サブネットを削除しても、そのサブネット内のインスタンスはロードバランサーに登録されたままであることに注意してください。ただし、登録を解除することも選択できます。詳細については、「Classic Load Balancer に EC2 インスタンスを登録するには」を参照してください。
要件
ロードバランサーのサブネットを更新する場合、以下の要件を満たす必要があります。
-
ロードバランサーには、サブネットが常に少なくとも 1 つ必要です。
-
アベイラビリティーゾーンにつき、多くとも 1 つのサブネットしか追加できません。
-
ローカルゾーンサブネットを追加することはできません。
ロードバランサーからサブネットを追加および削除するための別個の API が存在するため、これらの要件を満たすために新しいサブネットの現在のサブネットを入れ替えるときはオペレーションの順序を慎重に検討する必要があります。さらに、ロードバランサーのすべてのサブネットを入れ替える必要がある場合、別のアベイラビリティーゾーンから一時的にサブネットを追加する必要があります。たとえば、ロードバランサーに単一のアベイラビリティーゾーンがあり、サブネットを別のサブネットに入れかれる必要がある場合、まず 2 番目のアベイラビリティーゾーンからサブネットを追加する必要があります。その後、元のアベイラビリティーゾーンからサブネットを削除し (追加されたサブネットが 1 つ未満にならないようにします)、元のアベイラビリティーゾーンから新しいサブネットを追加した後 (アベイラビリティーゾーンあたりサブネットが 1 つを超えないようにします)、2 番目のアベイラビリティーゾーンからサブネットを削除します (入れ替えの実行に必要な場合のみ)。
コンソールを使用してサブネットを設定する
次の手順で、 コンソールを使用してサブネットを追加または削除します。
コンソールを使用してサブネットを設定するには
Amazon EC2 コンソールの https://console.aws.amazon.com/ec2/
を開いてください。 -
ナビゲーションペインの [ロードバランシング] で [ロードバランサー] を選択します。
-
ロードバランサーの名前を選択して、その詳細ページを開きます。
-
[Network mapping] (ネットワークマッピング) タブで、[Edit subnets] (サブネットの編集) を選択します。
-
[サブネットの編集] ページの [ネットワークマッピング] セクションで、必要に応じてサブネットを追加および削除します。
-
完了したら、[変更を保存] を選択します。
CLI を使用してサブネットを設定する
AWS CLI を使用してサブネットを追加または削除するには、次の例を使用します。
CLI を使用してサブネットをロードバランサーに追加するには
次の attach-load-balancer-to-subnets コマンドを使用して、2 つのサブネットをロードバランサーに追加します。
aws elb attach-load-balancer-to-subnets --load-balancer-namemy-load-balancer--subnetssubnet-dea770a9 subnet-fb14f6a2
応答には、ロードバランサーのすべてのサブネットが一覧表示されます。例:
{
"Subnets": [
"subnet-5c11033e",
"subnet-dea770a9",
"subnet-fb14f6a2"
]
}
AWS CLI を使用してサブネットを削除するには
次の detach-load-balancer-from-subnets コマンドを使用して、指定したサブネットを特定のロードバランサーから削除します。
aws elb detach-load-balancer-from-subnets --load-balancer-namemy-loadbalancer--subnetssubnet-450f5127
応答には、ロードバランサーの残りのサブネットが一覧表示されます。例:
{
"Subnets": [
"subnet-15aaab61"
]
}