転送ルールのコンセプト

Google Cloud Platform ロードバランサのフロントエンド構成は、転送ルールとそれに対応する IP アドレスによって表されます。

各転送ルールは、ロードバランサがトラフィックを受け入れる IP アドレスとポートを参照します。一部の GCP ロードバランサでは事前定義されたポートセットのみという制限がありますが、他の GCP ロードバランサでは任意のポートを指定できます。転送ルールでは IP プロトコルも指定します。GCP ロードバランサの場合、IP プロトコルは常に TCP または UDP です。転送ルールでは、ロードバランサの種類に応じて、バックエンド サービス、ターゲット プロキシ、またはターゲット プールを指定します。

転送ルールとその IP アドレスには、ロードバランサの種類に応じて内部と外部があります。また、転送ルールは、ロードバランサとその階層に応じてグローバルまたはリージョンのいずれかになります。

内部転送ルール

内部転送ルールは GCP ネットワーク内で発生したトラフィックを転送します。クライアントは、バックエンドと同じ VPC ネットワーク内にあっても、接続ネットワーク内にあっても構いません。

内部転送ルールは、次の 2 種類の GCP ロードバランサで使用されます。

  • 内部 TCP / UDP ロードバランサ
  • 内部 HTTP(S) ロードバランサ

内部 TCP / UDP ロードバランサ

内部 TCP / UDP ロードバランサの場合、サポートされるトラフィック タイプは IPv4、サポートされるプロトコルは TCP または UDP のいずれか一方です。

それぞれの内部 TCP / UDP ロードバランサには、少なくとも 1 つのリージョン内部転送ルールがあります。リージョン内部転送ルールは、ロードバランサのリージョン内部バックエンド サービスを指し示します。バックエンドはインスタンス グループまたはネットワーク エンドポイント グループです。次の図は、内部 HTTP(S) 負荷分散アーキテクチャの中での転送ルールの位置付けを示しています。

内部 TCP / UDP 転送ルール(クリックして拡大)
内部 HTTP(S) 転送ルール(クリックして拡大)

次の図は、サブネットとリージョンの中でのロードバランサ コンポーネントの位置付けを示しています。

内部転送ルールはリージョンとサブネットの中にある必要があります。バックエンド サービスはリージョンの中にあるだけで構いません。

内部 TCP / UDP ロードバランサの例の概要図(クリックして拡大)
内部 TCP / UDP ロードバランサの例の概要図(クリックして拡大)

内部 TCP / UDP ロードバランサの詳細については、内部 TCP / UDP 負荷分散のコンセプトをご覧ください。内部 TCP / UDP ロードバランサの構成については、内部 TCP / UDP 負荷分散の設定をご覧ください。

内部 HTTP(S) ロードバランサ

内部 HTTP(S) ロードバランサの場合、サポートされるトラフィック タイプは IPv4、サポートされるプロトコルは HTTP、HTTPS、HTTP/2 です。

それぞれの内部 HTTP(S) ロードバランサには、少なくとも 1 つのリージョン内部転送ルールがあります。リージョン内部転送ルールは、ロードバランサのリージョン内部バックエンド サービスを指し示します。また、ロードバランサのバックエンド サービスを指し示す複数の内部転送ルールを指定することもできます。次の図は、内部 TCP / UDP 負荷分散アーキテクチャの中での転送ルールの位置付けを示しています。

内部 HTTP(S) 転送ルール(クリックして拡大)
内部 HTTP(S) 転送ルール(クリックして拡大)

内部 HTTP(S) ロードバランサの詳細については、内部 HTTP(S) 負荷分散のコンセプトをご覧ください。内部 HTTP(S) ロードバランサの構成については、内部 HTTP(S) 負荷分散設定の準備をご覧ください。

外部転送ルール

外部転送ルールは、VPC ネットワークの外部のインターネットから発信されたトラフィックを転送します。

外部転送ルールは、次の GCP ロードバランサで使用されます。

  • HTTP(S) ロードバランサ
  • SSL プロキシ ロードバランサ
  • TCP プロキシ ロードバランサ
  • ネットワーク ロードバランサ

HTTP(S) ロードバランサ

HTTP(S) ロードバランサは、プレミアムとスタンダードの両方の階層に対応しています。転送ルールと IP アドレスはどちらも、ロードバランサ用に選択した階層によって異なります。

HTTP(S) ロードバランサでは、転送ルールはターゲット プロキシを指し示します。

プレミアム階層の HTTP(S) ロードバランサでは、グローバル外部 IP アドレス(IPv4 と IPv6 のいずれも可能)と、グローバル外部転送ルールを使用します。全世界でアクセス可能なアプリケーションを提供し、エンドユーザーを最も近いリージョンのバックエンド VM に転送することによって、複数のリージョンにトラフィックを分散できます。グローバル外部転送ルールで使用する外部 IP アドレスは 1 つであるため、異なるリージョンに個別の DNS レコードを保持する必要がなく、DNS の変更が伝播されるのを待つ必要もありません。

異なる 2 つのグローバル外部 IP アドレスが同じ HTTP(S) ロードバランサを指し示すことが可能です。たとえばプレミアム階層では、1 つ目の転送ルールのグローバル外部 IP アドレスを IPv4 にし、2 つ目の転送ルールのグローバル外部 IP アドレスを IPv6 にすることができます。2 つの転送ルールが同じターゲット プロキシを指し示すこともできます。このようにして、1 つの HTTP(S) ロードバランサに IPv4 アドレスと IPv6 アドレスの両方を指定できます。詳細については、IPv6 終端のドキュメントをご覧ください。

スタンダード階層の HTTP(S) ロードバランサでは、リージョン外部 IP アドレス(IPv4 のみ)と、リージョン外部転送ルールを使用します。スタンダード階層の HTTP(S) ロードバランサは、単一リージョン内のバックエンド VM にのみトラフィックを分散できます。

次の図は、HTTP(S) 負荷分散アーキテクチャの中での転送ルールの位置付けを示しています。

HTTP(S) 転送ルール(クリックして拡大)
HTTP(S) 転送ルール(クリックして拡大)

HTTP(S) ロードバランサの詳細については、HTTP(S) 負荷分散のコンセプトをご覧ください。HTTP(S) ロードバランサの構成については、HTTP(S) 負荷分散の設定をご覧ください。

SSL プロキシ ロードバランサ

SSL プロキシ ロードバランサは HTTPS ロードバランサに似ています。これは、SSL(TLS)セッションの終端処理が可能なためです。SSL プロキシ ロードバランサは、HTTPS ロードバランサとは違い、パスベースのリダイレクトをサポートしていないため、IMAP や WebSocket over SSL など、HTTPS 以外のプロトコルの SSL の処理に適しています。詳しくは、SSL のよくある質問をご覧ください。

SSL プロキシ ロードバランサでは、転送ルールはターゲット プロキシを指し示します。

SSL プロキシ ロードバランサは、プレミアムとスタンダードの両方の階層に対応しています。転送ルールと IP アドレスはどちらも、ロードバランサ用に選択した階層によって異なります。

プレミアム階層の SSL プロキシ ロードバランサでは、グローバル外部 IP アドレス(IPv4 と IPv6 のいずれも可能)と、グローバル外部転送ルールを使用します。全世界でアクセス可能なアプリケーションを提供し、エンドユーザーを最も近いリージョンのバックエンド VM に転送することによって、複数のリージョンにトラフィックを分散できます。グローバル外部転送ルールで使用する外部 IP アドレスは 1 つであるため、異なるリージョンに個別の DNS レコードを保持する必要がなく、DNS の変更が伝播されるのを待つ必要もありません。

異なる 2 つのグローバル外部 IP アドレスが同じ SSL プロキシ ロードバランサを指し示すことが可能です。たとえばプレミアム階層では、1 つ目の転送ルールのグローバル外部 IP アドレスを IPv4 にし、2 つ目の転送ルールのグローバル外部 IP アドレスを IPv6 にすることができます。2 つの転送ルールが同じターゲット プロキシを指し示すこともできます。このようにして、1 つの SSL プロキシ ロードバランサに IPv4 アドレスと IPv6 アドレスの両方を指定できます。詳細については、IPv6 終端のドキュメントをご覧ください。

スタンダード階層の SSL プロキシ ロードバランサでは、リージョン外部 IP アドレス(IPv4 のみ)と、リージョン外部転送ルールを使用します。スタンダード階層の SSL プロキシ ロードバランサは、単一リージョン内のバックエンド VM にのみトラフィックを分散できます。

次の図は、SSL プロキシ負荷分散アーキテクチャの中での転送ルールの位置付けを示しています。

SSL プロキシ転送ルール(クリックして拡大)
SSL プロキシ転送ルール(クリックして拡大)

SSL プロキシ ロードバランサの詳細については、SSL プロキシ負荷分散のコンセプトをご覧ください。SSL プロキシ ロードバランサを構成するには、SSL プロキシ負荷分散の設定をご覧ください。

TCP プロキシ ロードバランサ

TCP プロキシ ロードバランサは、SSL オフロードなしのグローバル TCP プロキシ機能を提供します。TCP プロキシ ロードバランサは、プレミアムとスタンダードの両方の階層に対応しています。転送ルールと IP アドレスはどちらも、ロードバランサ用に選択した階層によって異なります。

TCP プロキシ ロードバランサでは、転送ルールはターゲット プロキシを指し示します。

プレミアム階層の TCP プロキシ ロードバランサでは、グローバル外部 IP アドレス(IPv4 と IPv6 のいずれも可能)と、グローバル外部転送ルールを使用します。全世界でアクセス可能なアプリケーションを提供し、エンドユーザーを最も近いリージョンのバックエンド VM に転送することによって、複数のリージョンにトラフィックを分散できます。グローバル外部転送ルールで使用する外部 IP アドレスは 1 つであるため、異なるリージョンに個別の DNS レコードを保持する必要がなく、DNS の変更が伝播されるのを待つ必要もありません。

異なる 2 つのグローバル外部 IP アドレスが同じ TCP プロキシ ロードバランサを指し示すことが可能です。たとえばプレミアム階層では、1 つ目の転送ルールのグローバル外部 IP アドレスを IPv4 にし、2 つ目の転送ルールのグローバル外部 IP アドレスを IPv6 にすることができます。2 つの転送ルールが同じターゲット プロキシを指し示すこともできます。このようにして、1 つの TCP プロキシ ロードバランサに IPv4 アドレスと IPv6 アドレスの両方を指定できます。詳細については、IPv6 終端のドキュメントをご覧ください。

スタンダード階層の TCP プロキシ ロードバランサでは、リージョン外部 IP アドレス(IPv4 のみ)と、リージョン外部転送ルールを使用します。スタンダード階層の TCP プロキシ ロードバランサは、単一リージョン内のバックエンド VM にのみトラフィックを分散できます。

次の図は、TCP プロキシ負荷分散アーキテクチャの中での、転送ルールの位置付けを示しています。

TCP プロキシ転送ルール(クリックして拡大)
TCP プロキシ転送ルール(クリックして拡大)

TCP プロキシ ロードバランサの詳細については、TCP プロキシ負荷分散のコンセプトをご覧ください。TCP プロキシ ロードバランサを構成するには、TCP プロキシ負荷分散の設定をご覧ください。

ネットワーク ロードバランサ

ネットワーク ロードバランサは、TCP または UDP のトラフィックを 1 つのリージョン内のバックエンド VM 間で分散させます。プレミアムとスタンダードの両方の階層に対応しています。ネットワーク ロードバランサは、リージョン外部転送ルールとリージョン外部 IPv4 アドレスを使用します(これはどのネットワーク サービス階層でも同じです)。リージョン外部 IP アドレスには、インターネット上のどこからでもアクセスできます。

リージョン外部転送ルールは、ロードバランサのターゲット プールを指し示します。

ネットワーク転送ルール(クリックして拡大)
ネットワーク転送ルール(クリックして拡大)

ネットワーク負荷分散を異なるリージョンで使用するには、各リージョンにネットワーク ロードバランサを作成する必要があります。これはどの階層でも同じです。次の図は、3 つの異なるリージョンで 3 つのロードバランサを使用したネットワーク負荷分散を示しています。各ロードバランサには、それぞれに個別のリージョン外部 IPv4 アドレスを持つ個別のリージョン外部転送ルールがあります。

3 つのリージョン バックエンドと 3 つの転送ルール(クリックして拡大)
ネットワーク負荷分散の例(クリックして拡大)

ネットワーク ロードバランサの詳細については、ネットワーク負荷分散のコンセプトをご覧ください。ネットワーク ロードバランサを構成するには、ネットワーク負荷分散の設定をご覧ください。

転送ルールの特性

ネットワーク階層がロードバランサに与える影響

ネットワーク負荷分散は、ネットワーク階層に関係なく常にリージョンごとです。

プレミアム階層の HTTP(S) ロードバランサ、TCP プロキシ ロードバランサ、SSL プロキシ ロードバランサはグローバルです。これらの転送ルール、IP アドレス、バックエンド サービスはグローバルです。スタンダード階層では、これらのロードバランサは事実上リージョンごとになります。バックエンド サービスはグローバルですが、転送ルールと IP アドレスはリージョンごとになります。

内部 TCP / UDP 負荷分散は常にリージョンごとであり、常にプレミアム階層です。

IP アドレスの仕様

次の表は、負荷分散スキームと転送ルールのターゲットに基づく有効なアドレス構成をまとめたものです。

スキーム ターゲット アドレスの種類 アドレスのスコープ アドレスの階層 予約可能アドレス 注記
EXTERNAL ターゲット HTTP プロキシ
ターゲット HTTPS プロキシ
ターゲット SSL プロキシ
ターゲット TCP プロキシ
外部 リージョンまたはグローバル(転送ルールに一致) プレミアム階層では、グローバル外部 IP アドレスとグローバル外部転送ルールが必要です。

スタンダード階層では、リージョン外部 IP アドレスとリージョン外部転送ルールが必要です。
○(省略可) IPv6 はグローバル外部アドレス(プレミアム階層)でのみ使用できます。
EXTERNAL ターゲット プール 外部 リージョン スタンダードまたはプレミアム IPv6 はサポートされません。
EXTERNAL 従来の Cloud VPN のドキュメントをご覧ください。 外部 リージョン Cloud VPN にはネットワーク階層がありません。 ○(必須) IPv6 はサポートされません。
INTERNAL バックエンド サービス 内部 リージョン プレミアム ○(省略可) IP アドレスは、関連付けられたサブネットのプライマリ IP 範囲から指定する必要があります。
INTERNAL_MANAGED ターゲット HTTP プロキシ
ターゲット HTTPS プロキシ
内部 リージョン プレミアム ○(省略可) IP アドレスは、関連付けられたサブネットのプライマリ IP 範囲から指定する必要があります。
INTERNAL_SELF_MANAGED ターゲット HTTP プロキシ
ターゲット HTTPS プロキシ
内部 グローバル 該当なし × 0.0.0.0、127.0.0.1、または任意の RFC 1918 アドレスを使用できます。

ポートの仕様

次の表は、負荷分散スキームと転送ルールのターゲットに基づく有効なポート構成をまとめたものです。

スキーム ターゲット ポート指定が必須か ポート指定なしでの動作 ポートの要件
EXTERNAL ターゲット HTTP プロキシ はい なし 80、8080
EXTERNAL ターゲット HTTPS プロキシ はい なし 443
EXTERNAL ターゲット SSL プロキシ はい なし 25、43、110、143、195、443、465、587、700、993、995、1688、1883、5222
EXTERNAL ターゲット TCP プロキシ はい なし 25、43、110、143、195、443、465、587、700、993、995、1688、1883、5222
EXTERNAL ターゲット VPN ゲートウェイ はい なし 500、4500
EXTERNAL ターゲット プール いいえ 全ポート
(1~65535)が転送されます
連続している必要があります。
INTERNAL バックエンド サービス はい なし 最大 5 個(連続か不連続かを問いません)、または ALL を指定できます。
INTERNAL_MANAGED ターゲット HTTP プロキシ
ターゲット HTTPS プロキシ
はい なし 80 または 8080 のいずれか
443
INTERNAL_SELF_MANAGED ターゲット HTTP プロキシ
ターゲット HTTPS プロキシ
はい なし 値を 1 つだけ指定する必要があります。

API と gcloud のリファレンス

REST API で転送ルールを操作する場合に使用できるプロパティとメソッドについては、以下をご覧ください。

gcloud コマンドライン ツールについては以下をご覧ください。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...