Amazon RDS 和 VPC 端点连接

Amazon RDS and VPC Endpoints Connectivity

我有一个位于默认 VPC 中的 Amazon RDS Postgres 实例。
为了连接到它,我在 ElasticBeanstalk 中使用不同的 EC2 实例(Java Spring Boot 和 NodeJs)运行。这些实例也驻留在默认 VPC 中。
这些 EC2 实例是通过互联网连接 to/query RDS 实例还是调用不离开 AWS 网络?
如果他们离开 AWS 网络并且调用通过 Internet 进行,那么创建 VPC 端点是否是正确的解决方案?或者我整个理解都不正确。
非常感谢您的帮助。

Do these EC2 instances connect to/query the RDS instance through the internet or the calls do not leave the AWS Network?

在 VPC 中使用时,RDS 端点的 DNS 将解析为 私有 IP 地址。因此,即使您使用 public 个子网或将 RDS 实例设置为 public 可用,通信也是 私有的 。但是,对于来自 AWS 外部的连接,如果数据库实例 public 仅可用,则 RDS 端点将解析为 public IP 地址。

If they leave the AWS network and the calls go through the internet, is creating a VPC endpoint the right solution?

没有用于 RDS 客户端连接的 VPC 端点,仅用于管理操作(创建数据库实例、终止等)。相比之下,Aurora Serverless 具有 Data API 和相应的 VPC 端点。

为了保护您的数据库实例通信,您至少需要确定以下内容:

  • 在私有子网中找到您的 RD(路由 table 不包含到互联网网关的默认出站路由)。
  • RDS 安全组仅接受来自 PostgreSQL 的 TCP 端口上的实例安全 group/groups 的入站流量,通常为 5432。

在这种情况下,到 RDS 的流量将在您的 vpc 中本地化,对于 vpc 端点,它可用于私下访问 RDS API 操作,这不是您的情况(您只需要将您的应用程序连接到数据库使用连接字符串)