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

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

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

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

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

機能と互換性

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

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

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

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

ロードバランサでグローバル アクセスが有効になっている場合のみ

ロードバランサでグローバル アクセスが有効になっている場合のみ

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

相互接続のトラフィック

Cloud VPN のトラフィック
DNS の自動構成
IP スタック IPv4 IPv4 IPv4 IPv4

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

プロデューサーの構成(公開サービス) プロデューサー ロードバランサ
内部パススルー ネットワーク ロードバランサ リージョン内部アプリケーション ロードバランサ リージョン内部プロキシ ネットワーク ロードバランサ 内部プロトコル転送(ターゲット インスタンス)
サポートされるプロデューサー バックエンド
  • GCE_VM_IP 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
該当なし 該当なし 該当なし

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

制限事項

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

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

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

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

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

オンプレミス アクセス

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

仕様

  • Private Service Connect エンドポイントは、エンドポイントのターゲットである公開サービスと同じリージョンに作成する必要があります。
  • エンドポイントは、ターゲット サービスを含む VPC ネットワークとは異なる VPC ネットワークに作成する必要があります。
  • デフォルトでは、エンドポイントと同じリージョンと VPC ネットワークにあるクライアントのみがエンドポイントにアクセスできます。エンドポイントを他のリージョンで利用可能にする方法については、グローバル アクセスをご覧ください。
  • エンドポイントに割り振る IP アドレスは、通常のサブネットから指定する必要があります。
  • サービスの 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 つのネットワーク間で移動することはできません。

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

グローバル アクセス

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

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

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

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

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

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

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

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

  • エンドポイントのグローバル アクセスはいつでも有効または無効にできます。
    • グローバル アクセスを有効にしても、既存の接続でトラフィックが中断することはありません。
    • グローバル アクセスを無効にすると、エンドポイントが配置されているリージョン以外のリージョンからの接続が終了します。
  • グローバル アクセスが有効なエンドポイントは、共有 VPC ホスト プロジェクトまたはサービス プロジェクトで作成できます。Cloud Interconnect のクライアント VM、Cloud VPN トンネル、VLAN アタッチメントは、エンドポイントと同じプロジェクトに存在する必要はありません。

  • すべての 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 フローログを有効にできます。ログには、VM とエンドポイントの間のフローが記録されます。

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

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

料金

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

割り当て

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

組織のポリシーの制約

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

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

次のステップ