共通の IP アドレスを持つ内部 TCP/UDP 負荷分散と転送ルール

Google Cloud 内部 TCP / UDP 負荷分散はリージョン単位のロードバランサであり、内部仮想マシン(VM)のインスタンスのみにアクセス可能な内部負荷分散 IP アドレスの背後でサービスの実行とスケーリングを行うことができます。

内部 TCP/UDP ロードバランサに関する一般的な情報については、概要ページをご覧ください。

このページでは、同じ IP アドレスで複数の転送ルールを使用する方法について説明します。

概要

共通の内部 IP アドレスを持つ内部転送ルールでは、次のことができます。

  • 同じまたは異なるプロトコルを使用する
  • 同じまたは異なる特定のポートのセットまたは --ports=ALL オプションを使用する
  • 共通のバックエンド サービス(単一のロードバランサ)または複数のバックエンド サービス(同じ IP アドレスを共有する複数のロードバランサ)を参照する

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

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

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

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

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

複数の転送ルールが必要な場合は、次の式を使用して、必要な転送ルールの数を計算します。

⌈total number of ports / 5⌉
ここで、⌈⌉ は、天井(最小の整数)関数であり、切り上げを意味します

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

26 / 5 = 5 with a remainder of 1

目的のフロントエンド構成 必要な転送ルールの数 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 つの転送ルール ×(5 つ以下のポートの場合

○(6 つ以上のポートの場合)
--ports を最大 5 つの連続または非連続のポート番号のセットに設定

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

2 つの内部 TCP/UDP ロードバランサがある場合、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 つの転送ルール(1 つは TCP 用、1 つは 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 つの連続または非連続のポート番号のセットに設定

使用例

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

  • 以下を持つ異なる転送ルール

    • 同じ IP アドレス
    • 異なるプロトコル
    • 個別のバックエンド サービスを指す
    • 各バックエンド サービスのプロトコルが、対応する転送ルールのプロトコルと一致する
    異なる転送ルール、同じ IP アドレス、異なるプロトコル / ポート(クリックして拡大)
    異なる転送ルール、同じ IP アドレス、異なるプロトコル / ポート(クリックして拡大)
  • 以下を持つ異なる転送ルール

    • 同じ IP アドレス
    • 同じプロトコル
    • 各転送ルールの番号付きポートの異なる特定のセット

    この構成オプションは、すべてのポートを指定する単一の転送ルールを作成する代わりになります。

    異なる転送ルール、同じ IP アドレス、同じプロトコル、5 つ以上の番号付きポート(クリックして拡大)
    異なる転送ルール、同じ IP アドレス、同じプロトコル、5 つ以上の番号付きポート(クリックして拡大)

構成

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

設定例については、同じ IP アドレスでの転送ルールの設定をご覧ください。