エンドポイントを介した公開サービスへのアクセスについて

このドキュメントでは、Private Service Connect エンドポイントを使用して、別の VPC ネットワーク内のサービスに接続する方法の概要を説明します。自社のサービスに接続することも、他のサービス提供者(Google を含む)が提供するサービスに接続することもできます。

クライアントは、内部 IP アドレスを使用してエンドポイントに接続します。Private Service Connect は、ネットワーク アドレス変換(NAT)を行い、リクエストをサービスに転送します。

公開サービスの詳細については、公開サービスについてをご覧ください。

Private Service Connect エンドポイントを使用すると、サービス ユーザーは、コンシューマーの VPC ネットワークからサービス プロデューサーの VPC ネットワーク内のサービスにトラフィックを送信できます。 コンシューマー、エンドポイント、サービスはすべて同じリージョン内に存在する必要があります。 (クリックして拡大)

機能と互換性

次の表で、 は機能がサポートされていることを示し、 は機能がサポートされていないことを示します。

コンシューマーの構成

次の表は、サポートされている構成オプションと、公開サービスにアクセスするエンドポイントの機能をまとめたものです。

コンシューマーの構成(エンドポイント) プロデューサー ロードバランサ
内部パススルー ネットワーク ロードバランサ リージョン内部アプリケーション ロードバランサ リージョン内部プロキシ ネットワーク ロードバランサ 内部プロトコル転送(ターゲット インスタンス)
コンシューマーのグローバル アクセス

ロードバランサのグローバル アクセス設定に依存しない

サービス アタッチメントの作成前にロードバランサでグローバル アクセスが有効になっている場合のみ

サービス アタッチメントの作成前にロードバランサでグローバル アクセスが有効になっている場合のみ

ロードバランサのグローバル アクセス設定に依存しない

相互接続のトラフィック

Cloud VPN のトラフィック
DNS の自動構成 IPv4 のみ IPv4 のみ IPv4 のみ IPv4 のみ
接続の伝播 IPv4 のみ IPv4 のみ IPv4 のみ IPv4 のみ
IPv4 エンドポイント
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
IPv6 エンドポイント
  • IPv4 プロデューサーの転送ルール
  • IPv6 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv6 プロデューサーの転送ルール

プロデューサーの構成

この表は、エンドポイントがアクセスする公開サービスでサポートされる構成オプションと機能をまとめたものです。

プロデューサーの構成(公開サービス) プロデューサー ロードバランサ
内部パススルー ネットワーク ロードバランサ リージョン内部アプリケーション ロードバランサ リージョン内部プロキシ ネットワーク ロードバランサ 内部プロトコル転送(ターゲット インスタンス)

サポートされるプロデューサー バックエンド

  • GCE_VM_IP ゾーン NEG
  • インスタンス グループ
  • ポート マッピング NEG
  • GCE_VM_IP_PORT ゾーン NEG
  • ハイブリッド NEG
  • サーバーレス NEG
  • Private Service Connect NEG
  • インスタンス グループ
  • GCE_VM_IP_PORT ゾーン NEG
  • ハイブリッド NEG
  • サーバーレス NEG
  • Private Service Connect NEG
  • インスタンス グループ
該当なし
PROXY プロトコル TCP トラフィックのみ TCP トラフィックのみ
セッション アフィニティ モード なし(5 タプル)
CLIENT_IP_PORT_PROTO
該当なし 該当なし 該当なし
IP バージョン
  • IPv4 プロデューサーの転送ルール
  • IPv6 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv4 プロデューサーの転送ルール
  • IPv6 プロデューサーの転送ルール

サポートされるポート構成は、ロードバランサによって異なります。ロードバランサには、単一のポートをサポートするものと、ポートの範囲をサポートするものと、すべてのポートをサポートするものがあります。詳細については、ポートの仕様をご覧ください。

制限事項

公開サービスにアクセスするエンドポイントには、次の制限があります。

  • アクセスしている公開サービスと同じ VPC ネットワークにエンドポイントを作成することはできません。

  • エンドポイントは、ピアリングされた VPC ネットワークからアクセスできません。

  • Packet Mirroring では、Private Service Connect の公開サービス トラフィックのパケットはミラーリングできません。

  • ロードバランサのネクストホップを使用するすべての静的ルートが Private Service Connect でサポートされているわけではありません。詳細については、ロードバランサのネクストホップを使用する静的ルートをご覧ください。

  • 接続テストでは、IPv6 エンドポイントと公開サービス間の接続をテストできません。

オンプレミス アクセス

Google API へのアクセスに使用するエンドポイントには、接続されているサポート対象のオンプレミス ホストからアクセスできます。詳細については、ハイブリッド ネットワークからエンドポイントにアクセスするをご覧ください。

仕様

  • Private Service Connect エンドポイントは、エンドポイントのターゲットである公開サービスと同じリージョンに作成する必要があります。
  • エンドポイントは、ターゲット サービスを含む VPC ネットワークとは異なる VPC ネットワークに作成する必要があります。
  • 共有 VPC を使用している場合は、ホスト プロジェクトまたはサービス プロジェクトのいずれかでエンドポイントを作成できます。
  • デフォルトでは、エンドポイントと同じリージョンと VPC ネットワーク(または共有 VPC ネットワーク)にあるクライアントのみがエンドポイントにアクセスできます。エンドポイントを他のリージョンで利用可能にする方法については、グローバル アクセスをご覧ください。
  • エンドポイントに割り振る IP アドレスは、通常のサブネットから指定する必要があります。
    • IPv4 のみのサブネットまたはデュアルスタック サブネットの IPv4 アドレスを使用できます。
    • サブネットに内部 IPv6 アドレス範囲がある場合は、デュアルスタック サブネットの IPv6 アドレスを使用できます。
    • IP アドレスの IP バージョンは、エンドポイントがどの公開サービスに接続できるかに影響します。詳細については、IP バージョンの変換をご覧ください。
    • この IP アドレスは、静的内部 IPv4 アドレスまたは静的内部 IPv6 アドレスのプロジェクトの割り当てにカウントされます。
  • サービスの DNS ドメイン名が構成されている場合、サービスに接続するエンドポイントを作成すると、VPC ネットワーク内にそのエンドポイントのプライベート DNS エントリが自動的に作成されます。
  • 各エンドポイントには固有の IP アドレスがあります。また、一意の DNS 名がある場合もあります。

接続ステータス

Private Service Connect エンドポイント、バックエンド、サービス アタッチメントには、接続の状態を示す接続ステータスがあります。 接続の両側を形成するコンシューマー リソースとプロデューサー リソースは常に同じステータスになります。 接続ステータスは、エンドポイントの詳細を表示するバックエンドの説明をする、または公開サービスの詳細を表示することで表示できます。

次の表に、ステータスの説明を示します。

接続ステータス 説明
承認 Private Service Connect 接続が確立されています。2 つの VPC ネットワークが接続し、接続が正常に機能しています。
保留中

Private Service Connect 接続が確立されていないため、ネットワーク トラフィックが 2 つのネットワーク間を移動できません。接続がこのステータスになる理由は次のとおりです。

  • サービス アタッチメントは明示的な承認を必要としますが、コンシューマーがコンシューマーの承認リストに含まれていません。
  • 接続数がサービス アタッチメントの接続上限を超えています。
  • エンドポイントに関連付けられている伝播接続の数は、サービス アタッチメントの伝播接続の上限を超えています。

これらの理由でブロックされた接続は、根本的な問題が解決されるまで無期限に保留状態のままになります。

拒否

Private Service Connect 接続が確立されていません。ネットワーク トラフィックを 2 つのネットワーク間で移動することはできません。接続がこのステータスになる理由は次のとおりです。

[要確認] または [指定なし] 接続のプロデューサー側に問題があります。一部のトラフィックは 2 つのネットワーク間を流れますが、一部の接続は機能しない可能性があります。たとえば、プロデューサーの NAT サブネットが使い果たされ、新しい接続に IP アドレスを割り振ることができない場合があります。
終了

サービス アタッチメントが削除され、Private Service Connect 接続が閉じています。ネットワーク トラフィックを 2 つのネットワーク間で移動することはできません。

閉じた接続は終端状態です。接続を復元するには、サービス アタッチメントだけでなく、エンドポイントまたはバックエンドも再作成する必要があります。

IP バージョンの変換

公開サービス用の Private Service Connect エンドポイントとサービス アタッチメント間の接続では、コンシューマー転送ルールの IP アドレスの IP バージョンによって、エンドポイントの IP バージョンと、エンドポイントから送信されるトラフィックが決定されます。エンドポイントの IP バージョンには IPv4 または IPv6 のいずれかを設定できます。両方を指定することはできません。アドレスのサブネットがシングルスタックの場合、コンシューマは IPv4 アドレスを使用できます。アドレスのサブネットがデュアルスタックの場合、コンシューマは IPv4 アドレスまたは IPv6 アドレスを使用できます。コンシューマは、IPv4 エンドポイントと IPv6 エンドポイントの両方を同じサービス アタッチメントに接続できます。これは、サービスを IPv6 に移行する場合に有効です。

公開サービスの Private Service Connect エンドポイントとサービス アタッチメント間の接続では、プロデューサー転送ルールの IP バージョンによって、サービス アタッチメントの IP バージョンと、サービス アタッチメントから送信されるトラフィックの IP バージョンが決定されます。サービス アタッチメントの IP バージョンには IPv4 または IPv6 のいずれかを指定できます。両方を指定することはできません。アドレスのサブネットがシングルスタックの場合、プロデューサーは IPv4 アドレスを使用できます。アドレスのサブネットがデュアルスタックの場合、プロデューサーは IPv4 アドレスまたは IPv6 アドレスを使用できます。

プロデューサー転送ルールの IP アドレスの IP バージョンは、サービス アタッチメントの NAT サブネットのスタックタイプと互換性があることが必要です。プロデューサーの転送ルールが IPv4 の場合、NAT サブネットはシングルスタックまたはデュアルスタックにできます。プロデューサーの転送ルールが IPv6 の場合、NAT サブネットはデュアルスタックであることが必要です。

Private Service Connect は、IPv4 エンドポイントと IPv6 サービス アタッチメントの接続をサポートしていません。この場合は、エンドポイントの作成が失敗し、次のエラー メッセージが表示されます。

Private Service Connect forwarding rule with an IPv4 address cannot target an IPv6 service attachment.

サポートされている構成では、次の組み合わせが可能です。

  • IPv4 エンドポイントから IPv4 サービスへのアタッチメント
  • IPv6 エンドポイントから IPv6 サービスへのアタッチメント
  • IPv6 エンドポイントから IPv4 サービスへのアタッチメント

    この構成では、Private Service Connect が 2 つの IP バージョン間で自動的に変換を行います。

接続の伝播

伝播接続では、Private Service Connect エンドポイントを介して 1 つのコンシューマー VPC スポークでアクセス可能なサービスに、同じ Network Connectivity Center ハブに接続されている他のコンシューマー VPC スポークから限定的にアクセスできます。

詳細については、伝播接続についてをご覧ください。

グローバル アクセス

サービスへのアクセスに使用される Private Service Connect エンドポイントは、リージョン リソースです。ただし、グローバル アクセスを構成すると、他のリージョンでエンドポイントを利用可能にできます。

グローバル アクセスを使用すると、任意のリージョンのリソースが Private Service Connect エンドポイントにトラフィックを送信できます。グローバル アクセスを使用すると、複数のリージョンにホストされているサービスに高可用性を提供できます。また、クライアントと同じリージョンにないサービスへのアクセスをクライアントに許可することもできます。

次の図は、同じエンドポイントにアクセスする異なるリージョンのクライアントを示しています。

  • エンドポイントは us-west1 にあり、グローバル アクセスが構成されています。

  • us-west1 の VM はエンドポイントにトラフィックを送信できますが、トラフィックは同じリージョン内にとどまります。

  • us-east1 の VM とオンプレミス ネットワーク内の VM は、異なるリージョンにあっても us-west1 のエンドポイントに接続できます。点線はリージョン間のトラフィック パスを表しています。

    グローバル アクセスを有効にした Private Service Connect エンドポイントを使用すると、サービス ユーザーは、コンシューマーの VPC ネットワークからサービス プロデューサーの VPC ネットワーク内のサービスにトラフィックを送信できます。クライアントは、エンドポイントと同じリージョンまたは別のリージョンに配置できます(クリックして拡大)。

グローバル アクセスの仕様

  • エンドポイントのグローバル アクセスはいつでも有効または無効にできます。

    • グローバル アクセスを有効にしても、既存の接続でトラフィックが中断することはありません。
    • グローバル アクセスを無効にすると、エンドポイントが配置されているリージョン以外のリージョンからの接続が終了します。
  • すべての Private Service Connect サービスが、グローバル アクセスが有効になっているエンドポイントをサポートしているわけではありません。サービスがグローバル アクセスをサポートしているかどうかは、サービス プロデューサーに確認してください。詳細については、サポートされている構成をご覧ください。

  • グローバル アクセスでは、複数のグローバル アクセス エンドポイントに単一のグローバル IP アドレスまたは DNS 名が設定されることはありません。

共有 VPC

サービス プロジェクト管理者は、共有 VPC ネットワークの IP アドレスを使用するエンドポイントを共有 VPC サービス プロジェクトに作成できます。構成は通常のエンドポイントの場合と同じですが、エンドポイントは共有 VPC の共有サブネットから予約された IP アドレスを使用します。

IP アドレス リソースは、サービス プロジェクトまたはホスト プロジェクトで予約できます。IP アドレスの送信元は、サービス プロジェクトと共有されるサブネットである必要があります。

詳細については、共有 VPC ネットワークの IP アドレスを使用してエンドポイントを作成するをご覧ください。

VPC Service Controls

VPC Service Controls と Private Service Connect には互換性があります。Private Service Connect エンドポイントがデプロイされている VPC ネットワークが VPC Service Controls の境界内にある場合、エンドポイントも同じ境界の一部になります。エンドポイントを介してアクセスされる VPC Service Controls でサポートされているサービスには、その VPC Service Controls の境界のポリシーが適用されます。

エンドポイントを作成すると、コンシューマ プロジェクトとプロデューサー プロジェクトの間でコントロール プレーンの API 呼び出しが行われ、Private Service Connect 接続を確立します。同じ VPC Service Controls の境界内にないコンシューマ プロジェクトとプロデューサー プロジェクトの間に Private Service Connect 接続を確立する場合、下り(外向き)ポリシーによる明示的な承認は必要ありません。エンドポイントを介した VPC Service Controls 対応サービスとの通信は、VPC Service Controls の境界で保護されます。

ロードバランサのネクストホップを使用した静的ルート

静的ルートは、内部パススルー ネットワーク ロードバランサのネクストホップ--next-hop-ilb)を使用するように構成できますが、このタイプのすべてのルートが Private Service Connect でサポートされているわけではありません。

ルートとエンドポイントが同じ VPC ネットワークとリージョンにある場合、--next-hop-ilb で内部パススルー ネットワーク ロードバランサの転送ルール名を指定する静的ルートを使用して、Private Service Connect エンドポイントとトラフィックの送受信を行うことができます。

Private Service Connect では、次のルーティング構成はサポートされていません。

  • --next-hop-ilb を使用して、内部パススルー ネットワーク ロードバランサ転送ルールの IP アドレスを指定する静的ルート。
  • --next-hop-ilb で Private Service Connect エンドポイントの転送ルールの名前または IP アドレスを指定する静的ルート。

ロギング

  • エンドポイントを使用して、別の VPC ネットワーク内のサービスにアクセスする VM を含むサブネットで VPC Flow Logs を有効にできます。ログには、VM とエンドポイントの間のフローが記録されます。

  • エンドポイントの接続ステータスの変更は監査ログで確認できます。エンドポイントの接続ステータスの変更は、リソースタイプ GCE 転送ルールのシステム イベント メタデータにキャプチャされます。pscConnectionStatus でフィルタリングすると、これらのエントリを表示できます。

    たとえば、サービス プロデューサーがプロジェクトからの接続を許可すると、エンドポイントの接続ステータスが PENDING から ACCEPTED に変更され、この変更が監査ログに反映されます。

料金

Private Service Connect の料金については、VPC の料金ページをご覧ください。

割り当て

公開サービスにアクセスするために作成できるエンドポイントの数は、PSC Internal LB Forwarding Rules 割り当てによって制御されます。詳細については、割り当てをご覧ください。

組織のポリシーの制約

組織のポリシーの管理者は、constraints/compute.disablePrivateServiceConnectCreationForConsumers 制約を使用して、ユーザーが転送ルールを作成できないエンドポイント タイプのセットを定義できます。

この制約を使用する組織のポリシーの作成方法については、コンシューマーによる接続タイプごとのエンドポイントのデプロイをブロックするをご覧ください。

次のステップ