内部 TCP/UDP 負荷分散と接続されたネットワーク

このページでは、接続されたネットワークから Virtual Private Cloud(VPC)ネットワーク内の内部ロードバランサにアクセスするシナリオについて説明します。このページの情報を読む前に、次のガイドでコンセプトを理解しておく必要があります。

VPC ネットワーク ピアリングの使用

VPC ネットワーク ピアリングを使用して VPC ネットワークを別のネットワークに接続すると、Google Cloud はネットワーク間のサブネット ルートを共有します。このサブネット ルートによって、ピア ネットワークからのトラフィックはネットワークの内部ロードバランサに到達できます。次の条件に当てはまる場合、アクセスが許可されます。

  • 内部 TCP/UDP ロードバランサの場合、ピア ネットワーク内のクライアント VM からのトラフィックを許可するように、上り(内向き)ファイアウォール ルールを作成する必要があります。VPC ネットワーク ピアリングを使用する場合、Google Cloud のファイアウォール ルールはネットワーク間で共有されません。
  • ピア ネットワークのクライアント仮想マシン(VM)インスタンスは内部ロードバランサと同じリージョンに存在します。ただし、内部 TCP/UDP ロードバランサを使用し、グローバル アクセスを構成する場合は異なります。グローバル アクセスを構成すると、ピア VPC ネットワークの任意のリージョンのクライアント VM インスタンスが内部 TCP/UDP ロードバランサにアクセスできます。内部 HTTP(S) 負荷分散ではグローバル アクセスはサポートされません。

VPC ネットワーク ピアリングを使用して一部の内部 TCP/UDP ロードバランサまたは内部 HTTP(S) ロードバランサのみを共有することはできません。内部ロードバランサはすべて自動的に共有されます。ロードバランサのバックエンドへのアクセスは、次の方法で制限できます。

  • 内部 TCP/UDP ロードバランサの場合、バックエンド VM インスタンスに適用される上り(内向き)ファイアウォール ルールを使用できます。

  • 内部 HTTP(S) ロードバランサの場合、HTTP ヘッダー(たとえば X-Forwarded-For)でアクセスを制御するようにバックエンド VM またはエンドポイントを構成できます。

Cloud VPN と Cloud Interconnect の使用

内部ロードバランサには、Dedicated Interconnect 接続または Partner InterconnectCloud VPN トンネルか相互接続のアタッチメント(VLAN)経由で接続されているピア ネットワークからアクセスできます。ピア ネットワークは、オンプレミス ネットワーク、別の Google Cloud VPC ネットワーク、別のクラウド プロバイダがホストする仮想ネットワークのいずれでもかまいません。

Cloud VPN トンネルを介したアクセス

次の条件をすべて満たしている場合、Cloud VPN トンネルを介して内部ロードバランサにアクセスできます。

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

  • Cloud VPN ゲートウェイとトンネルの両方が、内部ロードバランサのコンポーネントと同じリージョンにある(内部 TCP/UDP ロードバランサでグローバル アクセスを構成している場合は除く)。

  • ルートにより、ピア(クライアント)ネットワークに戻る下り(外向き)トラフィックのパスが提供されている。動的ルーティングを使用した Cloud VPN トンネルの場合、ロードバランサで Cloud VPN ネットワークの動的ルーティング モードを使用します。動的ルーティング モードにより、バックエンドで使用可能なカスタム動的ルートが決まります。

  • 内部 TCP/UDP 負荷分散の場合、オンプレミス クライアントがロードバランサのバックエンド VM と通信できるようにファイアウォール ルールを構成している。

ピア ネットワーク

ピア ネットワークには、内部ロードバランサが定義されているサブネットにルーティングされる Cloud VPN トンネルが 1 つ以上必要です。

ピア ネットワークが別の Google Cloud VPC ネットワークの場合:

  • ピア ネットワークの Cloud VPN ゲートウェイは任意のリージョンに配置できます。

  • 動的ルーティングを使用する Cloud VPN トンネルの場合、VPC ネットワークの動的ルーティング モードにより、各リージョンのクライアントが使用できるルートが決まります。すべてのリージョンのクライアントに一貫したカスタム動的ルートセットを提供するには、グローバル動的ルーティング モードを使用します。

次の図は、Cloud VPN ゲートウェイとその関連トンネルを介して内部ロードバランサにアクセスする場合の主要なコンセプトの関係を示しています。Cloud VPC は、Cloud VPN トンネルを使用して Google Cloud VPC ネットワークとオンプレミス ネットワークを安全に接続します。

内部 TCP/UDP 負荷分散と Cloud VPN(クリックして拡大)
内部負荷分散と Cloud VPN(クリックして拡大)

この例に関連する次の構成要素に注意してください。

  • lb-network では、動的ルーティングを使用する Cloud VPN トンネルが構成されています。VPN トンネル、ゲートウェイ、Cloud Router はすべて us-west1 にあります。同じリージョンに、内部ロードバランサのコンポーネントが配置されています。
  • インスタンス グループの ig-aig-c のバックエンド VM に適用される上り(内向き)の許可ファイアウォール ルールが構成されています。これらのグループは、VPC ネットワークの IP アドレスとオンプレミス ネットワーク(10.1.2.0/24192.168.1.0/24)からトラフィックを受信できます。下り(外向き)拒否のファイアウォール ルールは作成されていないため、暗黙の下り(外向き)許可ルールが適用されている。
  • 192.168.1.0/24 などのオンプレミス ネットワーク内のクライアントから内部ロードバランサの IP アドレス(10.1.2.99)に送信されたパケットは、セッション アフィニティの構成に基づいて、vm-a2 などの正常なバックエンド VM に直接配信される。
  • バックエンド VM(vm-a2 など)からの返信は、VPN トンネルを介してオンプレミス クライアントに送られる。

Cloud VPN のトラブルシューティングについては、Cloud VPN のトラブルシューティングをご覧ください。

Cloud Interconnect を介したアクセス

ロードバランサの VPC ネットワークに接続しているオンプレミスのピア ネットワークから内部ロードバランサにアクセスするには、内部ロードバランサのネットワークが次の条件をすべて満たしている必要があります。

  • 相互接続のアタッチメント(VLAN)とその Cloud Router の両方がロードバランサのコンポーネントと同じリージョンに存在している(ただし、内部 TCP / UDP ロードバランサでグローバル アクセスを構成している場合は除く)。

  • バックエンド VM からオンプレミス クライアントへの応答のリターンパスを提供する適切なルートが、オンプレミス ルーターによって共有されている。Dedicated Interconnect と Partner Interconnect の両方の相互接続のアタッチメント(VLAN)が Cloud Router を使用しています。学習するカスタム動的ルートのセットは、ロードバランサのネットワークの動的ルーティング モードによって異なります。

  • 内部 TCP/UDP 負荷分散の場合、オンプレミス クライアントがロードバランサのバックエンド VM と通信できるようにファイアウォール ルールを構成している。

オンプレミス ネットワークでは、内部ロードバランサが定義されているサブネットを宛先に持つ適切なルートが 1 つ以上の相互接続のアタッチメント(VLAN)に存在している必要があります。下り(外向き)ファイアウォール ルールも適切に構成する必要があります。

内部 TCP/UDP 負荷分散のグローバル アクセス

内部 TCP/UDP 負荷分散にグローバル アクセスを構成する場合、次のリソースは任意のリージョンに配置できます。

  • Cloud Router
  • Cloud VPN ゲートウェイとトンネル
  • Cloud Interconnect のアタッチメント(VLAN)

図の中で:

  • Cloud Router は europe-west1 リージョンにあります。
  • 内部 TCP / UDP ロードバランサのフロントエンドとバックエンドは us-east1 リージョンにあります。
  • Cloud Router はオンプレミス VPN ルーターとピアリングします。
  • Border Gateway Protocol(BGP)ピアリング セッションは、Direct Peering または Partner Interconnect を使用する Cloud VPN または Cloud Interconnect 経由になります。
グローバル アクセスを構成した内部 TCP/UDP 負荷分散(クリックして拡大)
グローバル アクセスを構成した内部 TCP/UDP 負荷分散(クリックして拡大)

VPC ネットワークの動的ルーティング モードglobal に設定されています。europe-west1 の Cloud Router は、内部 TCP/UDP ロードバランサの VPC ネットワークの任意のリージョンにあるサブネットにサブネット ルートをアドバタイズします。

複数の下り(外向き)パス

本番環境では、複数の Cloud VPN トンネルまたは Cloud Interconnect のアタッチメント(VLAN)を使用して冗長性を確保する必要があります。ここでは、複数のトンネルまたは VLAN を使用する場合の要件について説明します。

次の図では、2 つの Cloud VPN トンネルが lb-network とオンプレミス ネットワークを接続しています。ここでは Cloud VPN トンネルを使用していますが、Cloud Interconnect にも同じ原理が当てはまります。

内部 TCP/UDP 負荷分散と複数の Cloud VPN トンネル(クリックして拡大)
内部負荷分散と複数の Cloud VPN トンネル(クリックして拡大)

各トンネルまたは Cloud Interconnect のアタッチメント(VLAN)に内部ロードバランサと同じリージョンを構成する必要があります(内部 TCP/UDP 負荷分散でグローバル アクセスを有効にしている場合を除く)。複数のトンネルまたは VLAN を使用することで、帯域幅を増やすことができます。また、冗長性のスタンバイパスとしても機能します。

次の点に注意してください。

  • オンプレミス ネットワークに同じ優先度のルートが 2 つあり、それぞれの宛先が 10.1.2.0/24 で、ネクストホップとして内部ロードバランサと同じリージョンの異なる VPN トンネルが設定されている場合、Equal-Cost Multipath(ECMP)を使用することで、オンプレミス ネットワーク(192.168.1.0/24)からロードバランサにトラフィックを送信できます。
  • パケットが VPC ネットワークに配信されると、構成したセッション アフィニティに従って内部ロードバランサがバックエンド VM にトラフィックを分散します。
  • lb-network に 2 つのルートが存在し、それぞれに 192.168.1.0/24 の宛先が含まれていて、ネクストホップには異なる VPN トンネルが指定されている場合、ネットワーク内のルートの優先順位に従って、バックエンド VM からのレスポンスを各トンネルを介して送信できます。ルートの優先順位が異なる場合は、一方のトンネルが他方のトンネルのバックアップとして機能します。同じ優先順位を使用する場合は、ECMP を使用してレスポンスが送られます。
  • バックエンド VM からの応答(vm-a2)は、適切なトンネルを介してオンプレミス クライアントに直接送られます。ルートや VPN トンネルが変更された場合、lb-network の視点から見て、下り(外向き)のトラフィックが別のトンネルを使用することがあります。そのような場合に進行中の接続が中断されると、TCP セッションがリセットされる可能性があります。

次のステップ