このトピックでは、同一リージョン内のデータセンターにあるオンプレミスサーバーを Application Load Balancer (ALB) インスタンスに追加する方法について説明します。ALB は Cloud Enterprise Network (CEN) のトランジットルーターと連携して、データセンター内のサーバーにリクエストを転送できます。
シナリオ例
ALB はデータセンター内のバックエンドサーバーをサポートしています。この例では、同一リージョン内のデータセンターにあるオンプレミスサーバーを ALB インスタンスに追加する方法を示します。
ある企業が中国 (成都) リージョンに VPC1 という名前の VPC (Virtual Private Cloud) を作成しました。インターネット向けの ALB インスタンスが VPC1 に作成されています。この企業は、ALB インスタンスが中国 (成都) リージョンのデータセンターにあるオンプレミスサーバーにリクエストを転送することを望んでいます。
この要件を満たすために、企業は CEN を使用して VPC1 と仮想ボーダールーター (VBR) を中国 (成都) リージョンのトランジットルーターに接続できます。データセンターは VBR を介して Alibaba Cloud に接続されます。ALB インスタンスはトランジットルーターを使用してデータセンターにリクエストを転送できます。このソリューションでは、データセンター内のオンプレミスサーバーがバックエンドサーバーとして ALB インスタンスに追加されます。
制限事項
Alibaba Cloud は 2025年2月25日 00:00:00 (UTC+8) に ALB をアップグレードしました。2025年2月25日 00:00:00 (UTC+8) 以降に作成された ALB インスタンスは、自動的にアップグレード版になります。詳細については、「ALB インスタンスのアップグレード」をご参照ください。
このトピックで言及する ALB インスタンスは、アップグレード版の ALB インスタンスです。アップグレード前の ALB インスタンスを使用する場合は、次のユーザーガイドをご参照ください:「アップグレード前の ALB インスタンスでこのユースケースを実装する方法」
バックエンドサーバー
異なるリージョンにデプロイされたバックエンドサーバーを含むサーバーグループは、IP アドレスタイプである必要があります。
プライベート IP アドレスのみがサポートされており、パブリック IP アドレスはサポートされていません。
IPv6 アドレスをバックエンドサーバーとして指定する場合、サーバーグループで IPv6 を有効にする必要があります。次の点にご注意ください:
サーバーグループがデプロイされている VPC で IPv6 が有効になっている場合にのみ、サーバーグループで IPv6 を有効にできます。
IPv6 アドレスは、デュアルスタックのアップグレード版 ALB インスタンスのリスナーまたは転送ルールでのみ指定できます。アップグレード前のインスタンスはこの機能をサポートしていません。
サーバーグループで IPv6 が有効になった後、VPC の CIDR 範囲内の IPv6 アドレスのみを指定できます。リモート IP アドレスはサポートされていません。
ALB とバックエンドサーバー間のトラフィック転送
Enterprise Edition トランジットルーターを使用する場合、指定したゾーンの vSwitch に ENI が作成されます。この ENI は、VPC からトランジットルーターへのトラフィックの入口として機能します。VPC インスタンスを作成する際は、VPC インスタンスをトランジットルーターに接続するために、指定したゾーンに少なくとも 1 つの vSwitch を作成してください。詳細については、「トランジットルーターの仕組み」をご参照ください。
ALB インスタンスとそのバックエンドサーバー間のトラフィックは、システムルートテーブルを介してのみ転送できます。VPC のカスタムルートテーブルはサポートされていません。
前提条件
中国 (成都) リージョンに VPC (VPC1) が作成され、ゾーン A とゾーン B にそれぞれ vSwitch VSW1 と VSW2 が作成されていること。
VPC1 の VSW1 内に Elastic Compute Service (ECS) インスタンスがデプロイされていること。アプリケーションは ECS インスタンス上でホストされています。この例では、ECS インスタンスの名前を ECS01 とします。
ALB インスタンスが VPC1 に作成されていること。詳細については、「ALB インスタンスの作成と管理」をご参照ください。
カスタムドメイン名が登録され、ドメイン名に対して ICP (Internet Content Provider) 番号が取得され、ドメイン名を ALB インスタンスのドメイン名にマッピングするための CNAME レコードが作成されていること。
CEN インスタンスが作成され、中国 (成都) リージョンにトランジットルーターがデプロイされていること。
Express Connect 回線経由の接続が確立され、VBR が作成されていること。詳細については、「クラシックモードのリクエスト」および「VBR の作成と管理」をご参照ください。
このユースケースをテストするためのオンプレミスサーバーがデータセンターに作成されていること。この例では、サーバーの名前を ECS02 とします。アプリケーションは ECS02 上でホストされています。
手順
ステップ 1:ALB インスタンスのサーバーグループの作成
IP アドレスタイプのサーバーグループを作成し、ECS01 と ECS02 の IP アドレスをバックエンドサーバーとしてサーバーグループに追加します。
ALB コンソールにログインします。
上部のナビゲーションバーで、ALB インスタンスが存在するリージョンを選択します。この例では、[中国 (成都)] を選択します。
左側のナビゲーションウィンドウで、 を選択します。
[サーバーグループ] ページで、[サーバーグループの作成] をクリックします。[サーバーグループの作成] パネルで、パラメーターを設定し、[作成] をクリックします。
次の表では、このトピックに関連するパラメーターのみを説明します。その他のパラメーターについては、デフォルト値を使用できます。すべてのパラメーターの設定手順については、「NLB サーバーグループ」をご参照ください。
パラメーター
説明
サーバーグループタイプ
[IP] を選択します。これにより、VPC にデプロイされていないサーバーの IP アドレスをバックエンドサーバーとして追加できます。
VPC
VPC1 を選択します。
バックエンドサーバープロトコル
[HTTP] を選択します。
説明基本 ALB インスタンスの HTTPS リスナーでは、バックエンドサーバープロトコルが HTTP のサーバーグループのみを指定できます。
スケジューリングアルゴリズム
デフォルト値の 重み付きラウンドロビン を維持します。スケジューリングアルゴリズムの詳細については、「SLB スケジューリングアルゴリズム」をご参照ください。
表示されたダイアログボックスで、[バックエンドサーバーの追加] をクリックします。
[バックエンドサーバーの追加] パネルで、ECS01 のプライベート IP アドレスを入力し、[次へ] をクリックし、[ポート] と [重み] を設定して、[OK] をクリックします。
[ポート] には、バックエンドサーバーがサービスを提供するために使用するポートを指定します。この例では、[80] を指定します。[重み] はデフォルト値のままにします。
IP アドレスの追加 をクリックします。バックエンドサーバーの追加 パネルで、ECS02 のプライベート IP アドレスを入力し、リモート IP アドレス を有効にし、次へ をクリックし、ポート と ポート を設定して、OK をクリックします。この例では、[ポート] に [80] を指定し、[重み] はデフォルト値のままにします。
[リモート IP] を有効にすると、次の CIDR 範囲内の IP アドレスをバックエンドサーバーとして追加できます:
10.0.0.0/8
100.64.0.0/10
172.16.0.0/12
192.168.0.0/16
[リモート IP] が無効の場合、VPC の CIDR 範囲内の IP アドレスのみを追加できます。
ステップ 2:ALB インスタンスのリスナーの作成
ALB コンソールにログインします。
上部のナビゲーションバーで、ALB インスタンスが存在するリージョンを選択します。この例では、[中国 (成都)] を選択します。
[インスタンス] ページで、ALB インスタンスを見つけ、[操作] 列の リスナーの作成 をクリックします。
[Server Load Balancer の設定] ページの リスナーの設定 ステップで、パラメーターを設定し、[次へ] をクリックします。次の表では、主要なパラメーターのみを説明します。その他のパラメーターについては、デフォルト値を使用できます。
パラメーター
説明
リスナープロトコル
[HTTP] を選択します。
リスナーポート
ALB インスタンスがリッスンするポートを指定します。ALB インスタンスは指定されたポートでリクエストをリッスンし、バックエンドサーバーにリクエストを転送します。有効な値:1~65535。この例では、80 を指定します。
[サーバーグループの選択] ステップで、[サーバーグループ] セクションのドロップダウンリストから [IP] を選択し、ステップ 1 で作成したサーバーグループを選択して、[次へ] をクリックします。
[設定の確認] ステップで、設定を確認し、[送信] をクリックします。
ステップ 3:VPC を CEN インスタンスにアタッチ
CEN コンソールにログインします。
[インスタンス] ページで、作成した CEN インスタンスの ID をクリックします。
タブで、使用するトランジットルーターを見つけ、[操作] 列の [接続の作成] をクリックします。
[ピアネットワークインスタンスとの接続] ページで、パラメーターを設定し、[OK] をクリックします。次の表では、主要なパラメーターのみを説明します。その他のパラメーターについては、デフォルト値を使用できます。すべてのパラメーターの設定手順については、「Enterprise Edition トランジットルーターの使用」をご参照ください。
パラメーター
説明
インスタンスタイプ
この例では、[Virtual Private Cloud (VPC)] を選択します。
リージョン
ネットワークインスタンスがデプロイされているリージョンを選択します。この例では、[中国 (成都)] を選択します。
[ネットワークインスタンス]
CEN インスタンスにアタッチする VPC の ID を選択します。この例では、VPC1 を選択します。
VSwitch
Enterprise Edition トランジットルーターでサポートされているゾーンにデプロイされている vSwitch を選択します。この例では、VSW1 と VSW2 を選択します。
ステップ 4:VBR を CEN インスタンスにアタッチ
VPC1 を CEN インスタンスにアタッチした後、[さらに接続を作成] をクリックします。
[ピアネットワークインスタンスとの接続] ページで、パラメーターを設定し、[OK] をクリックします。次の表では、このトピックに関連するパラメーターを説明します。その他のパラメーターについては、デフォルト値を使用できます。すべてのパラメーターの設定手順については、「VBR をトランジットルーターに接続する」をご参照ください。
パラメーター
説明
インスタンスタイプ
この例では、[仮想ボーダールーター (VBR)] を選択します。
リージョン
ネットワークインスタンスがデプロイされているリージョンを選択します。この例では、[中国 (成都)] を選択します。
ネットワークインスタンス
CEN インスタンスにアタッチする VBR の ID を選択します。この例では、中国 (成都) リージョンにデプロイされている VBR を選択します。
ステップ 5:VPC1 のシステムルートテーブルへのルートの追加
VPC1 のシステムルートテーブルに、宛先がオンプレミスサーバーの CIDR ブロックであるトラフィックをトランジットルーターに転送するルートが含まれているかどうかを確認します。そのようなルートが存在しない場合は、次の操作を実行してルートを追加します。
ALB インスタンスとそのバックエンドサーバー間のネットワークトラフィックは、システムルートテーブルに基づいてのみ転送できます。VPC カスタムルートテーブルに基づく転送はサポートされていません。
VPC コンソールにログインします。
[VPC] ページで、VPC1 の ID をクリックします。
VPC1 の詳細ページで、[リソース] タブをクリックし、[ルートテーブル] の下の数字をクリックします。
[ルートテーブル] ページで、[ルートテーブルタイプ] が [システム] であるルートテーブルを見つけ、その ID をクリックします。
ルートテーブルの詳細ページで、 を選択し、[ルートエントリの追加] をクリックします。
[ルートエントリの追加] パネルで、次の表を参照してパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
[宛先 CIDR ブロック]
宛先 CIDR ブロックを入力します。この例では、オンプレミスサーバーの CIDR ブロックである 192.168.20.0/24 を入力します。
[ネクストホップタイプ]
ネクストホップのタイプを選択します。この例では、[トランジットルーター] を選択します。
[トランジットルーター]
トランジットルーターを選択します。この例では、ステップ 3 で VPC1 がアタッチされているトランジットルーターを選択します。
ステップ 6:VBR ルートの追加
データセンターを指すルートを VBR のルートテーブルに追加します。
Express Connect コンソールにログインします。
上部のナビゲーションバーで、VBR が存在するリージョンを選択し、左側のナビゲーションウィンドウで [仮想ボーダールーター (VBR)] をクリックします。
[仮想ボーダールーター (VBR)] ページで、使用する VBR の ID をクリックします。
VBR の詳細ページで、[ルート] タブをクリックし、[ルートの追加] をクリックします。
[ルートの追加] パネルで、次の表を参照してパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
ネクストホップタイプ
ネクストホップのタイプを選択します。この例では、[物理接続インターフェイス] を選択します。
[宛先 CIDR ブロック]
この例では、オンプレミスサーバーの CIDR ブロックである 192.168.20.0/24 を入力します。
次のホップ
Express Connect 回線を選択します。
ステップ 7:オンプレミスサーバーのルートテーブルへのルートの追加
ALB インスタンスが接続されている vSwitch の CIDR ブロックを確認し、vSwitch へのトラフィックを転送するためのルートをオンプレミスサーバーに追加します。
VPC がトランジットルーターに接続されると、トランジットルーターは VPC 内の vSwitch のすべてのルーティング情報を学習できます。ALB が接続されている vSwitch へのトラフィックを転送するためのルートをトランジットルーターのルートテーブルに追加する必要はありません。
ALB インスタンスが接続されている vSwitch の CIDR ブロックを確認します。
VPC コンソールにログインします。
上部のナビゲーションバーで、VPC1 が存在するリージョンを選択します。この例では、[中国 (成都)] を選択します。
[VPC] ページで、VPC1 の ID をクリックします。
VPC の詳細ページで、[リソース管理] タブをクリックし、[vSwitch] の下の数字をクリックします。
vSwitch ページで、ALB インスタンスが接続されている vSwitch を見つけ、その CIDR ブロックをコピーします。
ALB へのトラフィックを転送するためのルートをオンプレミスサーバーのルートテーブルに追加します。
オンプレミスサーバーのゲートウェイで、宛先が ALB インスタンスに接続されている vSwitch の CIDR ブロックであるルートを追加します。次のコードは一例です。ALB インスタンスが複数の vSwitch に接続されている場合は、上記の手順を繰り返してすべての CIDR ブロックを指定します。
説明ルート設定は参考用です。設定はゲートウェイデバイスによって異なる場合があります。
ip route 172.16.0.XX/24 255.255.255.0 <Alibaba Cloud 側の VBR IP アドレス> ip route 172.16.6.XX/24 255.255.255.0 <Alibaba Cloud 側の VBR IP アドレス>
ステップ 8:負荷分散効果のテスト
ALB とバックエンドサーバー間のネットワーク接続をテストします。
ローカル PC のブラウザでサービスのカスタムドメイン名 (例:
http://<ドメイン名>) にアクセスします。ページを数回更新します。クライアントが期待どおりに応答を受け取ることがわかります。アクセスされるサーバーは ECS01 と ECS02 の間で交互に切り替わります。

バックエンドサーバーの障害をシミュレートし、ALB をテストします。
systemctl stop nginx.serviceコマンドを実行して、ECS01 にデプロイされているアプリケーションを停止します。ローカル PC のブラウザでサービスのカスタムドメイン名 (例:
http://<ドメイン名>) にアクセスします。クライアントが引き続き期待どおりに応答を受け取ることがわかります。これは、ALB を使用してクラウドベースのサーバーとオンプレミスサーバーの間で負荷分散が実装されていることを示しています。
よくある質問
アップグレード前の ALB インスタンスでこのユースケースを実装する方法
アップグレード前の ALB インスタンスの手順は、ステップ 7 を除き、基本的に上記の手順と同じです。
制限事項
ステップ 7:back-to-origin ルートの追加
インターネット向けと内部向けの両方の ALB インスタンスが、オンプレミスサーバーをバックエンドサーバーとして追加することをサポートしていますか?
はい、両方ともこの機能をサポートしています。
参考文献
異なるリージョンの VPC 内のバックエンドサーバーを指定するには、「クロスリージョンサーバーを ALB インスタンスに追加する」をご参照ください。
NLB を使用して同じユースケースを実装するには、「同一リージョン内の NLB インスタンスにオンプレミスサーバーを追加する」および「VPC 内のバックエンドサーバーをリージョンをまたいで NLB に追加する」をご参照ください。