ハイブリッド接続ネットワーク エンドポイント グループの概要

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Cloud Load Balancing は、オンプレミス データセンターや他のパブリック クラウドなどの Google Cloud の外部に拡張され、ハイブリッド接続で到達可能なエンドポイントへのトラフィックをロード バランシングできます。

ハイブリッド戦略は、変化する市場の要求に応じて、アプリケーションを段階的にモダナイズするための実際的なソリューションです。これは、最新のクラウドベースのソリューションに移行する際の一時的なデプロイメントの場合もあれば、組織の IT インフラストラクチャの恒久的な設備の場合もあります。

ハイブリッド ロード バランシングを設定すると、Google Cloud の外部にある既存のインフラストラクチャで実行されているサービスでも Cloud Load Balancing のネットワーク機能のメリットを活用できます。

ハイブリッド ロード バランシングは、次の Google Cloud ロードバランサでサポートされています。

ユースケース: オンプレミスまたは別のクラウドにトラフィックを転送する

この機能の最も単純なユースケースは、Google Cloud ロードバランサから Google Cloud、オンプレミスの場所、または別のクラウドにトラフィックを転送することです。クライアントは、公共のインターネット、Google Cloud 内、またはオンプレミス クライアントからのトラフィックを送信できます。

公開クライアント

HTTP(S) ロード バランシングを使用すると、外部クライアントから Google Cloud、オンプレミス、または別のクラウドのバックエンドにトラフィックを転送できます。HTTP(S) ロード バランシングを使用すると、オンプレミスのサービスで付加価値の高いネットワーク機能を使用できます。

  • グローバル外部 HTTP(S) ロードバランサとグローバル外部 HTTP(S) ロードバランサ(従来)を使用すると、次のことができます。

    • Google のグローバル エッジ インフラストラクチャを使用して、ユーザーに近い場所でユーザー接続を終端することで、レイテンシを短縮する。
    • Google Cloud Armor を使用してサービスを保護する。これは、外部 HTTP(S) ロードバランサ経由でアクセスするすべてのサービスで利用できるエッジ DDoS 防御 / WAF セキュリティ プロダクトです。
    • サービスで Cloud CDN を使用して配信を最適化できるようにする。Cloud CDN を使用すると、ユーザーの近くにコンテンツをキャッシュ保存できます。Cloud CDN は、キャッシュの無効化や Cloud CDN 署名付き URL などの機能を提供します。
    • Google マネージド SSL 証明書を使用する。他の Google Cloud プロダクトですでに使用している証明書と秘密鍵を再利用できます。これにより、証明書を個別に管理する必要がなくなります。

    次の図は、外部 HTTP(S) ロードバランサを使用したハイブリッド デプロイメントを示しています。

    グローバル外部 HTTP(S) ロードバランサとのハイブリッド接続(クリックして拡大)
    グローバル外部 HTTP(S) ロードバランサとのハイブリッド接続(クリックして拡大)

    この図では、公共のインターネット上のクライアントからのトラフィックが、外部 HTTP(S) ロードバランサなどの Google Cloud ロードバランサ経由で非公開のオンプレミス ネットワークまたはクラウド ネットワークに送信されます。トラフィックがロードバランサに到達すると、Google Cloud Armor DDoS 対策や Identity-Aware Proxy(IAP)のユーザー認証などのネットワーク エッジサービスを適用できます。

  • リージョン外部 HTTP(S) ロードバランサでは、ロードバランサのリソースと同じ Google Cloud ゾーンまたはリージョン内にあるエンドポイントに外部トラフィックをルーティングできます。このロードバランサは、1 つの位置情報のみからコンテンツを配信する場合(コンプライアンスで規制されている場合など)や、スタンダード ネットワーク サービス ティアが必要な場合に使用します。

リクエストの転送方法は URL マップの構成(宛先が Google Cloud バックエンドかオンプレミス / クラウド エンドポイントか)によって異なります。URL マップに応じて、ロードバランサはリクエストのバックエンド サービスを選択します。選択したバックエンド サービスが、ハイブリッド接続 NEG(Google Cloud 以外のエンドポイントでのみ使用)で構成されている場合、ロードバランサは、Cloud VPN または Cloud Interconnect 間のトラフィックを目的の宛先に転送します。

内部クライアント(Google Cloud またはオンプレミス)

Google Cloud 内のクライアントにハイブリッド デプロイを設定することもできます。この場合、クライアント トラフィックは Google Cloud VPC ネットワーク、オンプレミス ネットワーク、または別のクラウドから Google Cloud、オンプレミス、別のクラウドにあるエンドポイントに送信されます。内部 HTTP(S) ロードバランサはリージョン ロードバランサです。つまり、ロードバランサのリソースと同じ Google Cloud ゾーンまたはリージョン内のエンドポイントにのみトラフィックをルーティングできます。

次の図は、内部 HTTP(S) ロードバランサを使用したハイブリッド デプロイメントを示しています。

内部 HTTP(S) ロード バランシングによるハイブリッド接続(クリックして拡大)
内部 HTTP(S) ロード バランシングによるハイブリッド接続(クリックして拡大)

ユースケース: クラウドに移行する

既存のサービスをクラウドに移行してオンプレミスの容量を解放し、オンプレミスのインフラストラクチャを維持する費用と負担を減らすことができます。現在のオンプレミス サービスと対応する Google Cloud サービス エンドポイントの両方にトラフィックを転送できるように、一時的にハイブリッド デプロイメントを設定できます。

次の図に、内部 HTTP(S) ロード バランシングを使用した例を示します。

Google Cloud への移行(クリックして拡大)
Google Cloud への移行(クリックして拡大)

内部 HTTP(S) ロード バランシングを使用して内部クライアントを処理する場合は、重み付けベースのトラフィック分割を使用して 2 つのサービスにトラフィックを分割するように Google Cloud ロードバランサを構成できます。トラフィック分割を使用すると、トラフィックの 0% を Google Cloud サービスに送信し、100% をオンプレミス サービスに送信することから始めることが可能です。その後、Google Cloud サービス宛てのトラフィックの割合を徐々に増やしていきます。最終的には、トラフィックの 100% を Google Cloud サービスに送信し、オンプレミス サービスを廃止します。

ハイブリッド アーキテクチャ

このセクションでは、ロード バランシング アーキテクチャと、ハイブリッド ロード バランシングのデプロイメントを構成するために必要なリソースについて説明します。

オンプレミスなどのクラウド サービスは、他の Cloud Load Balancing のバックエンドと同様に動作します。主な違いは、ハイブリッド接続 NEG を使用してサービスのエンドポイントを構成することです。エンドポイントは、Cloud VPN や Cloud Interconnect などのハイブリッド接続を介してクライアントが到達できる有効な IP:port の組み合わせにする必要があります。

次の図は、外部 HTTP(S) ロード バランシングと内部 HTTP(S) ロード バランシングのハイブリッド ロード バランシングを有効にするために必要な Google Cloud リソースを示しています。

グローバル外部 HTTP(S)

ハイブリッド接続用のグローバル外部 HTTP(S) ロードバランサのリソース(クリックして拡大)
ハイブリッド接続用のグローバル外部 HTTP(S) ロードバランサのリソース(クリックして拡大)

リージョン外部 HTTP(S)

ハイブリッド接続用のリージョン外部 HTTP(S) ロードバランサのリソース(クリックして拡大)
ハイブリッド接続用のリージョン外部 HTTP(S) ロードバランサのリソース(クリックして拡大)

内部 HTTP(S)

ハイブリッド接続用の内部 HTTP(S) ロードバランサのリソース(クリックして拡大)
ハイブリッド接続用の内部 HTTP(S) ロードバランサのリソース(クリックして拡大)

内部 TCP プロキシ

ハイブリッド接続用の内部リージョン TCP プロキシ ロードバランサのリソース。
ハイブリッド接続用の内部リージョン TCP プロキシ ロードバランサのリソース(クリックして拡大)

リージョンとグローバル

Cloud Load Balancing のルーティングは、構成されているロードバランサのスコープによって異なります。

外部 HTTP(S) ロードバランサ、外部 TCP プロキシ ロードバランサ、外部 SSL プロキシ ロードバランサこれらのロードバランサは、使用するネットワーク ティアに応じて、グローバル ルーティングまたはリージョン ルーティングのいずれかに構成できます。ハイブリッド接続が構成されているリージョンにロードバランサのハイブリッド NEG バックエンドを作成します。近接ベースのロード バランシングを利用するには、Google Cloud 以外のエンドポイントも適切に構成する必要があります。

内部 HTTP(S) ロードバランサと内部リージョン TCP プロキシ ロードバランサこれらはリージョン ロードバランサです。つまり、ロードバランサと同じリージョン内のエンドポイントにのみトラフィックを転送できます。ロードバランサ コンポーネントは、ハイブリッド接続が構成されているリージョンに構成する必要があります。これらのロードバランサはグローバル アクセスをサポートしていません。このため、ロードバランサにアクセスするクライアントも同じリージョンに存在する必要があります。

たとえば、Cloud VPN ゲートウェイまたは Cloud Interconnect の VLAN アタッチメントが us-central1 に構成されている場合、ロードバランサに必要なリソース(バックエンド サービス、ハイブリッド NEG、転送ルールなど)は us-central1 リージョンに作成する必要あります。ロードバランサにアクセスするクライアントも us-central1 リージョンに存在する必要があります。

ネットワーク接続の要件

ハイブリッド ロード バランシングのデプロイメントを構成する前に、次のリソースを設定する必要があります。

  • Google Cloud VPC ネットワーク。Google Cloud 内で構成された VPC ネットワーク。これは、ハイブリッド ロード バランシング リソース(転送ルール、ターゲット プロキシ、バックエンド サービスなど)が作成されるネットワークです。オンプレミス、他のクラウド、Google Cloud サブネットの IP アドレスと IP アドレス範囲は、重複しないようにする必要があります。IP アドレスが重複する場合、リモート接続よりもサブネット ルートが優先されます。
  • ハイブリッド接続。オンプレミスまたは他のクラウド環境と Google Cloud を接続するには、Cloud Router とともに Cloud Interconnect VLAN アタッチメントまたは Cloud VPN トンネルを使用して、ハイブリッド接続を確立する必要があります。高可用性接続の使用をおすすめします。グローバル動的ルーティングが有効になっている Cloud Router は、BGP を介して特定のエンドポイントを学習し、Google Cloud VPC ネットワークにプログラムします。リージョン動的ルーティングはサポートされていません。静的ルートもサポートされていません。

    Cloud Interconnect / Cloud VPN と Cloud Router は、ハイブリッド ロード バランシングに使用する VPC ネットワークで構成する必要があります。Cloud Router は、オンプレミス環境に次のルートをアドバタイズする必要もあります。
    • Google のヘルスチェック プローブで使用される範囲: 35.191.0.0/16130.211.0.0/22
    • 内部 HTTP(S) ロード バランシングの場合のみ、リージョンのプロキシ専用サブネットの範囲。
  • オンプレミスまたは他のクラウドのネットワーク エンドポイント(IP:Port。オンプレミスまたは他のクラウド環境内で構成され、Cloud Interconnect または Cloud VPN 経由で転送可能な 1 つ以上の IP:Port ネットワーク エンドポイント。IP エンドポイントへのパスが複数ある場合は、VPC ルートの概要Cloud Router の概要で説明されているように動作します。
  • オンプレミスまたは他のクラウド上のファイアウォール ルール。オンプレミスまたは他のクラウド環境で次のファイアウォール ルールを作成する必要があります。
    • Google のヘルスチェック プローブからエンドポイントへのトラフィックを許可する上り(内向き)許可のファイアウォール ルール。外部 HTTP(S) ロードバランサ、内部 HTTP(S) ロードバランサ、外部 TCP プロキシ ロードバランサ、外部 SSL プロキシ ロードバランサの場合、許可される範囲は 35.191.0.0/16130.211.0.0/22 です。これらの範囲は、Cloud Router からオンプレミス ネットワークにもアドバタイズする必要があります。詳細については、プローブの IP 範囲とファイアウォール ルールをご覧ください。
    • ロード バランシングされるトラフィックがエンドポイントに到達することを許可する上り(内向き)許可ファイアウォール ルール。
    • 内部 HTTP(S) ロード バランシングについては、リージョンのプロキシ専用サブネットからのトラフィックが、オンプレミスなどのクラウド環境にあるエンドポイントに到達することを許可するファイアウォール ルールも作成する必要があります。

ロードバランサ コンポーネント

ロードバランサの種類に応じて、スタンダード ティアまたはプレミアム ティアのネットワーク サービスを使用してハイブリッド ロード バランシングのデプロイメントを設定できます。

ハイブリッド ロードバランサには、バックエンド サービス専用の特別な構成が必要です。フロントエンドの構成は他のロードバランサと同じです。また、内部 HTTP(S) ロードバランサには、Envoy プロキシをユーザーに代わって実行するためのプロキシ専用サブネットが必要です。

フロントエンドの構成

ハイブリッド ロード バランシングには特別なフロントエンド構成は必要ありません。転送ルールは、IP アドレス、ポート、プロトコルに基づいてトラフィックをターゲット プロキシに転送するために使用されます。ターゲット プロキシはクライアントからの接続を終端します。

URL マップは、HTTP(S) ロードバランサが適切なバックエンド サービスへのリクエストの URL ベースの転送を設定するために使用します。

これらの各コンポーネントの詳細については、特定のロードバランサの概要にあるアーキテクチャのセクションをご覧ください。

バックエンド サービス

バックエンド サービスは、ロードバランサに構成情報を提供します。ロードバランサは、バックエンド サービスからの情報を使用して、受信トラフィックを接続されている 1 つまたは複数のバックエンドに振り向けます。

ハイブリッド ロード バランシングのデプロイを設定するには、Google Cloud 内と Google Cloud の外部にあるバックエンドを使用してロードバランサを構成します。

  • Google Cloud 以外のバックエンド(オンプレミスまたは他のクラウド)

    Google のハイブリッド接続プロダクト(Cloud VPN または Cloud Interconnect)を使用して到達でき、有効な IP:Port の組み合わせを使用して到達可能な宛先は、ロードバランサのエンドポイントとして構成できます。

    Google Cloud 以外のバックエンドを次のように構成します。

    1. Google Cloud 以外のネットワーク エンドポイントの IP:Port の組み合わせをハイブリッド接続ネットワーク エンドポイント グループ(NEG)に追加します。ハイブリッド接続(Cloud VPN または Cloud Interconnect)を使用して、この IP アドレスとポートに Google Cloud から到達できるようにします。ハイブリッド接続 NEG の場合は、ネットワーク エンドポイント タイプを NON_GCP_PRIVATE_IP_PORT に設定します。
    2. NEG を作成する際に、Google Cloud とオンプレミスまたは他のクラウド環境との間の地理的距離が最短になる Google Cloud ゾーンを指定します。たとえば、ドイツのフランクフルトのオンプレミス環境にサービスをホストする場合、NEG を作成するときに europe-west3-a Google Cloud ゾーンを指定できます。
    3. このハイブリッド接続 NEG をバックエンド サービスのバックエンドとして追加します。

      ハイブリッド接続 NEG には Google Cloud 以外のエンドポイントのみを含める必要があります。内部 TCP / UDP ロードバランサの転送ルール IP アドレスなど、Google Cloud VPC ネットワーク内のリソースのエンドポイントがハイブリッド NEG に含まれている場合、トラフィックはドロップされる可能性があります。次のセクションの指示に従って、Google Cloud エンドポイントを構成します。

  • Google Cloud バックエンド

    Google Cloud エンドポイントを次のように構成します。

    1. Google Cloud バックエンド用に別のバックエンド サービスを作成します。
    2. ハイブリッド接続を設定したリージョン内で、複数のバックエンド(GCE_VM_IP_PORT ゾーン NEG またはインスタンス グループ)を構成します。

その他の注意事項:

  • 各ハイブリッド接続 NEG には、同じタイプのネットワーク エンドポイント(NON_GCP_PRIVATE_IP_PORT)のみを含めることができます。

  • サポートされているバックエンドの組み合わせ:

    • グローバル外部 HTTP(S) ロードバランサの場合、単一のバックエンド サービスを使用して、Google Cloud ベースのバックエンド(GCE_VM_IP_PORT エンドポイントのゾーン NEG を使用)と、オンプレミスまたは他のクラウド バックエンド(NON_GCP_PRIVATE_IP_PORT エンドポイントでハイブリッド接続 NEG を使用)の両方を参照できます。混合バックエンド タイプの組み合わせは、これ以外は許可されません。
  • バックエンド サービスのロード バランシング スキームは、グローバル外部 HTTP(S) ロードバランサとリージョン外部 HTTP(S) ロードバランサの場合は EXTERNAL_MANAGED、グローバル外部 HTTP(S) ロードバランサ(従来)、外部 TCP プロキシ ロードバランサ、外部 SSL プロキシ ロードバランサの場合は EXTERNAL、内部 HTTP(S) ロードバランサと内部リージョン TCP プロキシ ロードバランサの場合は INTERNAL_MANAGED にする必要があります。INTERNAL_SELF_MANAGED は、ハイブリッド接続 NEG を使用した Traffic Director のマルチ環境デプロイでサポートされます。

  • バックエンド サービス プロトコルは、HTTP(S) ロードバランサの場合は HTTPHTTPSHTTP2 のいずれか、外部 TCP プロキシ ロードバランサ、内部リージョン TCP プロキシ ロードバランサ、外部 SSL プロキシ ロードバランサの場合は、TCP または SSL にする必要があります。各ロードバランサでサポートされているバックエンド サービス プロトコルのリストについては、ロードバランサからバックエンドへのプロトコルをご覧ください。

  • ハイブリッド NEG バックエンドの分散モードは、外部および内部 HTTP(S) ロードバランサの場合は RATE、内部リージョン TCP プロキシ ロードバランサと外部 TCP / SSL プロキシ ロードバランサの場合は CONNECTION である必要があります。分散モードの詳細については、バックエンド サービスの概要をご覧ください。

  • ネットワーク エンドポイントを追加するには、バックエンド サービスに接続しているバックエンドを更新します。

ヘルスチェック

各バックエンド サービスは、バックエンドの状態を確認するヘルスチェックに関連付ける必要があります。ヘルスチェック プローブが正常に機能するには、Google のプローブ IP 範囲130.211.0.0/2235.191.0.0/16)からのトラフィックがエンドポイントに到達できるようにファイアウォール ルールを作成する必要があります。

Google Cloud の外部にあるバックエンドの場合は、オンプレミスと他のクラウド ネットワークにファイアウォール ルールを作成します。詳しくは、ネットワーク管理者に相談してください。ハイブリッド接続に使用する Cloud Router では、Google のヘルスチェック プローブで使用される範囲もアドバタイズする必要があります。アドバタイズされる範囲は 35.191.0.0/16130.211.0.0/22 です。

Google Cloud 内のバックエンドの場合は、こちらの例のように、Google Cloud でファイアウォール ルールを作成します。

制限事項

  • ハイブリッド接続 NEG は、Google Cloud コンソールではサポートされていません。ハイブリッド接続 NEG を作成、削除、管理するには、Google Cloud CLI または REST API を使用する必要があります。
  • ハイブリッド接続に使用される Cloud Router は、グローバル動的ルーティングで有効にする必要があります。リージョン動的ルーティングと静的ルートはサポートされません。
  • 内部 HTTP(S)ロード バランシングとハイブリッド接続は、同じリージョンで構成する必要があります。複数のリージョンで構成されている場合、バックエンドが正常と表示されることがありますが、クライアントのリクエストはバックエンドに転送されません。
  • こちらに記載されているロードバランサからバックエンドへの暗号化接続の考慮事項は、ハイブリッド接続 NEG で構成された Google Cloud 以外のバックエンド エンドポイントにも適用されます。

    ハイブリッド接続構成のセキュリティ設定も確認してください。現在、デフォルトでは HA Cloud VPN 接続は暗号化されます(IPSec)。デフォルトでは Cloud Interconnect 接続は暗号化されません。詳細については、Google Cloud での転送データの暗号化のホワイトペーパーをご覧ください。

ロギング

ハイブリッド NEG のエンドポイントにプロキシされたリクエストは、他の HTTP(S) ロード バランシング バックエンドのリクエストと同様の方法で Cloud Logging のログに記録されます。詳細については、HTTP(S) ロード バランシングのロギングとモニタリングをご覧ください。

ロードバランサで Cloud CDN を有効にすると、キャッシュ ヒットもログに記録されます。

割り当て

既存のネットワーク エンドポイント グループ割り当てで許可されている数のネットワーク エンドポイントを持つハイブリッド NEG を構成できます。詳細については、NEG バックエンドと、NEG あたりのエンドポイント数をご覧ください。

次のステップ