【问题标题】:How to use mySQLworkbench to connect to RDS in AWS private subnet VPC如何使用 mySQL 工作台连接到 AWS 私有子网 VPC 中的 RDS
【发布时间】:2017-01-28 22:39:05
【问题描述】:

我是 AWS VPC 的新手。我对如何将 mySQLworkbench 连接到 AWS 私有子网中的 RDS 有疑问。

我使用 VPC 向导创建场景 2:具有公共子网和私有子网的 VPC。从很多博客和论坛中,大多数人都建议数据库应该在私有子网中,所以我在私有子网中创建了数据库。我还创建了 NAT 网关(不是实例)。无论如何我可以使用来自公共(任何)网络的 mySQLworkbench 连接到私有子网中的数据库吗?

谢谢, 安吉拉

【问题讨论】:

  • 您必须在公有子网中创建 EC2 实例,并使用 SSH 隧道从本地计算机访问 RDS 服务器。 stackoverflow.com/questions/19129428/…
  • 看来我还是需要一个实例。谢谢马克。

标签: database amazon-web-services mysql-workbench vpc


【解决方案1】:

我还遵循了AWS Documentation 中的场景 2,没有 NAT 部分。但是现在我无法从我的计算机访问 RDS 实例,因为 RDS 在私有子网中。

为了解决可访问性问题,我从tutorial 得到了这个想法。我其实没追,所以不推荐。

我实际做的是:

1) 我创建了一个 EC2 实例并给它一个弹性 IP。

2) 然后我允许数据库接收来自该实例的流量(这已经在 AWS 教程的数据库服务器安全组上定义)。

3) 然后我允许从我的计算机到 EC2 实例的 SSH 连接。

4) 最后,我能够通过建立“标准 TCP/IP over SSH”连接使用 MySQL WorkBench 连接到数据库

好消息是,仅使用免费层资源(在撰写本文时)AFAIK 即可实现此解决方案。

【讨论】:

    【解决方案2】:

    使用 VPN 解决方案,例如 OpenVPN。

    • 在公共子网中配置 Openvpn 服务器。
    • 服务器配置中私有子网的推送路由
    • 调整私有路由表以通过 vpn 服务器传递 vpn 流量
    • 使用 PC 上的客户端配置连接到 vpn。
    • 使用 Mysql 工作台连接到您的数据库实例

    如前所述,您可以配置 ssh 堡垒主机,然后将其用作跳转服务器以 ssh 进入数据库实例。相应配置mysqlworkbench连接到db

    【讨论】:

    • "- 调整私有路由表以通过 vpn 服务器传递 vpn 流量" - 你能在这条线上提供更多细节吗?谢谢!
    • 这对我有用。关键是确保数据库的安全组允许 Postgres 从与 OpenVPN 实例所在的公共子网关联的 NAT 网关的弹性 IP 访问。谢谢
    • @BatteryAcid 我按照 mahesh duvvuru 步骤并确保更新安全组,以便它允许您所说的流量,但我仍然无法连接到数据库,我正在考虑一个服务器配置问题或 DNS 解析,因为 RDS 没有私有 IP(我在这个子网上有另一个实例,我能够连接到私有 IP),除了我想要的私有子网之外,我是否需要配置任何东西到达?
    • @FelipeM 所以我刚刚检查了我的配置,我的数据库安全组具有来自 VPN 安全组的 PostgreSQL 入站角色。此外,我的 VPN EC2 实例和数据库位于同一可用区(VPN 是公共子网和数据库私有子网),不确定这会有所不同。
    • 我终于能够连接到我的 RDS 实例,结果工作台正在解析我的本地网络中的 DNS 而不是 VPN 并被阻止,我更改了选项“是否应该路由客户端 Internet 流量通过VPN?”是的,现在一切都在使用 DNS 解析私有 IP。非常感谢@BatteryAcid 和 mahesh duvvuru 希望这个小小的讨论对其他人有所帮助。
    猜你喜欢
    • 2019-06-24
    • 1970-01-01
    • 2019-05-16
    • 2019-06-28
    • 2019-11-14
    • 2020-06-30
    • 2016-09-08
    • 2018-07-10
    • 1970-01-01
    相关资源
    最近更新 更多