Application Load Balancer の作成 - エラスティックロードバランシング

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

Application Load Balancer の作成

Application Load Balancer はクライアントからリクエストを受け取り、EC2 インスタンスなどのターゲットグループのターゲットに分散します。詳細については、Elastic Load Balancing ユーザーガイド」の「Elastic Load Balancing の仕組み」を参照してください。 Elastic Load Balancing

前提条件

  • アプリケーションがサポートするアベイラビリティーゾーンと IP アドレスタイプを決定します。これらの各アベイラビリティーゾーンにサブネットを持つロードバランサー VPC を設定します。アプリケーションが IPv4 と IPv6 の両方のトラフィックをサポートする場合は、サブネットに IPv4 と IPv6 の両方CIDRs があることを確認します。各アベイラビリティーゾーンに少なくとも 1 つのターゲットをデプロイします。詳細については、「ロードバランサーのサブネット」を参照してください。

  • ターゲットインスタンスのセキュリティグループが、クライアント IP アドレス (ターゲットがインスタンス ID で指定されている場合) またはロードバランサーノード (ターゲットが IP アドレスで指定されている場合) からのリスナーポートでのトラフィックを許可していることを確認します。詳細については、「推奨ルール」を参照してください。

  • ターゲットインスタンスのセキュリティグループが、ヘルスチェックプロトコルを使用してヘルスチェックポートのロードバランサーからのトラフィックを許可していることを確認します。

ロードバランサーを作成する

Application Load Balancer の作成の一環として、ロードバランサー、少なくとも 1 つのリスナー、および少なくとも 1 つのターゲットグループを作成します。有効な各アベイラビリティーゾーンに少なくとも 1 つの正常な登録済みターゲットがある場合、ロードバランサーはクライアントリクエストを処理する準備ができています。

Console
Application Load Balancer を作成するには
  1. Amazon EC2 コンソールの https://console.aws.amazon.com/ec2/ を開いてください。

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

  3. [ロードバランサーを作成] を選択します。

  4. [Application Load Balancer] で [作成] を選択します。

  5. 基本的な設定

    1. [ロードバランサー名] に、ロードバランサーの名前を入力します。名前は、リージョンのロードバランサーのセット内で一意である必要があります。名前は最大 32 文字で、英数字とハイフンのみを使用できます。先頭および末尾にハイフンまたは internal- を使用することはできません。Application Load Balancer の作成後に名前を変更することはできません。

    2. [スキーム] で、[インターネット向け] または [内部] を選択します。インターネット向けロードバランサーは、クライアントからインターネット経由でリクエストをターゲットにルーティングします。内部ロードバランサーは、プライベート IP アドレスを使用してターゲットにリクエストをルーティングします。

    3. ロードバランサーの IP アドレスタイプで、クライアントが IPv4 IPv4 アドレスを使用してロードバランサーと通信する場合は IPv4、クライアントが IPv4 アドレスと IPv6 アドレスの両方を使用してロードバランサーと通信する場合はデュアルスタックを選択します。クライアントが IPv6 アドレスのみを使用してロードバランサーと通信する場合はパブリック IPv4 なしのデュアルスタックを選択します。

  6. ネットワークマッピング

    1. VPC の場合は、ロードバランサー用に準備した VPC を選択します。インターネット向けロードバランサーでは、インターネットゲートウェイを持つ VPCs のみが選択できます。

    2. (オプション) IP プールの場合は、パブリック IPv4 アドレスに IPAM プールを使用する を選択できます。詳細については、「IPAM IP アドレスプール」を参照してください。

    3. アベイラビリティーゾーンとサブネットの場合は、次のようにロードバランサーのゾーンを有効にします。

      • 少なくとも 2 つのアベイラビリティーゾーンからサブネットを選択する

      • 少なくとも 1 つのローカルゾーンからサブネットを選択する

      • Outpost サブネットを 1 つ選択する

      詳細については、「ロードバランサーのサブネット」を参照してください。

      Dualstack ロードバランサーでは、IPv4 と IPv6 の両方の CIDR ブロックを持つサブネットを選択する必要があります。

  7. セキュリティグループ

    ロードバランサー VPC のデフォルトのセキュリティグループを事前に選択します。必要に応じて、追加のセキュリティグループを選択できます。ニーズに合ったセキュリティグループがない場合は、新しいセキュリティグループを作成して今すぐ作成します。詳細については、「Amazon VPC ユーザーガイド」の「セキュリティグループの作成」を参照してください。

  8. リスナーとルーティング

    1. デフォルトは、ポート 80 で HTTP トラフィックを受け入れるリスナーです。必要に応じて、デフォルトのリスナー設定を保持する、または [プロトコル] または [ポート] を変更することができます。

    2. [デフォルトアクション] で、トラフィックを転送するターゲットグループを選択します。ニーズに合ったターゲットグループがない場合は、「ターゲットグループの作成」を選択して今すぐ作成します。詳細については、「ターゲットグループの作成」を参照してください。

    3. (オプション) リスナータグを追加を選択し、タグキーとタグ値を入力します。

    4. (オプション) リスナーの追加を選択して、別のリスナー (HTTPS リスナーなど) を追加します。

  9. セキュアリスナー設定

    このセクションは、HTTPS リスナーを追加する場合にのみ表示されます。

    1. [セキュリティポリシー] で、要件を満たすセキュリティポリシーを選択します。詳細については、「セキュリティポリシー」を参照してください。

    2. [デフォルトの SSL/TLS 証明書] では、次のオプションが利用可能です。

      • を使用して証明書を作成またはインポートした場合は AWS Certificate Manager、ACM から を選択し、証明書を選択します。

      • IAM を使用して証明書をインポートした場合は、IAM から を選択し、証明書を選択します。

      • ACM で使用可能な証明書がないが、ロードバランサーで使用する証明書がある場合は、証明書のインポートを選択し、必要な情報を入力します。それ以外の場合は、新しい ACM 証明書をリクエストを選択します。詳細については、 AWS Certificate Manager ユーザーガイドAWS Certificate Manager 証明書を参照してください。

    3. (オプション) 相互認証 (mTLS) を選択し、ALPN を有効にするポリシーを選択します。

      詳細については、「相互 TLS 認証」を参照してください。

  10. サービス統合で最適化する

    (オプション) 他の をロードバランサー AWS と統合できます。詳細については、「ロードバランサーの統合」を参照してください。

  11. ロードバランサータグ

    (オプション) Load Balancer タグを展開します。新しいタグを追加を選択し、タグキーとタグ値を入力します。詳細については、「タグ」を参照してください。

  12. [概要]

    設定を確認し、[ロードバランサーの作成] を選択します。作成時に、Network Load Balancer にいくつかのデフォルト属性が適用されます。Network Load Balancer の作成後に、それらを表示および編集できます。詳細については、「ロードバランサーの属性」を参照してください。

AWS CLI
Application Load Balancer を作成するには

create-load-balancer コマンドを使用します。

次の の例では、2 つの有効なアベイラビリティーゾーンとセキュリティグループを持つインターネット向けロードバランサーを作成します。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
内部 Application Load Balancer を作成するには

次の例に示すように、 --schemeオプションを含めます。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --scheme internal \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
デュアルスタック Application Load Balancer を作成するには

次の例に示すように、 --ip-address-typeオプションを含めます。

aws elbv2 create-load-balancer \ --name my-load-balancer \ --type application \ --ip-address-type dualstack \ --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \ --security-groups sg-1111222233334444
リスナーを追加するには

create-listener コマンドを使用します。例については、「HTTP リスナーを作成する」および「HTTPS リスナーを作成する」を参照してください。

CloudFormation
Application Load Balancer を作成するには

AWS::ElasticLoadBalancingV2::LoadBalancer タイプのリソースを定義します。

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-alb Type: application Scheme: internal IpAddressType: dualstack Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup Tags: - Key: "department" Value: "123"
リスナーを追加するには

AWS::ElasticLoadBalancingV2::Listener タイプのリソースを定義します。例については、「HTTP リスナーを作成する」および「HTTPS リスナーを作成する」を参照してください。

ロードバランサーをテストする

ロードバランサーを作成したら、EC2 インスタンスが最初のヘルスチェックに合格することを検証できます。ロードバランサーが EC2 インスタンスにトラフィックを送信するかどうかを検証できます。ロードバランサーを削除するには、Application Load Balancer の削除 を参照してください。

ロードバランサーをテストするには
  1. ロードバランサーが作成されたら、[Close] を選択します。

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

  3. 新しく作成したターゲットグループを選択します。

  4. [Targets] を選択して、インスタンスの準備ができていることを確認します。インスタンスのステータスが initial である場合、通常、インスタンスがまだ登録の進行中であることが原因です。このステータスは、インスタンスが正常と見なされるのに必要なヘルスチェックの最小数に合格しなかったことを示すこともできます。少なくとも 1 つのインスタンスのステータスが正常であれば、ロードバランサーをテストできます。詳細については、「ターゲットヘルスステータス」を参照してください。

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

  6. 新しく作成したロードバランサーを選択します。

  7. [説明] を選択し、インターネット向けまたは内部ロードバランサーの DNS 名 (my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com など) をコピーします。

    • インターネット向けのロードバランサーの場合、インターネットに接続されたウェブブラウザのアドレスフィールドに DNS 名を貼り付けます。

    • 内部ロードバランサーの場合、VPC へのプライベート接続を持つウェブブラウザのアドレスフィールドに DNS 名を貼り付けます。

    すべてが正しく設定されている場合は、ブラウザにサーバーのデフォルトページが表示されます。

  8. ウェブページが表示されない場合は、追加の設定ヘルプとトラブルシューティングステップについて、次のドキュメントを参照してください。

次のステップ

ロードバランサーを作成したら、次の操作を行います。