无法使用来自对等 VPC 网络的私有 IP 访问 Google 云 SQL

Can't access Google Cloud SQL with private IP from peered VPC network

步骤如下:

为什么我无法访问 postgresql?是因为 SQL 私有 IP 处于 Beta 模式,还是我在这里遗漏了一些东西?

Cloud SQL 私有 IP 访问是通过对等互连设置的,因此网络 A 与包含您的 Cloud SQL 实例的网络 Z 对等互连。当您将 A 与 B 对等时,B 无法访问网络 Z。

是的,如之前的回复中所述,代理是可行的方法,因为对等互连不可传递。

从对等网络 "B" VM 访问网络 "A" 中的 SQL 代理会很简单。

至于从网络 "B" 中的 Kubernetes 集群访问,有一个可能的陷阱。默认情况下,Kubernetes 不会对发往 10.0.0.0/8 的流量进行 SNAT,并会尝试将其保留在本地。因此,您需要更改主机实例上的 iptables 规则才能到达外部。

永久解决方案是设置 DaemonSet,但您可以先在主机上通过手动更改来测试这个理论。例如:

iptables -A POSTROUTING -d 10.11.0.0/24 \
   -m addrtype ! --dst-type LOCAL -j MASQUERADE -t nat

这里有一个 link 非常简单的指南 https://blog.mrtrustor.net/post/iptables-kubernetes/