

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Elastic Load Balancing を使用して Auto Scaling グループ内で受信アプリケーショントラフィックを分散する
<a name="autoscaling-load-balancer"></a>

Elastic Load Balancing は、実行しているすべての EC2 インスタンス間で、受信したアプリケーションのトラフィックを自動的に分散させます。Elastic Load Balancing は、どのインスタンスにも負荷がかからないように、トラフィックを最適にルーティングすることで受信したリクエストを管理します。Auto Scaling グループで Elastic Load Balancing を使用するには、[Auto Scaling グループにロードバランサーをアタッチする](attach-load-balancer-asg.md)。これにより、グループがロードバランサーに登録され、ロードバランサーは、Auto Scaling グループへのすべての受信ウェブトラフィックの 1 つのお問合せポイントとして機能します。

Auto Scaling グループで Elastic Load Balancing を使用する場合、ロードバランサーまたはターゲットグループに個々の EC2 インスタンスをロードバランサーに登録する必要はありません。Auto Scaling グループによって起動されたインスタンスは、自動的にロードバランサーのメンバーとなります。同様に、Auto Scaling グループによって終了されたインスタンスは、ロードバランサーから自動的に登録解除されます。

ロードバランサーを Auto Scaling グループにアタッチした後、Elastic Load Balancing メトリクス (ターゲットあたりの Application Load Balancer のリクエスト数など)を使用して、需要の変化に応じてグループ内のインスタンス数をスケールするように Auto Scaling グループを設定できます。

必要に応じて、Auto Scaling グループに Elastic Load Balancing ヘルスチェックを追加できます。これにより、Amazon EC2 Auto Scaling はこれらの追加のヘルスチェックに基づいて異常なインスタンスを識別して置き換えることができます。それ以外の場合は、ターゲットグループの正常なホスト数が許可されているよりも少ない場合、通知する CloudWatch アラームを作成できます。

**Topics**
+ [Elastic Load Balancing のタイプ](#integrations-aws-elastic-load-balancing-types)
+ [ロードバランサーをアタッチする準備をする](getting-started-elastic-load-balancing.md)
+ [ロードバランサーをアタッチする](attach-load-balancer-asg.md)
+ [ロードバランサーを設定する](as-create-load-balancer-console.md)
+ [アタッチメントステータスを確認する](load-balancer-status.md)
+ [アベイラビリティーゾーンを追加する](as-add-az-console.md)
+ [アベイラビリティーゾーンの削除](as-remove-az-console.md)
+ [ロードバランサーをデタッチする](as-remove-load-balancer.md)
+ [AWS CLI Elastic Load Balancing の使用例](examples-elastic-load-balancing-aws-cli.md)

## Elastic Load Balancing のタイプ
<a name="integrations-aws-elastic-load-balancing-types"></a>

Elastic Load Balancing は、Auto Scaling グループで使用できる四つのタイプのロードバランサーを提供します:それらは、Application Load Balancer、Network Load Balancer、Gateway Load Balancer、Classic Load Balancer です。

ロードバランサーの設定方法は、種類によって大きく異なります。Application Load Balancer、Network Load Balancer、Gateway Load Balancer で、インスタンスはターゲットグループにターゲットとしてメンバーとされ、トラフィックをターゲットグループに送信します。Classic Load Balancer で、インスタンスはロードバランサーに直接メンバーとされます。

Application Load Balancer  
ルーティングと負荷分散をアプリケーションレイヤー (HTTP/HTTPS) で行い、パスベースのルーティングをサポートしています。Application Load Balancer は、仮想プライベートクラウド (VPC) の EC2 instancesのように、1 つまたは複数のメンバーとなったターゲット上のポート にリクエストを送信することができます。

Network Load Balancer  
レイヤー 4 ヘッダーから抽出されたアドレス情報に基づいて、トランスポートレイヤー (TCP/UDP レイヤー 4) でルーティングとロードバランシングを行います。Network Load Balancer は、ロードバランサーの有効期間中、トラフィックバーストを処理し、クライアントの出典 IP を保持して、固定 IP を使用します。

Gateway Load Balancer  
アプライアンス・インスタンスのフリートにトラフィックを分散します。ファイアウォール、侵入検知および防止システム、その他のアプライアンスなど、サードパーティー製の仮想アプライアンスのスケール、可用性、およびシンプルさを提供します。Gateway Load Balancer は、GENEVEプロトコルをサポートする仮想アプライアンスと連携します。追加の技術統合が必要なため、Gateway Load Balancer を選択する前に、必ずユーザーガイドを参照してください。

Classic Load Balancer  
トランスポートレイヤー (TCL/SSL) あるいはアプリケーションレイヤー (HTTP/HTTPS) のいずれかで行うルーティングあるいはロードバランサー。

利用可能なさまざまなタイプのロードバランサーの詳細については、次のリソースを参照してください。
+ [Elastic Load Balancing とは?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html)
+ [Application Load Balancer とは?](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html)
+ [Network Load Balancer とは?](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html)
+ [Gateway Load Balancer とは？](https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/introduction.html)
+ [Classic Load Balancer とは？](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/introduction.html)

# Elastic Load Balancing ロードバランサーをアタッチする準備をする
<a name="getting-started-elastic-load-balancing"></a>

Auto Scaling グループに Elastic Load Balancing ロードバランサーをアタッチするには、次の前提条件を満たす必要があります。
+ Auto Scaling グループにトラフィックをルーティングするために使用されるロードバランサーおよびターゲットグループをすでに作成している必要があります。

  ロードバランサーおよびターゲットグループを作成するには、次の 2 つの方法があります。
  + **Elastic Load Balancing の使用** — Elastic Load Balancing ドキュメントの手順に従い、Auto Scaling グループを作成する前にロードバランサーおよびターゲットグループを作成、設定します。Amazon EC2 インスタンスを登録するステップは省略します。ターゲットグループを Auto Scaling グループにアタッチすると、Amazon EC2 Auto Scaling では自動的にインスタンスの登録 (および登録解除) が処理されます。詳細については、Elastic Load Balancing ユーザーガイドの [Elastic Load Balancing で使用開始](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/load-balancer-getting-started.html) を参照してください。
  + **Amazon EC2 Auto Scaling の使用** — Amazon EC2 Auto Scaling コンソールの基本設定を使用して、ロードバランサーおよびターゲットグループを作成、設定、アタッチします。詳細については、「[コンソールから Application Load Balancer または Network Load Balancer を設定する](as-create-load-balancer-console.md)」を参照してください。
+ ロードバランサーを作成する前に、必要なロードバランサーのタイプを確認してください。詳細については、「[Elastic Load Balancing のタイプ](autoscaling-load-balancer.md#integrations-aws-elastic-load-balancing-types)」を参照してください。
+ ロードバランサーとそのターゲットグループは AWS アカウント、Auto Scaling グループと同じ、VPC、リージョンに存在する必要があります。
+ ターゲットグループは、`instance` のターゲットタイプを指定する必要があります。Auto Scaling グループを使用する場合、`ip` のターゲットタイプを指定することはできません。
+ Auto Scaling グループの起動テンプレートに、ロードバランサーからの必要なインバウンドトラフィックを許可する正しいセキュリティグループが含まれていない場合、起動テンプレートを更新する必要があります。推奨されるルールは、ロードバランサーのタイプと、ロードバランサーが使用するバックエンドのタイプによって異なります。例えば、トラフィックをウェブ サーバーに送信するには、ロードバランサーからポート 80 でインバウンド HTTP アクセスを許可します。起動テンプレートが変更されても、既存のインスタンスは新しい設定に更新されません。既存のインスタンスを更新するには、インスタンスの更新を開始してインスタンスを置き換えることができます。詳細については、「[インスタンスの更新を使用して Auto Scaling グループのインスタンスを更新する](asg-instance-refresh.md)」を参照してください。
+ 起動テンプレートのセキュリティグループでは、ヘルスチェックを実行するために Elastic Load Balancing の正しいポート上のロードバランサーからのアクセスも許可される必要があります。
+ Gateway Load Balancer の背後に仮想アプライアンスをデプロイする場合、起動テンプレートの Amazon マシンイメージ (AMI) で GENEVE プロトコルをサポートする AMI の ID を指定して、Auto Scaling グループが Gateway Load Balancer とトラフィックを交換できるようにする必要があります。また、起動テンプレートのセキュリティグループでは、ポート 6081 で UDP トラフィックが許可される必要があります。

**ヒント**  
完了に時間がかかるブートストラップスクリプトがある場合、必要に応じて起動ライフサイクルフックを Auto Scaling グループに追加して、ブートストラップスクリプトが正常に完了し、インスタンス上のアプリケーションでトラフィックを受け入れる準備ができるまで、ロードバランサーの背後でのインスタンス登録を遅延させることができます。Amazon EC2 Auto Scaling コンソールで Auto Scaling グループを初めて作成するときにライフサイクルフックを追加することはできません。ただし、ライフサイクルフックはグループを作成した後に追加できます。詳細については、「[Amazon EC2 Auto Scaling のライフサイクルフック](lifecycle-hooks.md)」を参照してください。

## ターゲットのヘルスチェックを設定する
<a name="elb-health-checks-for-targets"></a>

Elastic Load Balancing ロードバランサーで登録されたターゲットのヘルスチェックを設定して、トラフィックを適切に処理できるようにします。具体的な手順は、使用しているロードバランサーのタイプによって異なります。詳細については、以下のリソースを参照してください。
+ **Application Load Balancer** —「*Application Load Balancer のユーザーガイド*」の「[ターゲットグループのヘルスチェック](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html)」を参照してください。
+ **Network Load Balancer** —「*Network Load Balancer のユーザーガイド*」の「[ターゲットグループのヘルスチェック](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-health-checks.html)」を参照してください。
+ **Gateway Load Balancer** —「*Gateway Load Balancer のユーザーガイド*」の「[ターゲットグループのヘルスチェック](https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/health-checks.html)」を参照してください。
+ **Classic Load Balancer** —「*Classic Load Balancer のユーザーガイド*」の「[Configure health checks for your Classic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-healthchecks.html)」を参照してください。

デフォルトで、Elastic Load Balancing のヘルスチェックに失敗した場合、Amazon EC2 Auto Scaling ではインスタンスが異常であるとは見なさず、置き換えは行われません。Auto Scaling グループのデフォルトのヘルスチェックは EC2 ヘルスチェックのみです。詳細については、「[Auto Scaling グループでのインスタンスのヘルスチェック](ec2-auto-scaling-health-checks.md)」を参照してください。

Elastic Load Balancing によって異常と報告されたインスタンスを Amazon EC2 Auto Scaling で置き換えられるようにするには、Elastic Load Balancing のヘルスチェックを使用するように Auto Scaling グループを設定できます。これにより、Amazon EC2 Auto Scaling では、EC2 ヘルスチェックまたは Elastic Load Balancing のヘルスチェックのいずれかに失敗した場合、インスタンスが異常と見なされます。複数のロードバランサー ターゲットグループまたは Classic Load Balancer をグループにアタッチする場合、インスタンスが正常と見なされるためには、すべてのロードバランサーが、インスタンスは正常であるとして報告する必要があります。ロードバランサーの 1 つがインスタンスを異常として報告した場合は、他のロードバランサーがこれを正常として報告した場合でも、Auto Scaling グループ はそのインスタンスを置き換えます。

Auto Scaling グループに対してこれらのヘルスチェックを有効にする方法の詳細については、「[Auto Scaling グループに Elastic Load Balancing ロードバランサーをアタッチする](attach-load-balancer-asg.md)」を参照してください。

**注記**  
これらのヘルスチェックをできるだけ早く開始するには、設定されているグループのヘルスチェック猶予期間が長すぎず、Elastic Load Balancing のヘルスチェックによりターゲットがリクエストを処理できるかどうかを判断できるのに十分な長さに設定されていることを確認してください。詳細については、「[Auto Scaling グループにヘルスチェックの猶予期間を設定する](health-check-grace-period.md)」を参照してください。

# Auto Scaling グループに Elastic Load Balancing ロードバランサーをアタッチする
<a name="attach-load-balancer-asg"></a>

このトピックでは、Auto Scaling グループに Elastic Load Balancing ロードバランサーをアタッチする方法について説明します。また、Elastic Load Balancing のヘルスチェックを有効にして、Elastic Load Balancing から異常として報告されたインスタンスを Amazon EC2 Auto Scaling で置き換える方法についても説明します。

デフォルトでは、Amazon EC2 Auto Scaling は、Amazon EC2 ヘルスチェックに基づいて、異常なインスタンスまたはアクセスできないインスタンスのみを置き換えます。Elastic Load Balancing のヘルスチェックを有効にすると、Auto Scaling グループにアタッチした Elastic Load Balancing ロードバランサーのいずれかから実行中のインスタンスが異常として報告された場合、Amazon EC2 Auto Scaling でそのインスタンスを置き換えることができます。

Application Load Balancer を Auto Scaling グループにアタッチするチュートリアルについては、「[チュートリアル: スケーリングとロードバランシングを使用するアプリケーションのセットアップ](tutorial-ec2-auto-scaling-load-balancer.md)」を参照してください。

**重要**  
先に進む前に、前のセクションのすべての[前提条件](getting-started-elastic-load-balancing.md)を満たしてください。

**Contents**
+ [ターゲットグループまたは Classic Load Balancer をアタッチする](#as-add-load-balancer-console)
+ [ターゲットグループまたは Classic Load Balancer をデタッチする](#as-remove-load-balancer)

## ターゲットグループまたは Classic Load Balancer をアタッチする
<a name="as-add-load-balancer-console"></a>

Auto Scaling グループを作成または更新する際は、1 つ以上のターゲットグループまたは Classic Load Balancer をアタッチできます。Application Load Balancer、Network Load Balancer、または Gateway Load Balancer をアタッチする場合は、ロードバランサーではなくターゲットグループをアタッチします。

このセクションの手順に従い、コンソールを使用して次の操作を実行します。
+ Auto Scaling グループにターゲットグループまたは Classic Load Balancer をアタッチする
+ Elastic Load Balancing のヘルスチェックを有効にする

**新しい Auto Scaling グループを作成しているときに、既存のロードバランサーをアタッチするには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで **[Auto Scaling グループ]** を選択します。

1. 画面の上部のナビゲーションバーで、ロードバランサーを作成した AWS リージョン を選択します。

1. **[Auto Scaling グループの作成]** を選択します。

1.  ステップ 1 と 2 では、必要に応じてオプションを選択し、「**ステップ 3: アドバンストオプションを設定する**」へ進みます。

1. **[ロードバランシング]** では、**[既存のロードバランサーにアタッチ]** を選択します。

1. **[既存のロードバランサーにアタッチ]** で、次のいずれかの操作を行います。

   1. Application Load Balancerでは、Network Load Balancers、および Gateway Load Balancer:

      **[ロードバランサーのターゲットグループから選択]** を選択して、**[Existing load balancer target groups]** (既存のロードバランサーターゲットグループ) でターゲットグループを選択します。

   1. Classic Load Balancerでは:

      **[Classic Load Balancerから選択]** を選択して、**[Classic Load Balancer]** でロードバランサーを選択します。

1. (オプション) **[ヘルスチェック]** の **[追加のヘルスチェックタイプ]** で、**[Elastic Load Balancing のヘルスチェックをオンにする]** を選択します。

1. (オプション) **[ヘルスチェックの猶予期間]** に秒単位で時間を入力します。これは、インスタンスが `InService` 状態になった後で、Amazon EC2 Auto Scaling がインスタンスのヘルスステータスチェックの実行を待つ必要がある時間です。詳細については、「[Auto Scaling グループにヘルスチェックの猶予期間を設定する](health-check-grace-period.md)」を参照してください。

1. Auto Scaling グループの作成に進みます。Auto Scaling グループの作成後、インスタンスは自動的にロードバランサーにメンバーとされます。

**Auto Scaling グループの作成後に既存のロードバランサーをアタッチするには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで [**Auto Scaling グループ**] を選択します。

1. Auto Scaling グループの横にあるチェックボックスを選択します。

   **[Auto Scaling groups]** (Auto Scaling グループ) ページの下部にスプリットペインが開きます。

1. **[統合]** タブで、**[ロードバランシング]**、**[編集]** の順に選択します。

1. **[Load balancing]** (ロードバランシング) で、次のいずれかの操作を行います。

   1. **[Application, Network または Gateway Load Balancer のターゲットグループ]** で、そのチェックボックスを選択してターゲットグループを選択します。

   1. **[Classic Load Balancer]** で、そのチェックボックスを選択してロードバランサーを選択します。

1. **[更新]** を選択します。

ロードバランサーのアタッチが完了したら、必要に応じて、そのターゲットグループで使用するヘルスチェックを有効にできます。

**Elastic Load Balancing のヘルスチェックを有効にするには**

1. **[詳細]** タブで、**[ヘルスチェック]**、**[編集]** の順に選択します。

1. **[ヘルスチェック]** の **[追加のヘルスチェックタイプ]** で、**[Elastic Load Balancing のヘルスチェックをオンにする]** を選択します。

1. **[ヘルスチェックの猶予期間]** に、秒単位で時間を入力します。これは、インスタンスが `InService` 状態になった後で、Amazon EC2 Auto Scaling がインスタンスのヘルスステータスチェックの実行を待つ必要がある時間です。詳細については、「[Auto Scaling グループにヘルスチェックの猶予期間を設定する](health-check-grace-period.md)」を参照してください。

1. **[更新]** を選択します。

**注記**  
ロードバランサーがアタッチされている間、 AWS CLIを使用してロードバランサーのステータスを監視できます。Amazon EC2 Auto Scaling がインスタンスを正常に登録し、少なくとも 1 つの登録済みインスタンスがヘルスチェックに合格すると、`InService` のステータスが得られます。詳細については、「[ロードバランサーのアタッチメントステータスを確認する](load-balancer-status.md)」を参照してください。

## ターゲットグループまたは Classic Load Balancer をデタッチする
<a name="as-remove-load-balancer"></a>

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

**グループからロードバランサーをデタッチするには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで [**Auto Scaling グループ**] を選択します。

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

   **[Auto Scaling groups]** (Auto Scaling グループ) ページの下部にスプリットペインが開きます。

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

1. **[ロードバランシング]** で、次のいずれかの操作を行います。

   1. **[Application, Network または Gateway Load Balancer のターゲットグループ]** で、ターゲットグループの横にある削除 (X) アイコンを選択します。

   1. **[Classic Load Balancer]** で、ロードバランサーの横にある削除 (X) アイコンを選択します。

1. **[更新]** を選択します。

ターゲットグループのデタッチが完了したら、Elastic Load Balancing のヘルスチェックを無効にできます。

**Elastic Load Balancing のヘルスチェックを無効にするには**

1. **[詳細]** タブで、**[ヘルスチェック]**、**[編集]** の順に選択します。

1. **[ヘルスチェック]** の **[追加のヘルスチェックタイプ]** で、**[Elastic Load Balancing のヘルスチェックをオンにする]** の選択を解除します。

1. **[更新]** を選択します。

# コンソールから Application Load Balancer または Network Load Balancer を設定する
<a name="as-create-load-balancer-console"></a>

以下の手順に従い、Auto Scaling グループを作成するときに、Application Load Balancer または Network Load Balancer を作成してアタッチします。

**新しい Auto Scaling グループの作成時に、新しいロードバランサーを作成してアタッチするには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで **[Auto Scaling グループ]** を選択します。

1. **[Auto Scaling グループの作成]** を選択します。

1. ステップ 1 と 2 では、必要に応じてオプションを選択し、「**ステップ 3: アドバンストオプションを設定する**」へ進みます。

1. **[ロードバランシング]** で、**[新しいロードバランサーにアタッチ]** を選択します。

   1. **[新しいロードバランサーにアタッチ]** で、**[ロードバランサーのタイプ]** に、Application Load Balancer または Network Load Balancer のいずれを作成するかを選択します。

   1. **[ロードバランサーの名前]** は、ロードバランサーの名前を入力するか、デフォルトの名前のままにします。

   1. **[ロードバランサーのスキーム]** で、インターネット向け 公開ロードバランサーを作成するか、内部向けロードバランサーのデフォルトのままにするかを選択します。

   1. **[アベイラビリティーゾーンとサブネット]** で、EC2 インスタンスを起動するために選択した各アベイラビリティーゾーンに対して、パブリックサブネットを選択します。(これらは、ステップ 2 で事前設定されます)。

   1. **[リスナーとルーティング]** をクリックし、リスナーのポート番号を更新し (必要な場合)、**[デフォルトルーティング]** で、**[ターゲットグループの作成]** を選択します。または、ドロップダウンリストから既存のターゲットグループを選択することができます。

   1. 最後のステップで、**[ターゲットグループの作成]** を選択した場合、**[新しいターゲットグループ名]** にターゲットグループの名前を入力するか、デフォルトの名前のままにします。

   1. ロードバランサーにタグを追加するには、**[タグの追加]** を選択して、タグごとにタグのキーと値を指定します。

1. (オプション) **[ヘルスチェック]** の **[追加のヘルスチェックタイプ]** で、**[Elastic Load Balancing のヘルスチェックをオンにする]** を選択します。

1. (オプション) **[ヘルスチェックの猶予期間]** に秒単位で時間を入力します。これは、インスタンスが `InService` 状態になった後で、Amazon EC2 Auto Scaling がインスタンスのヘルスステータスチェックの実行を待つ必要がある時間です。詳細については、「[Auto Scaling グループにヘルスチェックの猶予期間を設定する](health-check-grace-period.md)」を参照してください。

1. Auto Scaling グループの作成に進みます。Auto Scaling グループの作成後、インスタンスは自動的にロードバランサーにメンバーとされます。
**注記**  
Auto Scaling グループを作成したら、Elastic Load Balancing コンソールを使用して追加のリスナーを作成できます。これは、HTTPS などの安全なプロトコルや UDP リスナーを使用してリスナーを作成する必要がある場合に便利です。異なるポートを使用していれば、既存のロードバランサーにもっとリスナーを追加できます。

# ロードバランサーのアタッチメントステータスを確認する
<a name="load-balancer-status"></a>

ロードバランサーは、アタッチされた後、グループのインスタンスを登録している間は、`Adding` 状態になります。グループのすべてのインスタンスが登録済みになると、`Added` 状態になります。最低 1 つの登録されたインスタンスがヘルスチェックを通過した後、`InService` 状態になります。ロードバランサーが `InService` 状態にある場合、Amazon EC2 Auto Scaling は異常と報告されたインスタンスを 終了し、置き換えることができます。メンバーとされたインスタンスがヘルスチェックに合格しない場合 (例えば、誤って設定されたヘルスチェックが原因)、ロードバランサーは `InService` 状態に入力しません。Amazon EC2 Auto Scaling はインスタンスを終了し置き換えをすることはありません。

ロードバランサーをデタッチすると、グループのインスタンスの登録解除中、`Removing` 状態になります。登録解除してもインスタンスは引き続き実行されます。Application Load Balancer、Network Load Balancer、および Gateway Load Balancer では、Connection Draining がデフォルトで有効になっています。Connection Draining が有効になっている場合、Elastic Load Balancing は、処理中のリクエストが完了するまで、または最大タイムアウトの期限が切れるまで (どちらか早い方) 待機してから、インスタンスの登録を解除します。

( AWS Command Line Interface AWS CLI) または AWS SDKs を使用して、アタッチメントのステータスを確認できます。アタッチメントステータスはコンソールから確認できません。

**を使用してアタッチメントのステータス AWS CLI を確認するには**  
次の [describe-traffic-sources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-traffic-sources.html) コマンドは、指定した Auto Scaling グループのすべてのトラフィックソースのアタッチメントステータスを返します。

```
aws autoscaling describe-traffic-sources --auto-scaling-group-name my-asg
```

この例では、Auto Scaling グループにアタッチされている Elastic Load Balancing ターゲットグループの ARN と、`State` エレメント内のターゲットグループのアタッチメントステータスを返します。

```
{
    "TrafficSources": [
        {
            "Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456",
            "State": "InService",
            "Type": "elbv2"
        }
    ]
}
```

# アベイラビリティーゾーンを追加する
<a name="as-add-az-console"></a>

理的な冗長性による安全性と信頼性を活用するには、作業しているリージョンの複数のアベイラビリティーゾーンにまたがって Auto Scaling グループを配置し、ロードバランサーをアタッチしてそれらのアベイラビリティーゾーンに受信トラフィックを分散させます。

1 つのアベイラビリティーゾーンが異常または使用不可になったとき、Amazon EC2 Auto Scaling は、影響を受けていないアベイラビリティーゾーンで新しいインスタンスを起動します。異常な状態のアベイラビリティーゾーンが正常な状態に戻ったら、Amazon EC2 Auto ScalingはAuto Scalingグループのすべてのアベイラビリティーゾーンにわたって均等にアプリケーションインスタンスを自動的に再分配します。Amazon EC2 Auto Scaling は、インスタンス数が最も少ないアベイラビリティーゾーンで新しいインスタンスの起動を試みることによって、これを実行します。この試みが失敗すると、Amazon EC2 Auto Scaling は成功するまで他のアベイラビリティーゾーンでの起動を試みます。

Elastic Load Balancing は、ロードバランサーに有効な各アベイラビリティーゾーンにロードバランサー ノードを作成します。ロードバランサーのクロスゾーン ロードバランシングを有効にすると、各ロードバランサー ノードは、有効化されたすべてのアベイラビリティーゾーンのメンバーとされたインスタンスに均等にトラフィックを分配します。クロスゾーン負荷分散が無効の場合は、各ロードバランサーノードは、そのアベイラビリティーゾーンの登録されたインスタンスにのみリクエストを均等に分散します。

Auto Scaling グループを作成しているときは、少なくとも 1 つのアベイラビリティーゾーンを指定する必要があります。その後、Auto Scaling グループにアベイラビリティーゾーンを追加し、そのアベイラビリティーゾーンをロードバランサーに対して有効にすることで (ロードバランサーがサポートしている場合)、アプリケーションの可用性を拡張できます。

**制限事項**  
ロードバランサーで有効になっているアベイラビリティーゾーンを更新するには、次の制限事項に注意する必要があります。
+ ロードバランサー用のアベイラビリティーゾーンを有効にすると、そのアベイラビリティーゾーンからサブネットを 1 つ指定します。ロードバランサーでは、アベイラビリティーゾーンごとに最大で 1 つのサブネットを有効にできることに注意してください。
+ インターネット向けロードバランサーの場合、ロードバランサーに指定するサブネットには最低 八個の利用可能な IP アドレスが必要です。
+ Application Load Balancer の場合、少なくても 二つのアベイラビリティーゾーンを有効にする必要があります。
+ Network Load Balancers の場合、有効になっているアベイラビリティーゾーンを無効にすることはできませんが、追加のアベイラビリティーゾーンを有効にすることはできます。
+ Gateway Load Balancers の場合、有効になっているアベイラビリティーゾーンを無効にすることはできませんが、追加のアベイラビリティーゾーンを有効にすることはできます。

次の手順に従い、追加のアベイラビリティーゾーンのサブネットに Auto Scaling グループとロードバランサーを拡張します。

**アベイラビリティーゾーンを追加するには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで **[Auto Scaling グループ]** を選択します。

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

   **[Auto Scaling グループ** ページの下部にスプリットペインが開きます。

1. **[詳細]** タブで、**[ネットワーク]**、**[編集]** の順に選択します。

1. **[サブネット]** で、Auto Scaling グループに追加したいアベイラビリティーゾーンに対応するサブネットの削除 (X) アイコンを選択します。

1. **[更新]** を選択します。

1. ロードバランサーのアベイラビリティーゾーンを更新して、Auto Scaling グループと同じゾーンを共有するには、以下のステップを完了します:

   1. ナビゲーションペインの **[ロードバランシング]** で **[ロードバランサー]** を選択します。

   1. ロードバランサーを選択します。

   1. 次のいずれかを行います。
      + Application Load Balancer および Network Load Balancer の場合:

        1. **[説明]** タブで、**[アベイラビリティーゾーン]** で、**[サブネットを編集する]** を選択します。

        1. **[サブネットを編集する]** ページの **[アベイラビリティーゾーン]** で、追加するアベイラビリティーゾーンのチェックボックスを選択します。そのゾーンにサブネットが 1 つしかない場合は、そのサブネットが選択されています。そのゾーンに複数のサブネットがある場合は、いずれかのサブネットを選択します。
      + VPC 内の Classic Load Balancer の場合:

        1. **[インスタンス]** タブで、**[アベイラビリティーゾーンの編集]** を選択します。

        1. **[サブネットを追加および削除する]** ページの **[使用可能なサブネット]** で、追加 (\$1) アイコンを使用してサブネットを選択します。サブネットが **[選択済みサブネット]** に移動します。

   1. **[保存]** を選択します。

## 関連リソース
<a name="availability-zone-related-resources"></a>

アベイラビリティーゾーンを変更すると、Amazon EC2 Auto Scaling によってグループが再調整されます。これは、一部のインスタンスを置き換えて再配布することを意味します。詳細については、「[例: 複数のアベイラビリティーゾーン全体にインスタンスを分散させる](auto-scaling-benefits.md#arch-AutoScalingMultiAZ)」を参照してください。

ロードバランサーのために有効になっていないアベイラビリティーゾーンにターゲットを登録している場合、そのロードバランサーはそれらのターゲットにトラフィックをルーティングしません。詳細については、*Elastic Load Balancing ユーザーガイド*の [How Elastic Load Balancing works](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html) を参照してください。

# アベイラビリティーゾーンの削除
<a name="as-remove-az-console"></a>

Auto Scaling グループおよびロードバランサーからアベイラビリティーゾーンを削除するには、以下の手順に従います。

**アベイラビリティーゾーンを削除するには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで **[Auto Scaling グループ]** を選択します。

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

   **[Auto Scaling グループ** ページの下部にスプリットペインが開きます。

1. **[詳細]** タブで、**[ネットワーク]**、**[編集]** の順に選択します。

1. **[サブネット]** で、Auto Scaling グループから削除したいアベイラビリティーゾーンに対応するサブネットの削除 (X) アイコンを選択します。そのゾーンに複数のサブネットがある場合は、それぞれの 削除 (X) アイコンを選択します。

1. **[更新]** を選択します。

1. ロードバランサーのアベイラビリティーゾーンを更新して、Auto Scaling グループと同じゾーンを共有するには、以下のステップを完了します:

   1. ナビゲーションペインの **[ロードバランシング]** で **[ロードバランサー]** を選択します。

   1. ロードバランサーを選択します。

   1. 次のいずれかを行います。
      + Application Load Balancer の場合:

        1. **[説明]** タブで、**[アベイラビリティーゾーン]** で、**[サブネットを編集する]** を選択します。

        1. **[サブネットの編集]** ページの **[アベイラビリティーゾーン]** で、チェックボックスをオフにするとアベイラビリティーゾーンのサブネットが削除されます。
      + VPC 内の Classic Load Balancer の場合:

        1. **[インスタンス]** タブで、**[アベイラビリティーゾーンの編集]** を選択します。

        1. **[サブネットをの追加と削除]** ページの**[利用可能なサブネット]** で、その削除 (-) アイコンを使用してサブネットを削除します。サブネットが **[利用可能なサブネット]** の下に移動します。

   1. **[保存]** を選択します。

# Auto Scaling グループからターゲットグループまたは Classic Load Balancer をデタッチする
<a name="as-remove-load-balancer"></a>

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

**グループからロードバランサーをデタッチするには**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) でAmazon EC2 コンソールを開き、ナビゲーションペインで [**Auto Scaling グループ**] を選択します。

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

   **[Auto Scaling groups]** (Auto Scaling グループ) ページの下部にスプリットペインが開きます。

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

1. **[ロードバランシング]** で、次のいずれかの操作を行います。

   1. **[Application, Network または Gateway Load Balancer のターゲットグループ]** で、ターゲットグループの横にある削除 (X) アイコンを選択します。

   1. **[Classic Load Balancer]** で、ロードバランサーの横にある削除 (X) アイコンを選択します。

1. **[更新]** を選択します。

ターゲットグループのデタッチが完了したら、Elastic Load Balancing のヘルスチェックを無効にできます。

**Elastic Load Balancing のヘルスチェックを無効にするには**

1. **[詳細]** タブで、**[ヘルスチェック]**、**[編集]** の順に選択します。

1. **[ヘルスチェック]** の **[追加のヘルスチェックタイプ]** で、**[Elastic Load Balancing のヘルスチェックをオンにする]** の選択を解除します。

1. **[更新]** を選択します。

# を使用した Elastic Load Balancing の使用例 AWS CLI
<a name="examples-elastic-load-balancing-aws-cli"></a>

 AWS Command Line Interface (AWS CLI) を使用して、ロードバランサーとターゲットグループをアタッチ、デタッチ、記述し、Elastic Load Balancing ヘルスチェックを追加および削除し、有効になっているアベイラビリティーゾーンを変更します。

このトピックでは、Amazon EC2 Auto Scaling の一般的なタスクを実行する AWS CLI コマンドの例を示します。

**重要**  
その他のコマンドの例については、「*AWS CLI コマンドリファレンス*」の「[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elbv2/index.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elbv2/index.html)」と「[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elb/index.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elb/index.html)」を参照してください。

**Topics**
+ [ターゲットグループまたは Classic Load Balancer をアタッチする](#example-attach-traffic-sources)
+ [ターゲットグループまたは Classic Load Balancer の説明を表示する](#example-describe-traffic-sources)
+ [Elastic Load Balancing のヘルスチェックを追加する](#example-add-elb-healthcheck)
+ [アベイラビリティーゾーンを変更する](#example-specify-availability-zones)
+ [ターゲットグループまたは Classic Load Balancer をデタッチする](#example-detach-traffic-sources)
+ [Elastic Load Balancing のヘルスチェックを削除する](#example-remove-elb-healthcheck)
+ [レガシーコマンド](#legacy-commands)

## ターゲットグループまたは Classic Load Balancer をアタッチする
<a name="example-attach-traffic-sources"></a>

次の [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) コマンドを使用して Auto Scaling グループを作成し、同時にその Amazon リソースネーム (ARN) を指定してターゲットグループをアタッチします。ターゲットグループは、Application Load Balancer、Network Load Balancer、または Gateway Load Balancer に関連付けることができます。

`--auto-scaling-group-name`、`--vpc-zone-identifier`、`--min-size`、および `--max-size` のサンプルの値を置き換えます。`--launch-template` オプションの場合、`my-launch-template` と `1` を Auto Scaling グループの起動テンプレートの名前とバージョンに置き換えます。`--traffic-sources` オプションの場合、サンプルの ARN を Application Load Balancer、Network Load Balancer、または Gateway Load Balancer のターゲットグループの ARN に置き換えます。

```
aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \
  --launch-template LaunchTemplateName=my-launch-template,Version='1' \
  --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
  --min-size 1 --max-size 5 \
  --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1"
```

Auto Scaling グループを作成したら、[attach-traffic-sources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/attach-traffic-sources.html) コマンドを使用して、追加のターゲットグループを Auto Scaling グループにアタッチします。

次のコマンドは、同じグループに別のターゲットグループを追加します。

```
aws autoscaling attach-traffic-sources --auto-scaling-group-name my-asg \
  --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2"
```

別の方法として、Classic Load Balancer をグループにアタッチするには、次の例のように、**create-auto-scaling-group** または **attach-traffic-sources** を使用するときに `--traffic-sources` オプションおよび `--type` オプションを指定します。`my-classic-load-balancer` を Classic Load Balancer の名前に置き換えます。`--type` オプションの場合、`elb` の値を指定します。

```
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
```

## ターゲットグループまたは Classic Load Balancer の説明を表示する
<a name="example-describe-traffic-sources"></a>

Auto Scaling グループにアタッチされているロードバランサーまたはターゲットグループの説明を表示するには、次の [describe-traffic-sources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-traffic-sources.html) コマンドを使用します。`my-asg` をグループの名前に置き換えます。

```
aws autoscaling describe-traffic-sources --auto-scaling-group-name my-asg
```

この例では、Auto Scaling グループにアタッチした Elastic Load Balancing ターゲットグループの ARN を返します。

```
{
    "TrafficSources": [
        {
            "Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1",
            "State": "InService",
            "Type": "elbv2"
        },
        {
            "Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2",
            "State": "InService",
            "Type": "elbv2"
        }
    ]
}
```

出力された `State` フィールドの説明については、「[ロードバランサーのアタッチメントステータスを確認する](load-balancer-status.md)」を参照してください。

## Elastic Load Balancing のヘルスチェックを追加する
<a name="example-add-elb-healthcheck"></a>

Auto Scaling グループがインスタンスに対して実行するヘルスチェックに Elastic Load Balancing のヘルスチェックを追加するには、次の [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) コマンドを実行し、`--health-check-type` オプションの値として `ELB` を指定します。`my-asg` をグループの名前に置き換えます。

```
aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
  --health-check-type "ELB"
```

新しいインスタンスは、多くの場合、ヘルスチェックに合格する前に簡単なウォームアップの時間が必要です。猶予期間で十分なウォームアップ時間が提供されない場合、インスタンスはトラフィックを処理する準備ができていないように見えることがあります。Amazon EC2 Auto Scaling は、これらのインスタンスを異常と見なして置き換えることがあります。

ヘルスチェックの猶予期間を更新するには、次の例のように、**update-auto-scaling-group** を使用するときに `--health-check-grace-period` オプションを使用します。*300* は、新しいインスタンスに異常が見つかった場合、終了させるまでに稼働させておく秒数に置き換えてください。

```
--health-check-grace-period 300
```

詳細については、「[Auto Scaling グループでのインスタンスのヘルスチェック](ec2-auto-scaling-health-checks.md)」を参照してください。

## アベイラビリティーゾーンを変更する
<a name="example-specify-availability-zones"></a>

アベイラビリティーゾーンの変更には、注意が必要な制限がいくつかあります。詳細については、「[アベイラビリティーゾーンを追加するアベイラビリティーゾーンの削除](as-add-az-console.md)」を参照してください。

**Application Load Balancer または Network Load Balancer のアベイラビリティーゾーンを変更するには**

1. ロードバランサーのアベイラビリティーゾーンを変更する前に、まず Auto Scaling グループのアベイラビリティーゾーンを更新して、使用しているインスタンスタイプが指定したゾーンで使用できることを確認することをお勧めします。

   Auto Scaling グループのアベイラビリティーゾーンを更新するには、次の [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) コマンドを使用します。サンプルのサブネット ID を、有効にするアベイラビリティーゾーンのサブネットの ID に置き換えます。指定したサブネットは、以前に有効であったサブネットに置き換わります。`my-asg` をグループの名前に置き換えます。

   ```
   aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
     --vpc-zone-identifier "subnet-41767929,subnet-cb663da2,subnet-8360a9e7"
   ```

1. 次の [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html) コマンドを使用して、新しいサブネットのインスタンスが起動されたことを確認します。インスタンスが起動した場合は、インスタンスとそのステータスのリストが表示されます。`my-asg` をグループの名前に置き換えます。

   ```
   aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
   ```

1. 次の [set-subnets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elbv2/set-subnets.html) コマンドを使用して、ロードバランサーのサブネットを指定します。サンプルのサブネット ID を、有効にするアベイラビリティーゾーンのサブネットの ID に置き換えます。アベイラビリティーゾーンごとに 1 つだけサブネットを指定できます。指定したサブネットは、以前に有効であったサブネットに置き換わります。`my-lb-arn` を、使用しているロードバランサーの ARN に置き換えます。

   ```
   aws elbv2 set-subnets --load-balancer-arn my-lb-arn \
     --subnets subnet-41767929 subnet-cb663da2 subnet-8360a9e7
   ```

**Classic Load Balancer のアベイラビリティーゾーンを変更するには**

1. ロードバランサーのアベイラビリティーゾーンを変更する前に、まず Auto Scaling グループのアベイラビリティーゾーンを更新して、使用しているインスタンスタイプが指定したゾーンで使用できることを確認することをお勧めします。

   Auto Scaling グループのアベイラビリティーゾーンを更新するには、次の [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) コマンドを使用します。サンプルのサブネット ID を、有効にするアベイラビリティーゾーンのサブネットの ID に置き換えます。指定したサブネットは、以前に有効であったサブネットに置き換わります。`my-asg` をグループの名前に置き換えます。

   ```
   aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
     --vpc-zone-identifier "subnet-41767929,subnet-cb663da2"
   ```

1. 次の [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html) コマンドを使用して、新しいサブネットのインスタンスが起動されたことを確認します。インスタンスが起動した場合は、インスタンスとそのステータスのリストが表示されます。`my-asg` をグループの名前に置き換えます。

   ```
   aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg
   ```

1. 次の [attach-load-balancer-to-subnets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elb/attach-load-balancer-to-subnets.html) コマンドを使用して Classic Load Balancer の新しいアベイラビリティーゾーンを有効にします。サンプルのサブネット ID を、有効にするアベイラビリティーゾーンのサブネットの ID に置き換えます。`my-lb` を、使用しているロードバランサーの名前に置き換えます。

   ```
   aws elb attach-load-balancer-to-subnets --load-balancer-name my-lb \
     --subnets subnet-cb663da2
   ```

   アベイラビリティーゾーンを無効にするには、次の [detach-load-balancer-from-subnets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elb/detach-load-balancer-from-subnets.html) コマンドを使用します。サンプルのサブネット ID を、無効にするアベイラビリティーゾーンのサブネットの ID に置き換えます。`my-lb` を、使用しているロードバランサーの名前に置き換えます。

   ```
   aws elb detach-load-balancer-from-subnets --load-balancer-name my-lb \
     --subnets subnet-8360a9e7
   ```

## ターゲットグループまたは Classic Load Balancer をデタッチする
<a name="example-detach-traffic-sources"></a>

ターゲットグループが不要になった場合、次の [detach-traffic-sources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/detach-traffic-sources.html) コマンドを使用して、Auto Scaling グループからターゲットグループをデタッチします。

`--auto-scaling-group-name` オプションの場合、`my-asg` を使用しているグループの名前に置き換えます。`--traffic-sources` オプションの場合、サンプルの ARN を Application Load Balancer、Network Load Balancer、または Gateway Load Balancer のターゲットグループの ARN に置き換えます。

```
aws autoscaling detach-traffic-sources --auto-scaling-group-name my-asg \
  --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
```

Classic Load Balancer をグループからデタッチするには、次の例のように `--traffic-sources` オプションと `--type` オプションを指定します。`my-classic-load-balancer` を Classic Load Balancer の名前に置き換えます。`--type` オプションの場合、`elb` の値を指定します。

```
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
```

## Elastic Load Balancing のヘルスチェックを削除する
<a name="example-remove-elb-healthcheck"></a>

Elastic Load Balancing のヘルスチェックを Auto Scaling グループから削除するには、次の [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) コマンドを使用し、`--health-check-type` オプションの値として `EC2` を指定します。`my-asg` をグループの名前に置き換えます。

```
aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
  --health-check-type "EC2"
```

詳細については、「[Auto Scaling グループでのインスタンスのヘルスチェック](ec2-auto-scaling-health-checks.md)」を参照してください。

## レガシーコマンド
<a name="legacy-commands"></a>

以下の例は、レガシー CLI コマンドを使用してロードバランサーとターゲットグループをアタッチおよびデタッチする方法と、それらの説明を表示する方法を示しています。これらは、お客様が使用する際の参照用として、このドキュメントに残してあります。レガシー CLI コマンドは引き続きサポートされますが、新しい「トラフィックソース」CLI コマンドは複数のトラフィックソースタイプをアタッチおよびデタッチできるので、こちらの使用をお勧めします。レガシー CLI コマンドと「トラフィックソース」CLI コマンドの両方を同じ Auto Scaling グループで使用できます。

### ターゲットグループまたは Classic Load Balancer (レガシー) をアタッチする
<a name="example-attach-load-balancer-target-group"></a>

**ターゲットグループをアタッチするには**  
次の [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) コマンドは、アタッチされたターゲットグループを使用して、Auto Scaling グループを作成します。Application Load Balancer、Network Load Balancer、または Gateway Load Balancer のターゲットグループの Amazon リソースネーム (ARN) を指定します。

```
aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \
  --launch-template LaunchTemplateName=my-launch-template,Version='1' \
  --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
  --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456" \
  --min-size 1 --max-size 5
```

以下の [attach-load-balancer-target-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/attach-load-balancer-target-groups.html) コマンドは、既存の Auto Scaling グループにターゲットグループをアタッチします。

```
aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-name my-asg \
  --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
```

**Classic Load Balancer をアタッチするには**  
以下の [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) コマンドは、Classic Load Balancer がアタッチされた Auto Scaling グループを作成します。

```
aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \
  --launch-configuration-name my-launch-config \
  --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \
  --load-balancer-names "my-load-balancer" \
  --min-size 1 --max-size 5
```

以下の [attach-load-balancers](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/attach-load-balancers.html) コマンドは、指定された Classic Load Balancer を既存の Auto Scaling グループにアタッチします。

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

### ターゲットグループまたは Classic Load Balancer (レガシー) の説明を表示する
<a name="example-describe-load-balancer-target-groups"></a>

**ターゲットグループの説明を表示するには**  
Auto Scaling グループに関連付けられているターゲットグループの説明を表示するには、[describe-load-balancer-target-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-load-balancer-target-groups.html) コマンドを使用します。次の例では、*my-asg*のターゲットグループの一覧を表示します。

```
aws autoscaling describe-load-balancer-target-groups --auto-scaling-group-name my-asg
```

**Classic Load Balancer の説明を表示するには**  
Auto Scaling グループに関連付けられている Classic Load Balancer の説明を表示するには、[describe-load-balancers](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-load-balancers.html) コマンドを使用します。次の例では、*my-asg* の Classic Load Balancer を一覧表にしています。

```
aws autoscaling describe-load-balancers --auto-scaling-group-name my-asg
```

### ターゲットグループまたは Classic Load Balancer (レガシー) をデタッチする
<a name="example-detach-load-balancer-target-group"></a>

**ターゲットグループをデタッチするには**  
ターゲットグループが不要になった場合、以下の [detach-load-balancer-target-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/detach-load-balancer-target-groups.html) コマンドを使用して、Auto Scaling グループからターゲットグループをデタッチします。

```
aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-name my-asg \
  --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
```

**Classic Load Balancer をデタッチするには**  
ロードバランサーが不要になったら、以下の [detach-load-balancers](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/detach-load-balancers.html) コマンドが、Auto Scaling グループから Classic Load Balancer をデタッチします。

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