从具有 public 和私有 IP 的 VM 连接到云 SQL 实例 - 如何确保为连接选择正确的网络接口?

Connecting to a Cloud SQL instance from VM with public and private IPs - how to ensure the right network interface is chosen for the connection?

我要设置的内容:

会发生什么?

我假设 psql 连接尝试通过错误的网络接口或其他东西(这可能只是我对网络内容的无知)- 我怎样才能让它工作?我错过了什么?

PS:这基本上是与 相同的问题,但那里的评论者似乎想要一个与 Terraform 相关的问题和一个与连接问题相关的问题。

部分截图:

虚拟机 IP:

数据库 IP:

VM 的网络配置:

数据库实例的私有 IP 配置:

这是专用网络的设置:

不明白为什么DB实例的私有IP(10.78.0.3)不是私有网络范围内的IP(10.2.0.0-10.2.0.24,对吧?)..?是我的问题吗?

回答你的问题:

I don't understand why the private IP of the DB instance (10.78.0.3) is not an IP from the range of the private network (10.2.0.0-10.2.0.24, right?)..?

云 SQL 实例从 allocated range. When you setup a private services access 分配了一个 IP 地址,在您的 VPC gcp-network-issue-demo-staging-network使用分配范围 10.78.0.0/16 的服务生产者 VPC 网络

此外,查看您的 VM 网络配置,我看到 VM 在两个不同的 VPC 中有两个网卡(defaultgcp-network-issue-demo-staging-network).你的情况只能使用一个网卡。

下一步,请确保您的 VM 仅使用您用于创建 private connection 的 VPC 网络。完成后,您应该能够使用以下命令连接到云 SQL 实例 IP:

telnet 10.78.0.3 3306