Application Load Balancer (ALB) は、アプリケーション層の処理機能と幅広い高度な転送ルールを提供するレイヤー 7 の負荷分散サービスです。ALB インスタンスを作成することで、クライアントからのリクエストをバックエンドサーバーに転送できます。
インスタンスの作成
前提条件
-
アカウント権限: 初めて ALB インスタンスを作成する際に、システムは
AliyunServiceRoleForAlbサービスリンクロールの作成を求めます。このロールにより、ALB は Elastic Network Interface (ENI)、セキュリティグループ、Elastic IP アドレス (EIP)、共有帯域幅などのクラウドリソースにアクセスできるようになります。 -
アカウント残高: ALB インスタンスは従量課金方式を採用しています。アカウントに支払い延滞がある場合、インスタンスを作成できません。インスタンスを作成する前に、アカウントに十分な残高があることを確認してください。
-
ネットワークの準備:
-
ターゲットリージョンに Virtual Private Cloud (VPC) を作成済みであること。
-
高可用性を確保するため、リージョンが複数のアベイラビリティゾーンをサポートしている場合、ALB インスタンスを少なくとも 2 つのアベイラビリティゾーンにデプロイする必要があります。使用する予定の各アベイラビリティゾーンに、少なくとも 1 つの vSwitch を作成済みであることを確認してください。
-
-
IP アドレスの計画:
-
ALB インスタンスは、指定された各 vSwitch から 3 つの IP アドレスを割り当てます。1 つは外部サービス用の仮想 IP アドレス (VIP)、2 つはバックエンドサーバーとの通信用のローカル IP アドレスです。
-
完全な拡張性を確保するため、ALB インスタンスがデプロイされている各 vSwitch に、少なくとも 8 つの IP アドレスを予約してください。IPv4 vSwitch の最初と最後の 3 つの IP アドレスはシステムによって予約されています。したがって、vSwitch の IPv4 CIDR ブロックのプレフィックス長は、
/28以下 (例:/27) である必要があります。
-
-
セキュリティ計画: iptables のようなセキュリティポリシーを使用する場合、バックエンドサービスとの適切な接続を確保するために、ALB インスタンスの vSwitch CIDR ブロックからのトラフィックを許可してください。
コンソール
-
ALB コンソールのインスタンスページに移動し、ALB の作成をクリックします。
-
購入ページで、次のパラメーターを指定し、今すぐ作成 をクリックします。
-
[リージョン]: アクセス遅延を削減するために、クライアントに最も近いリージョンを選択します。
詳細については、「ALB 機能をサポートするリージョンとアベイラビリティゾーン」をご参照ください。
-
[インスタンスのネットワークタイプ]:
-
[内部]: プライベート IP アドレスのみを割り当てます。インスタンスは Alibaba Cloud プライベートネットワーク内からのみアクセスできます。
-
[インターネット]: パブリック IP アドレスとプライベート IP アドレスの両方を割り当てます。インスタンスはインターネットおよびプライベートネットワーク内からアクセスできます。デフォルトでは、ALB はパブリックネットワークアクセスに EIP を使用します。
[インターネット] を選択した場合、各アベイラビリティゾーンに 1 つの EIP が割り当てられ、各 EIP には独立して設定料金とデータ転送料金が課金されます。
インターネットネットワークタイプのデュアルスタックインスタンスは、デフォルトでパブリックアクセスに IPv4 アドレスを使用し、パブリック IPv6 機能はありません。パブリック IPv6 アクセスを有効にするには、ALB インスタンスのネットワークタイプを変更します。この操作にはIPv6 パブリックネットワーク料金が発生します。
-
-
[VPC]: インスタンスとそのサーバーグループは同じ VPC 内にある必要があります。ALB インスタンスの VPC は作成後に変更できません。
-
[アベイラビリティゾーン]:
-
リージョンが複数のアベイラビリティゾーンをサポートしている場合は、少なくとも 2 つのアベイラビリティゾーンと、それに対応する vSwitch を選択します。
-
(このパラメーターは、[インスタンスのネットワークタイプ] が [インターネット] に設定されている場合にのみ使用できます) 既存の EIP をバインドするか、[パブリック IP を自動割り当て] を選択できます。[パブリック IP を自動割り当て] を選択すると、システムは従量課金 (データ転送量による課金) の EIP を作成し、それを ALB インスタンスにバインドします。
バインドできるのは、共有帯域幅インスタンスに関連付けられていない、既存の従量課金 (データ転送量による課金) の EIP のみです。ALB インスタンスにバインドされているすべての EIP は、同じタイプである必要があります。
-
-
[IP バージョン]: IPv6 アクセスをサポートするには、[デュアルスタック] を選択します。それ以外の場合は、[IPv4] を選択します。
デュアルスタックの ALB インスタンスを作成する前に、インスタンスがデプロイされる vSwitch で IPv6 を有効にする必要があります。
デュアルスタックインスタンスは新規作成のみ可能です。既存の IPv4 インスタンスをデュアルスタックにアップグレードすることはできません。
ALB Extensible Edition はデュアルスタックをサポートしていません。
-
[エディション] (インスタンス料金):
-
[Basic Edition]: ドメイン名、URL、HTTP ヘッダーに基づくルーティングなど、基本的なアプリケーション負荷分散機能を提供します。
-
[Standard Edition]: Basic Edition のすべての機能を含み、カスタム TLS セキュリティポリシー、トレース分析、リダイレクトやリライトなどの高度なルーティング機能を追加します。
-
[WAF-enhanced Edition]: Standard Edition のすべての機能を含み、Web Application Firewall (WAF) 3.0 を統合して、アプリケーション層の Web セキュリティを提供します。
WAF インスタンスをアクティベートしていない場合、WAF-enhanced Edition の ALB インスタンスを作成すると、従量課金の WAF 3.0 インスタンスが自動的にアクティベートされます。
アクティブなサブスクリプションベースの WAF 3.0 インスタンスがある場合、WAF-enhanced Edition の ALB インスタンスを作成しても、追加の WAF 料金は発生しません。
アクティブな WAF 2.0 インスタンスがある場合は、まず WAF 2.0 インスタンスをリリースするか、WAF 3.0 に移行する必要があります。
デフォルトでは、ALB は X-Forwarded-Proto ヘッダーを有効にしません。WAF 2.0 インスタンスをリリースした後、バックエンドサービスがプロトコル (HTTP または HTTPS) を正しく識別できないため、ALB インスタンスに直接アクセスすると、無限リダイレクトなどのサービスの問題が発生する可能性があります。この問題を回避するには、ALB リスナー設定で X-Forwarded-Proto リクエストヘッダーを手動で有効にしてください。
-
[Extensible Edition]: 柔軟なサービス拡張機能に基づいて構築されており、ID 認証やコンテンツベースのルーティングなどのコアトラフィックガバナンス機能を提供し、マルチモデルプロキシ、GPU 対応スケジューリング、トークンレート制限などの AI ネイティブ機能を追加して、アプリケーションと AI の両方に対応する統合インテリジェントトラフィックエントリを作成します。
ALB Extensible Edition はパブリックプレビュー中です。詳細については、「パブリックプレビューのお知らせ」をご参照ください。
ALB Extensible Edition インスタンスは、
33.0.0.0/8または22.0.0.0/16CIDR ブロックからのクライアントアクセスをサポートしていません。
-
-
(このパラメーターは、[インスタンスのネットワークタイプ] が [インターネット] に設定されている場合にのみ使用できます) [共有帯域幅に追加]: デフォルトでは、2 つのアベイラビリティゾーンにデプロイされた ALB インスタンスのパブリック帯域幅制限は 400 Mbit/s です。より高い帯域幅制限を得るために、インスタンスを共有帯域幅インスタンスに追加できます。
-
(このパラメーターは、[インスタンスのネットワークタイプ] が [インターネット] に設定されており、[共有帯域幅に追加] を選択していない場合にのみ使用できます) [パブリック IP の課金方法]: デフォルトの課金方法は[データ転送量による課金]であり、変更することはできません。
データ転送量による課金モードでは、帯域幅制限は最大しきい値を表し、保証するものではありません。実際のリソース競合時には、実際の帯域幅が低くなることがあります。
-
[インスタンス名] と [リソースグループ]: 管理を簡素化するために、説明的な名前を指定し、リソースグループを選択します。作成後、インスタンス ページで名前を変更したり、タグを使用して管理したりできます。
-
API
CreateLoadBalancer API を呼び出して、Application Load Balancer インスタンスを作成します。
次のステップ
-
サーバーグループの作成: ALB インスタンスによって転送されるリクエストを受信するターゲットサーバーのグループを作成します。
-
リスナーの追加: ALB インスタンスにリスナーを追加して、受信リクエストの受信方法を定義します。HTTP、HTTPS、QUIC リスナーを作成できます。
-
CNAME レコードの追加: ロードバランサーのドメインネームシステムがアップグレードされました。新しく作成された ALB インスタンスには、その DNS 名を使用して直接アクセスすることはできません。独自のドメイン名を使用し、ドメイン名をインスタンスの DNS 名にマッピングする CNAME レコードを作成する必要があります。
インスタンスのステータス
|
ステータス |
説明 |
ロックタイプ |
削除の可否 |
変更の可否 |
|
実行中 |
インスタンスは正常に実行されています。 |
該当なし |
|
|
|
作成中 |
インスタンスの作成が進行中です。 |
いいえ |
いいえ |
|
|
設定の更新中 |
設定の更新が進行中です。 |
いいえ |
||
|
作成失敗 |
インスタンスの作成に失敗しました。 |
はい |
||
|
停止済み |
インスタンスはロックされています。サービスは利用できません。 |
ロック済み (支払い延滞): 支払い延滞によりロックされています。延滞料金をお支払いの上、ロックを解除してください。 |
いいえ |
|
|
ロック済み (関連リソースの異常): 関連リソース (EIP またはインターネット共有帯域幅) が支払い延滞によりロックされています。更新してインスタンスのロックを解除してください。 |
いいえ |
|||
|
ロック済み (残留): 関連する EIP またはインターネット共有帯域幅インスタンスが支払い延滞によりリリースされ、ALB インスタンスが利用できなくなりました。ALB インスタンスをリリースしてください。 |
はい |
|||
|
ロック済み (セキュリティリスク): セキュリティリスクによりロックされています。セキュリティ管理コンソールでロック解除をリクエストしてください。 |
いいえ |
インスタンスのリリース
インスタンスは、使用状況に関わらず、作成からリリースされるまで インスタンス料金 が課金されます。不要なコストを避けるため、不要になったインスタンスはリリースしてください。
インターネット向け ALB インスタンスをリリースする際、ALB が自動的に作成してバインドした EIP を保持するかどうかを選択できます。エニーキャスト EIP は保持できません。保持された EIP は従量課金制で課金されます。手動でバインドした EIP は自動的に保持されます。
-
インスタンスのリリースは、すべての設定を削除する元に戻せない操作です。慎重に操作してください。
-
インスタンスが Container Service for Kubernetes (ACK) などの他のクラウドサービスによって管理されている場合、それをリリースすると関連するサービスが失敗します。この操作は元に戻せません。
-
インスタンスをリリースする前に、サービスの停止を防ぐため、関連するドメイン名を別のアドレスにポイントしてください。
インスタンスを解放する前に、削除保護 が無効になっていることを確認してください。
コンソール
ALB コンソールの[インスタンス]ページに移動します。対象インスタンスの操作 列で、
> リリース を選択し、OK をクリックします。
API
-
DisableDeletionProtection API を呼び出して、インスタンスの削除保護を無効にします。
-
DeleteLoadBalancer API を呼び出して、ロードバランサーインスタンスを削除します。
削除保護と変更保護
削除保護と変更保護 (コンソール上では [設定変更保護] として表示) 機能は、インスタンスの偶発的な削除や変更を防ぎます。
変更保護は、コンソール経由での変更のみを防止します。
コンソール
ALB コンソールの インスタンス ページに移動します。対象インスタンスの ID をクリックして、インスタンスの詳細 ページに移動します。インスタンスプロパティ セクションで、削除保護 と 設定変更保護モード を有効化または無効化できます。
API
-
EnableDeletionProtection および DisableDeletionProtection API を呼び出して、削除保護を有効または無効にします。
-
UpdateLoadBalancerAttribute API を呼び出す際に、
ModificationProtectionConfigのStatusパラメーターを設定して、変更保護を有効または無効にします。
課金
ALB は、従量課金とリソースプランの 2 つの課金方法をサポートしています。課金項目の詳細については、「ALB の課金の概要」をご参照ください。
クォータ
詳細については、「ALB のクォータ」をご参照ください。
よくある質問
内部向け ALB インスタンスに IP アドレスはありますか? DNS 経由でのアクセス方法は?
内部向け ALB インスタンスを作成すると、システムは各アベイラビリティゾーンにプライベート IP アドレスを割り当てます。インスタンスは DNS 名だけでなく、プライベート IP アドレスも持ちます。DNS 名 (例: alb-xxx.cn-hangzhou.alb.aliyuncsslb.com) は、これらのプライベート IP アドレスに解決されます。同じ VPC 内の ECS インスタンスが DNS 名を介して内部向け ALB インスタンスにアクセスすると、すべてのトラフィックは内部ネットワークを通過するため、パブリックネットワークのトラフィック料金は発生しません。
内部向け ALB インスタンスの IP 情報を表示するには:
-
インスタンス詳細ページの可用性ゾーンテーブルで、[VIP] (仮想 IP アドレス) 列と [ローカル IP] (送信元 IP アドレス) 列を表示します。
-
digまたはnslookupコマンドを実行して DNS 名を解決し、プライベート IP アドレスを取得します。
インターネット向け ALB インスタンスと内部向け ALB インスタンスの違いは何ですか?
主な違いは、仮想 IP アドレス (VIP) が Elastic IP アドレス (EIP) に関連付けられているかどうかです。インターネット向け ALB インスタンスは VIP が EIP に関連付けられているため、インターネット経由でアクセスできます。内部向け ALB インスタンスの VIP には EIP がないため、VPC 内からのみアクセスできます。