无法从谷歌容器引擎访问谷歌云SQL

Nus*_*chk 7 google-cloud-sql google-kubernetes-engine

我仍然无法从GCE容器访问云SQL实例.当我尝试打开mysql时,我收到以下错误:

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial 
                    communication packet', system error: 0
Run Code Online (Sandbox Code Playgroud)

尽管如此(该实例具有公共IP并且我将办公室的IP添加到"允许的网络"),连接在本地计算机上工作正常.所以,实例可以通过互联网访问就好了.

我想db的访问控制阻止了我对gce网络的访问,但是我无法弄清楚如何配置它.

我在Cloud SQL控制面板中将我的项目添加到"授权的应用程序引擎应用程序",但这似乎没有帮助.

编辑: 如果我将"0.0.0.0/0"添加到Allowed Networks,一切正常.这显然不是我想要的,所以我需要输入什么呢?

EDIT2:我还可以从我的kubernetes集群中添加所有公共IP(通过获取gcloud compute instances list)并手动将它们添加到云sql访问列表中.但是,这似乎不对,是吗?

小智 4

推荐的解决方案是使用 SSL 连接与 0.0.0.0/0 CIDR。这是为了限制连接到正确的密钥。我还了解到他们不会向您承诺特定的 IP 范围,因此 CIDR /14 有时可能无法工作。出于同样的原因,我必须与我的 Cloud SQL 进行 SSL 连接。