【问题标题】:Connect a Database with an Amazon VPC from local从本地将数据库与 Amazon VPC 连接
【发布时间】:2021-06-23 18:59:20
【问题描述】:

刚刚为 EKS 集群创建了一个 VPC,并使用自定义 VPC 启动了 RDS PostgreSQL 实例。

自定义 VPC 具有子网。 我的自定义 VPC 连接了 Internet 网关。

EKS 和 RDS 在同一个 VPC 中,因此它们具有内部通信。 我的问题是我想从本地计算机连接到 RDS,但我无法。关于这个问题,我已经为 PostgreSQL 创建了一个带有入站规则的新安全组。

PostgreSQL  TCP 5432    0.0.0.0/0   –

我仍然无法连接

更新

  1. RDS 可公开访问
  2. 安全组允许访问 RDS

【问题讨论】:

    标签: amazon-web-services amazon-vpc


    【解决方案1】:

    为了从互联网连接到 RDS 实例,您需要做这 3 件事

    1. 在“公共”子网中部署您的 RDS 实例。这意味着子网必须附加一个 Internet 网关,这样它才能正确响应出站请求

    2. 在连接下的 RDS 实例中,扩展附加配置部分,然后选择公开访问。

    3. 确保安全组允许访问您的 RDS 实例。

    注意:将数据库公开给公众访问并不安全。我建议您使用haproxy 或 VPN 创建代理。

    【讨论】:

    • 首先,感谢您的宝贵时间。 1. 我有公共/私有子网,附有 Internet 网关。 2. 启用可公开访问 3. 在安全组入站侦听我的 IP 仍然无法连接或 ping。
    • ping RDS 端点时会发生什么?你有私人或公共IP吗?
    • 我得到了公共 ip。
    • 您是否尝试使用主用户登录?
    【解决方案2】:

    为了能够远程连接到 RDS 数据库,您需要为数据库的“公共可访问性”设置选择“是”选项。以下是一些需要考虑的额外配置 (form AWS docs):

    • 如果您希望 VPC 中的数据库实例可公开访问,您 必须启用 VPC 属性 DNS 主机名和 DNS 解析。

    • 您的 VPC 必须具有允许访问数据库的 VPC 安全组 实例。

    • 每个子网中的 CIDR 块必须足够大 容纳 Amazon RDS 使用的备用 IP 地址 维护活动,包括故障转移和计算扩展。

    最好, 斯蒂芬

    【讨论】:

    • 抱歉忘了提,我已经为数据库启用了公共可访问性,但情况相同。
    • 好的,很好!然后让我们检查您的网络 - 您能否确认您的 RDS 实例在公共子网(具有到 Internet 网关的路由的子网)中运行?
    • @MikheilJaniashvili 我还用其他信息编辑了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    • 1970-01-01
    • 2014-05-11
    • 1970-01-01
    • 2017-06-18
    • 1970-01-01
    • 2015-04-24
    相关资源
    最近更新 更多