【发布时间】:2020-06-07 23:22:40
【问题描述】:
我有一个带有 EC2 的 AWS 帐户,我正在尝试连接到 Google Cloud Platform 内的 Cloud SQL Server (MySQL 5.6)。
我已成功在 AWS 和 GCP 之间建立了 VPN,并且可以通过 nc 在 AWS 上的 ec2 和 GCP 上的 vm 之间回显消息。
由于 GCP 管理的数据库未放置在我选择的 VPC 中,我按照this 指南为数据库提供了一个私有 IP,然后将其与我的谷歌 VPC 对等。我通过使用数据库的私有 IP 从 GCP 中的虚拟机通过 pymsql 访问数据库来测试这项工作。
但是我的问题来自以同样的方式将 AWS 内部的 EC2 连接到 Cloud SQL DB,我已按照this 指南允许从外部来源使用数据库的私有 IP,但我似乎得到了坚持如何使用 AWS 路由将路由设置到数据库所在的对等网络。
【问题讨论】:
-
什么类型的谷歌VPN?什么类型的路由(动态/静态)。 Google VPC 对等互连是不可传递的。这意味着发送到您的 VPC 的数据包不会被路由到另一个 VPC(Cloud SQL 所在的位置)。您可能需要设置自定义路由通告。查看此文档:cloud.google.com/vpc/docs/vpc-peering#key_properties
-
作为提示,我经常使用 SSH 隧道来遍历网络。这很容易设置为允许从 AWS 到 Cloud SQL 的连接。这不适用于生产网络,但非常适合开发。 ssh.com/ssh/tunneling/example 基本上,您在 Compute Engine 实例中使用 SSH 服务器将流量转发到 Cloud SQL。
-
另一个提示。在您的 AWS 实例上使用 Cloud SQL 代理,然后您可以在没有 VPN 的情况下以安全的方式直接连接到 Cloud SQL。
-
谢谢大家的帮助!我更新了这个问题,重温了我是如何解决这个问题的。
标签: amazon-web-services google-cloud-platform google-cloud-sql google-cloud-vpn aws-vpn