共通の IP アドレスを使用する内部パススルー ネットワーク ロードバランサの転送ルール

内部パススルー ネットワーク ロードバランサはリージョンのロードバランサであり、内部仮想マシン(VM)のインスタンスにのみアクセス可能な内部 IP アドレスの背後で、サービスの実行とスケーリングを行うことができます。

このページでは、同じ IP アドレスを持つ複数の転送ルールの使用について説明します。内部パススルー ネットワーク ロードバランサの概要については、内部パススルー ネットワーク ロードバランサの概要をご覧ください。

内部転送ルールを使用すると、最大 10 個の転送ルール間で共有内部 IP アドレスを使用できます。転送ルールのプロトコルに TCP または UDP を使用し、転送ルールに最大 5 つのポートを割り当てることができます。または、--ports=ALL を指定して、すべてのポートを使用することもできます。L3_DEFAULT プロトコルを使用する場合は、--ports=ALL オプションを指定して、すべてのポートを使用する必要があります。

プロトコルとポートの一意の組み合わせを使用すると、次のことができます。

  • TCP プロトコルを使用して、転送ルールごとに 50 個の一意の TCP ポートを作成します。

    TCP プロトコルとすべてのポートを使用するように転送ルールが構成されている場合、TCP プロトコルを使用する他の転送ルールは、同じ共有 IP アドレスを使用できません。

  • UDP プロトコルを使用して、転送ルールごとに 50 個の一意の UDP ポートを作成します。

    UDP プロトコルとすべてのポートを使用するように転送ルールが構成されている場合、UDP プロトコルを使用する他の転送ルールは、同じ共有 IP アドレスを使用できません。

  • 各転送ルールで TCP または UDP プロトコルを使用し、TCP ポートと UDP ポートの一意の組み合わせを 50 個作成します。

  • 共通のバックエンド サービス(単一のロードバランサ)または複数のバックエンド サービス(同じ IP アドレスを共有する複数のロードバランサ)を参照します。

  • L3_DEFAULT プロトコルで転送ルールを構成する場合は、すべてのポートを使用します。1 つの IP アドレスに対して設定できる L3_DEFAULT 転送ルールは 1 つのみです。この転送ルールは、必要に応じて他の TCP および UDP 転送ルールと共有できます。

転送ルールに異なるプロトコルがある場合は、2 つの異なるバックエンド サービスも必要です。単一の内部パススルー ネットワーク ロードバランサは、これらのプロトコルの 1 つだけを使用する単一のバックエンド サービスを備えているため、TCP または UDP トラフィックの両方ではなく、いずれかで機能します。

転送ルールの意思決定マトリックス

次の表を使用して、デプロイを設計します。

単一の内部パススルー ネットワーク ロードバランサ

1 つのバックエンド サービスは、TCP と UDP の両方ではなく、いずれかをサポートします。

複数の転送ルールが必要な場合は、式 ⌈total number of ports / 5⌉ を使用して必要な転送ルールの数を計算します。ここで、⌈⌉ は、天井(最小の整数)関数であり、切り上げを意味します。

たとえば、ロードバランサの 1 つの IP アドレスに 26 個の TCP ポートが必要だとします。--ports=ALL を使用して単一の転送ルールを作成しない場合は、26 / 5 = 5 with a remainder of 1 のため、6 つの転送ルールを作成する必要があります。

目的のフロントエンド構成 必要な転送ルール数 IP アドレスに必要な --purpose=SHARED_LOADBALANCER_VIP フラグ 転送ルールのポート指定
1 つの IP アドレス、すべてのポート上のトラフィック 1 つの転送ルール × --ports=ALL
1 つの IP アドレス、特定のポート上のトラフィック

ポートが 5 つ以下の場合:
1 つの転送ルール

ポートが 6 つ以上の場合:
複数の転送ルール

ポートが 5 つ以下の場合: ×

ポートが 6 つ以上の場合: ○

--ports を最大 5 つの連続または非連続のポート番号のセットに設定します。
複数の IP アドレス、すべてのポート上のトラフィック IP アドレスごとに 1 つの転送ルール × --ports=ALL
複数の IP アドレス、特定のポート上のトラフィック IP アドレスごとに 1 つ以上の転送ルール

IP アドレスあたり 5 つ以下のポートを使用する場合: ×

IP アドレスあたり 6 つ以上のポートを使用する場合: ○

--ports を最大 5 つの連続または非連続のポート番号のセットに設定します。

2 つの内部パススルー ネットワーク ロードバランサ

2 つの内部パススルー ネットワーク ロードバランサがある場合、2 つのバックエンド サービスを使用できます。その場合、1 つのバックエンド サービスは TCP トラフィック用、もう 1 つは UDP トラフィック用です。

複数の転送ルールが必要な場合は、次の式を使用して必要な転送ルールの数を計算します。ここで、⌈⌉ は、天井(最小の整数)関数であり、切り上げを意味します。

 ⌈total number of TCP ports / 5⌉

 ⌈total number of UDP ports / 5⌉

たとえば、26 個の TCP ポートと 12 個の UDP ポートが必要だとします。次の式により、9 つの転送ルールを作成する必要があります。

  • 26 / 5 = 5 with a remainder of 1。このため TCP ポートには 6 つの転送ルールが必要です。
  • 12 / 5 = 2 with a remainder of 2。このため、UDP ポートには 3 つの転送ルールが必要です。
目的のフロントエンド構成 必要な転送ルール数 IP アドレスに必要な --purpose=SHARED_LOADBALANCER_VIP フラグ 転送ルールのポート指定
1 つの IP アドレス、すべてのポート上のトラフィック 2 つの転送ルール(TCP 用と UDP 用) ○(TCP 転送ルールと UDP 転送ルールは単一の IP アドレスを共有する必要があるため) --ports=ALL
1 つの IP アドレス、特定のポート上のトラフィック

5 つ以下の TCP ポートと 5 つ以下の UDP ポート: 2 つの転送ルール(1 つは TCP 用、1 つは UDP 用)

6 つ以上の TCP ポートまたは UDP ポート: 複数の転送ルール。各転送ルールは 1 つのプロトコルと 5 つ以下のポートをサポート

--ports を最大 5 つの連続または非連続のポート番号のセットに設定します。
複数の IP アドレス、すべてのポート上のトラフィック、TCP または UDP

2 つ以上の転送ルール(1 つは 1 つの IP アドレスを使用する TCP 用と、もう 1 つは別の IP アドレスを使用する UDP 用)

3 つ以上の IP アドレスが必要な場合は 3 つ以上の転送ルール

× --ports=ALL
複数の IP アドレス、特定のポート上のトラフィック、TCP または UDP

2 つ以上の転送ルール(1 つは 1 つの IP アドレスを使用する TCP 用と、もう 1 つは別の IP アドレスを使用する UDP 用)

次のいずれかを必要とする場合は、3 つ以上の転送ルールが必要です。

  • 3 つ以上の IP アドレス
  • IP アドレスの TCP トラフィック用に 5 個を超えるポート、または IP アドレスの UDP トラフィック用に 5 個を超えるポート

5 つ以下の TCP ポートを持つ 1 つの IP アドレスと 5 つ以下の UDP ポートを持つ 1 つの IP アドレスの場合: ×

6 つ以上の TCP ポートまたは 6 つ以上の UDP ポートの場合: ○

--ports を最大 5 つの連続または非連続のポート番号のセットに設定します。

制限事項

  • 同じ IP アドレスとプロトコルを含む 2 つ以上の転送ルールでポートを重複させることはできません。例:
    • TCP のプロトコルとポート 80 を使用して転送ルールを構成する場合、そのプロトコルとポートを処理する別の転送ルールを構成することはできません。たとえば、TCP ポート 808190 を処理する別の転送ルールを作成することはできません。
    • TCP とポート 80808090 の転送ルールを構成する場合、TCP とすべてのポートを使用する別の転送ルールを構成することはできません。
  • --purpose=SHARED_LOADBALANCER_VIP フラグを使用して 2 つ以上の転送ルールが同じ IP アドレスを共有する場合、プロトコルを L3_DEFAULT に設定できるのはそのうちの 1 つだけです。

ユースケース

多くの異なるタイプのデプロイが可能です。次の例では、2 つのロードバランサの特定のポートでトラフィックを受け入れる 1 つの IP アドレスを使用します。

例 1

この例では、次のパラメータを使用してさまざまな転送ルールを使用します。

  • 同じ IP アドレス(10.1.1.1
  • さまざまなプロトコル
  • 各転送ルールが参照する別々のバックエンド サービス
  • 一致するプロトコル: 各バックエンド サービスのプロトコルは、対応する転送ルールのプロトコルと一致します。
異なる転送ルール、同じ IP アドレス、異なるプロトコルとポート。
異なる転送ルール、同じ IP アドレス、異なるプロトコルとポート(クリックして拡大)

例 2

この例では、次のパラメータを使用してさまざまな転送ルールを使用します。

  • 同じ IPv4 アドレス(10.1.1.1
  • 同じプロトコル
  • 転送ルールごとに番号が付いた異なるポートのセット
異なる転送ルール、同じ IP アドレス、同じプロトコル、6 個以上の番号付きポート。
異なる転送ルール、同じ IP アドレス、同じプロトコル、6 個以上の番号付きポート(クリックして拡大)

構成手順

次の両方を行うと、同じ IP アドレスを持つ複数の内部転送ルールを作成できます。

  1. 使用する転送ルールに静的(予約済み)内部 IP アドレスを作成する
  2. 共有する内部 IP アドレスの --purpose フラグを値 SHARED_LOADBALANCER_VIP に設定する。

設定例については、2 つの転送ルールを使用して複数のポートでトラフィックを受信するをご覧ください。