Private Service Connect のデプロイ パターン

このページでは、Private Service Connect をデプロイしてアクセスする一般的な方法について説明します。

単一テナント サービス

単一テナント サービスは、単一のコンシューマーまたはテナント専用のサービスです。サービス インスタンスは、通常、プロデューサー組織内の他のテナント VPC ネットワークから分離するために、そのテナント専用の別の VPC ネットワークでホストされます。各サービスは、コンシューマー承認リストを使用して、サービスに接続できるプロジェクトを制御します。承認リストを使用すると、アクセスを 1 つのテナントに限定できます。サービスに接続できるテナントは 1 つだけですが、テナントが複数のエンドポイントまたはバックエンドを作成する場合があります(複数の VPC ネットワークから接続する場合)。

図 1. 単一テナント マネージド サービスでは、プロデューサーはコンシューマー専用の別の VPC ネットワークにサービスをデプロイします。

マルチテナント サービス

マルチテナント サービスは、複数のコンシューマーまたはテナントがアクセスできるサービスです。プロデューサーは、複数のコンシューマーまたは任意のプロジェクトのコンシューマーがサービスに接続できるように、サービスにコンシューマー承認リストを構成します。また、コンシューマー承認リストを使用することで、プロデューサーは各プロジェクトが作成できる Private Service Connect 接続の数を制御できます。こうした上限は、リソースや割り当ての枯渇を防ぐのに役立ちます。プロデューサーがトラフィックのソースを特定する必要がある場合は、サービスで PROXY プロトコルを有効にします。

図 2.マルチテナント マネージド サービスでは、1 つの VPC ネットワーク内のサービスに複数のコンシューマーがアクセスできます。

マルチポイント アクセス

マルチポイント アクセスでは、同じサービス アタッチメントに複数の Private Service Connect エンドポイントまたはバックエンドが接続します。マルチポイント Private Service Connect は、複数の独立したコンシューマーが同じサービスに接続できるため、マルチテナント サービスに役立ちます。また、単一コンシューマー内の複数の VPC ネットワーク間でサービス接続を作成する場合にも便利です。

すべてのサービス プロデューサーが、マネージド サービスでマルチポイント アクセスをサポートしているわけではありません。サービス アタッチメントでマルチポイント アクセスがサポートされているかどうかは、サービス プロデューサーにお問い合わせください。

マルチリージョン アクセス

マルチリージョン マネージド サービスは、複数のリージョンにまたがってデプロイまたはアクセスされるサービスです。ローカル サービスにサービスが存在しない場合や、高可用性とマルチリージョンのフェイルオーバーを実現するために、クライアントが別のリージョンのサービスにアクセスすることがあります。Google Cloud はグローバル VPC ネットワークをサポートしているため、Private Service Connect グローバル アクセスを使用すると、クライアントは任意のリージョンから Private Service Connect エンドポイントにアクセスできます。クライアント トラフィックは、Compute Engine 仮想マシン(VM)インスタンス、Cloud VPN トンネル、Cloud Interconnect の VLAN アタッチメントから送信されます。

図 3.グローバル アクセスが可能な Private Service Connect エンドポイントには、どのリージョンからでもアクセスできます。

オンプレミスとハイブリッド アクセス

Cloud Interconnect トンネルと Cloud VPN トンネルに VLAN アタッチメントを使用すると、オンプレミス ネットワークまたは他のクラウド プロバイダを VPC ネットワークに接続できます。Google API のエンドポイント公開サービスのエンドポイントは、どちらもグローバルにアクセス可能であるため、接続されたネットワーク内のクライアントは任意のリージョンのエンドポイントにリクエストを送信できます。複数のリージョンにエンドポイントをデプロイすることで、ハイブリッド ネットワークからのルーティングを細かく制御できます。ハイブリッド トラフィックを特定のリージョンからローカル エンドポイントに転送すると、トラフィック パスの最短ルートを最適化できます。

図 4. Private Service Connect のエンドポイントとバックエンドには、接続されたネットワークからアクセスできます。

双方向接続

通常、コンシューマー クライアントからマネージド サービスに接続しますが、マネージド サービスからコンシューマー所有サービスに接続する必要が生じることがあります。

リバース プライベート接続

リバース プライベート接続では、Private Service Connect を逆方向にデプロイすることで、コンシューマーはプロデューサー VPC ネットワーク内の VM と GKE クラスタからコンシューマー VPC ネットワークへのトラフィックを開始できます。この場合、コンシューマーは内部ロードバランサとサービス アタッチメントをデプロイし、サービスをプロデューサーに公開します。プロデューサーとコンシューマーはともに、順方向と逆方向の Private Service Connect を使用して、相互に双方向接続を確立できます。

図 5. リバース プライベート接続を使用すると、コンシューマーとプロデューサーは相互に双方向接続を確立できます。

Private Service Connect インターフェース

Private Service Connect インターフェースは、コンシューマー VPC ネットワークとプロデューサー VPC ネットワークの間に双方向の推移的な接続を構築します。コンシューマー VPC ネットワークとプロデューサー VPC ネットワーク内のリソースは、Private Service Connect インターフェースを介して接続を開始できます。また、接続は推移的であるため、プロデューサー VPC ネットワーク内のリソースは、コンシューマー VPC ネットワークに接続している他のワークロードと通信できます。たとえば、プロデューサー VPC ネットワーク内の VM は、Cloud Interconnect または VPC ネットワーク ピアリングを介してコンシューマー VPC ネットワークに接続されているネットワーク内のワークロードにアクセスできます。

ハイブリッド サービス

Google Cloud に配置されていないハイブリッド サービスは、他のクラウド、オンプレミス環境、またはこれらの組み合わせに存在します。Private Service Connect を使用すると、別の VPC ネットワークからハイブリッド サービスにアクセスできるようになります。

ハイブリッド サービスには、サポートされているロードバランサと互換性のあるハイブリッド NEG を介してアクセスできます。

この構成は、多くの場合、オンプレミス ネットワークでホストされているコンシューマー サービスに接続しているサービス プロデューサーとのリバース プライベート接続で使用されます。Private Service Connect を使用すると、プロデューサーはコンシューマーのハイブリッド ネットワークと直接接続を確立することなく、それらのネットワークにアクセスできます。

図 6. リバース プライベート接続を使用すると、コンシューマーとプロデューサーは相互に双方向接続を確立できます。

構成例については、Private Service Connect を使用してハイブリッド サービスを公開するをご覧ください。

共有 VPC

Private Service Connect リソースは、スタンドアロン VPC ネットワークまたは共有 VPC ネットワークにデプロイできます。Private Service Connect エンドポイント、バックエンド、サービス アタッチメントは、ホスト プロジェクトまたはサービス プロジェクトにデプロイできます。

たとえば、コンシューマー サービス管理者は、ホスト プロジェクトのサブネットの IP アドレスを使用して、サービス プロジェクトに Private Service Connect エンドポイントとバックエンドをデプロイできます。この構成では、同じ共有 VPC ネットワーク内の他のサービス プロジェクトからエンドポイントとバックエンドに到達できます。

共有 VPC ネットワーク内のすべてのクライアントは、デプロイされているプロジェクトに関係なく、Private Service Connect エンドポイントに接続できます。ただし、プロジェクトの選択は、可視性、IAM アクセス、1 時間ごとのリソース料金の請求先となるプロジェクトに影響します。

図 7. 共有 VPC ネットワークに関連付けられたすべてのサービス プロジェクトで、Private Service Connect リソースを利用できるようにします。

次のステップ