首页 > 解决方案 > 从多个 VPC 访问 Google Cloud SQL

问题描述

我正在尝试创建 GCP postgreSQL 实例,并使其在一个项目中可从多个 VPC 网络访问。

我们在 4 个 GCP 区域中有虚拟机。每个区域都有自己的 VPC 网络,并且都是对等的。但是当我创建 SQL 实例时,我只能将其私有 IP 映射到一个 VPC,而其他人无权访问它。

是否有任何步骤允许从多个 VPC 访问一个 SQL 实例?

标签: google-cloud-sqlgoogle-cloud-networking

解决方案


当您将 Cloud SQL 实例配置为使用私有 IP 时,您将使用私有服务访问。私有服务访问是作为 VPC 网络与 Cloud SQL 实例所在的 Google 服务 VPC 网络之间的 VPC 对等连接来实现的。

也就是说,目前您的方法是不可能的。VPC 网络对等有一些限制,其中之一是只有直接对等的网络才能相互通信——不支持传递对等。

由于 Cloud SQL 资源本身是通过 VPC 网络对等从“VPC A”访问的,因此通过 VPC 网络对等连接到“VPC A”的其他 VPC 网络无法访问这些 Cloud SQL 资源,因为这将违反上述限制。

在此说明中,已经有针对 Cloud SQL VPC 的多个 VPC 对等的功能请求。

作为一种解决方法,您可以使用 Cloud SQL 代理创建代理虚拟机实例。见12。例如,代理虚拟机实例可以放置在您的 Cloud SQL 实例所附加到的 VPC(例如 VPC A)中,并且它将充当 Cloud SQL 代理。通过 VPC 网络对等连接到 VPC A 的其他 VPC 中的 VM 实例可以将其 SQL 请求转发到 VPC A 中的 Cloud SQL 代理 VM 实例,然后将请求转发到 SQL 实例,反之亦然。


推荐阅读