すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:ALB を使用した IPv4 サービスの迅速な負荷分散

最終更新日:Dec 03, 2025

Alibaba Cloud Application Load Balancer (ALB) は、アプリケーション層で動作し、HTTP、HTTPS、QUIC プロトコルをサポートし、強力な機能を提供します。このトピックでは、IPv4 ALB インスタンスを作成して、IPv4 クライアントからのリクエストをバックエンドサーバーに転送する方法について説明します。

前提条件

  • 中国 (上海) リージョンに VPC1 という名前の virtual private cloud (VPC) を作成済みであること。この VPC には、上海ゾーン E に VSW1 という名前の vSwitch、上海ゾーン G に VSW2 という名前の vSwitch を作成済みであること。詳細については、「VPC と vSwitch の作成」をご参照ください。

    VSW1 と VSW2 に ALB インスタンスをデプロイする場合、次の情報にご注意ください。スペックアップされた ALB インスタンスは、指定された各 vSwitch から 3 つの IP アドレスを使用します。1 つの IP アドレスは、インターネット経由でサービスを提供する仮想 IP アドレス (VIP) で、他の 2 つはバックエンドサーバーとの通信に使用されるローカル IP アドレスです。vSwitch の IP アドレスが不足している場合、インスタンスは作成できず、エラーが報告されます。VSW1 と VSW2 に十分な数の利用可能な IP アドレスがあることを確認してください。この制限は、スペックアップされていない ALB インスタンスには適用されません。

    説明
    • スペックアップされた ALB インスタンスのすべての伸縮機能を確実に利用できるようにするには、ALB インスタンスの各 vSwitch に少なくとも 8 つの IP アドレスを予約する必要があります。

    • スペックアップされた ALB インスタンスがバックエンドサービスに接続できるようにするには、バックエンドサービスが iptables やその他のサードパーティ製セキュリティソフトウェアなどのアクセスポリシーを使用している場合、ALB インスタンスが属する vSwitch の CIDR ブロックからのトラフィックを許可する必要があります。

  • VSW1 に ECS01 という名前の Elastic Compute Service (ECS) インスタンス、VSW2 に ECS02 という名前の ECS インスタンスを作成し、両方のインスタンスにアプリケーションをデプロイ済みであること。

    • ECS インスタンスの作成方法の詳細については、「ウィザードを使用したインスタンスの作成」をご参照ください。

    • 以下は、ECS01 と ECS02 にテストアプリケーションをデプロイする方法の例です。

      ECS01 にサービスをデプロイするコマンド

      yum install -y nginx
      systemctl start nginx.service
      cd /usr/share/nginx/html/
      echo "Hello World ! This is ECS01." > index.html

      ECS02 にサービスをデプロイするコマンド

      yum install -y nginx
      systemctl start nginx.service
      cd /usr/share/nginx/html/
      echo "Hello World ! This is ECS02." > index.html
  • ドメイン名を登録し、ICP 登録を完了済みであること。詳細については、「Alibaba Cloud ドメイン名の登録」および「ICP 登録プロセス」をご参照ください。

次の表に、このトピックにおける VPC インスタンスの構成を示します。この構成は参考用です。

クリックして VPC 構成を表示

構成

説明

名前

VPC1

リージョン

中国 (上海)

IPv4 CIDR ブロック

192.168.0.0/16

VSwitch

名前:VSW1

ゾーン:上海ゾーン E

IPv4 CIDR ブロック:192.168.5.0/24

名前:VSW2

ゾーン:上海ゾーン G

IPv4 CIDR ブロック:192.168.6.0/24

次の表に、このトピックにおける ECS インスタンスの構成を示します。この構成は参考用です。

クリックして ECS 構成を表示

名前

リージョン

VPC

ゾーンと vSwitch

ECS 構成

ECS01

中国 (上海)

VPC1

上海ゾーン E | VSW1

  • インスタンスタイプ:ecs.e-c1m1.large

  • CPU とメモリ:2 vCPU コア、2 GiB

  • イメージ:Alibaba Cloud Linux 3.2104 LTS 64 ビット

ECS02

上海ゾーン G | VSW2

ステップ 1:ALB インスタンスの作成

  1. ALB コンソールにログインします。

  2. [インスタンス] ページで、[Application Load Balancer の作成] をクリックします。

  3. Application Load Balancer (Pay-As-You-Go) International Site 購入ページで、インスタンスのパラメーターを設定します。

    このトピックでは、必須の設定項目のみを説明します。その他のすべてのパラメーターについては、デフォルト値を使用します。各パラメーターの詳細については、「ALB インスタンスの作成と管理」をご参照ください。

    構成

    説明

    リージョン

    インスタンスを作成するリージョンを選択します。本トピックでは[中国 (上海)]を使用します。

    ネットワークタイプ

    インスタンスのネットワークタイプを選択します。 選択に基づいて、システムによって非公開エンドポイントまたはパブリックエンドポイントが割り当てられます。 この Topic では、[パブリックネットワーク]を使用します。

    VPC

    インスタンスがデプロイされる VPC を選択します。

    ゾーン

    ゾーンを少なくとも 2 つ選択します。本トピックでは、[上海ゾーン E] とその vSwitch VSW1、および [上海ゾーン G] とその vSwitch VSW2 を使用します。

    プロトコルバージョン

    インスタンスのプロトコルバージョンを選択します。この Topic では [IPv4] を使用します。

    エディション (インスタンス料金)

    インスタンスのエディションを選択します。このトピックでは[標準]を使用します。

    インスタンス名

    インスタンスのカスタム名を入力します。

    サービスリンクロール

    初めて Application Load Balancer インスタンスを作成する場合、[サービスリンクロールを作成] をクリックして、AliyunServiceRoleForAlb という名前のサービスリンクロールを作成します。 システムは、ALB に他のクラウドリソースへのアクセス権限を付与するために、AliyunServiceRolePolicyForAlb ポリシーをそのロールにアタッチします。 詳細については、「Server Load Balancer のシステムポリシー」をご参照ください。

  4. [今すぐ購入] をクリックし、プロンプトに従って支払いを完了します。

  5. [インスタンス] ページに戻り、正しいリージョンを選択して新しいインスタンスを表示します。

ステップ 2:サーバーグループの作成

  1. 左側のナビゲーションウィンドウで、[Application Load Balancer] > [サーバーグループ] を選択します。

  2. [サーバーグループ] ページで、[サーバーグループの作成] をクリックします。

  3. [サーバーグループの作成] ダイアログボックスで、パラメーターを設定し、[作成] をクリックします。

    このトピックでは、必須の設定項目のみを説明します。その他のすべてのパラメーターについては、デフォルト値を使用します。パラメーターの詳細については、「サーバーグループの作成」をご参照ください。

    パラメーター

    説明

    サーバーグループタイプ

    サーバーグループタイプを選択します。この Topic では [サーバータイプ] を使用します。

    サーバーグループ名

    サーバーグループの名前を入力します。

    VPC

    VPC ドロップダウンリストから、ECS インスタンスが属する VPC を選択します。

    説明

    選択した VPC が ALB インスタンスの VPC と同じであることを確認してください。

    バックエンドプロトコルの選択

    バックエンドプロトコルを選択します。この Topic では [HTTP] を使用します。

    スケジューリングアルゴリズムの選択

    スケジューリングアルゴリズムを選択します。この Topic では、[加重ラウンドロビン] を使用します。

    セッション維持の有効化

    セッション維持を有効または無効にします。このトピックでは、デフォルト設定の無効を使用します。

    バックエンドの持続的接続の有効化

    バックエンドサーバーへの持続的接続を有効または無効にします。このトピックでは、デフォルト設定の有効を使用します。

    ヘルスチェック

    ヘルスチェックを有効または無効にします。このトピックではヘルスチェックが有効になっています。

    ヘルスチェック設定

    ヘルスチェックを有効にした後、[編集] をクリックして詳細設定を行います。

  4. [サーバーグループが作成されました] ダイアログボックスで、[バックエンドサーバーを追加] をクリックします。

  5. [バックエンドサーバー] タブで、[バックエンドサーバーの追加] をクリックします。

  6. [バックエンドサーバーの追加] パネルで、ECS01 と ECS02 インスタンスを選択し、[次へ] をクリックします。

  7. [ポートとウェイトの設定]」 ウィザードで、追加されたサーバーの [ポート][ウェイト] を設定し、[OK] をクリックします。

    このトピックでは、ECS インスタンスのポートは 80 に設定され、重みはデフォルト値の 100 に設定されています。

ステップ 3:リスナーの設定

  1. 左側のナビゲーションウィンドウで、[Application Load Balancer] > [インスタンス]を選択し、インスタンス ID をクリックします。

  2. [リスナー] タブで、リスナーの作成 をクリックします。

  3. [リスナーの設定] ウィザードで、次のパラメーターを設定し、[次へ] をクリックします。

    このトピックでは、必須の設定項目のみを説明します。その他のすべてのパラメーターについては、デフォルト値を使用します。リスナーの設定方法の詳細については、「HTTP および HTTPS リスナー」をご参照ください。

    パラメーター

    説明

    リスナープロトコルの選択

    リスナーのプロトコルを選択します。このトピックでは [HTTP] を使用します。

    リスナーポート

    リクエストを受信し、バックエンドサーバーに転送するために使用されるリスナーポートです。このトピックでは 80 を使用します。

    リスナー名

    リスナーのカスタム名を入力します。

    詳細設定

    この Topic では、デフォルト設定を使用します。設定を変更するには、[変更] をクリックします。

  4. サーバーグループ ウィザードで、サーバータイプサーバータイプ の下にリストされているターゲットサーバーグループを選択し、バックエンドサーバー情報を表示して、次に [次へ] をクリックします。

  5. [構成レビュー] ウィザードページで、リスナーの構成を確認し、[送信] をクリックします。

  6. OK をクリックして [リスナー] タブに戻ります。リスナーの ヘルスチェックステータス 列の値が [正常] に変わると、バックエンドの ECS01 および ECS02 インスタンスは、ALB インスタンスによって転送されたリクエストを処理できるようになります。

ステップ 4:名前解決の設定

実際のシナリオでは、カスタムドメイン名を使用し、CNAME レコードを作成してカスタムドメイン名を ALB インスタンスの DNS 名にマッピングする必要があります。

重要

ロードバランサーの DNS 名はアップグレードされています。ALB インスタンスの DNS 名を直接アクセスに使用することはできません。

  1. 左側のナビゲーションウィンドウで、[Application Load Balancer (ALB)] > [インスタンス]を選択します。

  2. [インスタンス] ページで、ALB インスタンスの DNS 名をコピーします。

  3. 次の手順を実行して CNAME レコードを追加します。

    説明

    ドメイン名が Alibaba Cloud で登録されていない場合は、DNS レコードを設定する前に Cloud DNS コンソールにドメイン名を追加する必要があります。詳細については、「ドメイン名の管理」をご参照ください。ドメイン名が Alibaba Cloud で登録されている場合は、次の手順に進むことができます。

    1. Cloud DNS コンソールにログインします。

    2. [権威ドメイン名] ページで、対象のドメイン名を見つけ、[操作] 列の [DNS 設定] をクリックします。

    3. [DNS 設定] ページで、[レコードの追加] をクリックします。

    4. [レコードの追加] パネルで、CNAME レコードを設定し、[OK] をクリックします。

      構成

      説明

      レコードタイプ

      ドロップダウンリストから [CNAME] を選択します。

      ホスト名

      ドメイン名のプレフィックスです。このトピックでは @ を使用します。

      説明

      ルートドメインを作成する場合、ホスト名を @ に設定します。

      解析リクエストソース

      デフォルトを選択します。

      レコード値

      ドメイン名に対応する CNAME アドレスを入力します。これは、コピーした ALB インスタンスの DNS 名です。

      TTL

      Time To Live (TTL) は、DNS レコードが DNS サーバにキャッシュされる時間です。このトピックではデフォルト値を使用します。

ステップ 5:接続性のテスト

設定が完了したら、クライアントとバックエンド ECS インスタンス間の接続性をテストできます。この例では、インターネットにアクセスできるクライアントを使用します。

ブラウザにドメイン名を入力します。例:http://<your domain name>。ページを複数回更新します。クライアントリクエストは、ECS01 と ECS02 インスタンスに順番に転送されます。

image

image

これにより、クライアントは ALB を介して、ラウンドロビン方式で異なるバックエンドサービスにアクセスできます。

リソースのリリース

  1. ECS インスタンスやセキュリティグループなどのリソースを削除します。

    1. ECS01 インスタンスとそのセキュリティグループを削除します。

      1. Elastic Compute Service (ECS) コンソールにログインします。上部のナビゲーションバーで、インスタンスが配置されているリージョンを選択します。ECS01 インスタンスの右側にある image.png アイコンをクリックします。表示されたウィンドウで、[リリース] を選択し、プロンプトに従ってインスタンスをすぐにリリースします。

      2. ECS セキュリティグループコンソールにログインします。上部のナビゲーションバーで、インスタンスが配置されているリージョンを選択します。ECS01 のカスタムセキュリティグループを選択し、[削除]をクリックします。

    2. 上記の手順を繰り返して、ECS02 インスタンスとそれに関連するセキュリティグループを削除します。

  2. DNS レコードの削除

    DNS レコードの削除方法の詳細については、「DNS レコードの削除」をご参照ください。

  3. ALB リソースの削除:

    1. Application Load Balancer コンソールにログインします。トップナビゲーションバーで、インスタンスが存在するリージョンを選択します。インスタンスの右側にある image.png アイコンをクリックします。表示されたウィンドウで、[リリース] を選択し、リリースを確定します。

    2. バックエンドサーバーの削除方法の詳細については、「バックエンドサーバーの削除」をご参照ください。

    3. サーバーグループの削除方法の詳細については、「サーバーグループの削除」をご参照ください。

  4. VPC リソースの削除:

    1. VPC コンソールにログインします。上部のナビゲーションバーで、インスタンスのリージョンを選択します。

    2. インスタンスの右側にある[削除]をクリックします。システムは依存リソースをチェックします。依存リソースが存在する場合、VPC と vSwitch を削除する前にそれらをリリースする必要があります。

関連ドキュメント