无法从 AWS ECS Fargate 容器连接到 PostgreSQL

ajo*_*nha 9 amazon-rds aws-fargate

我正在使用 Fargate 和 RDS 为我的 Web 应用程序设置基础设施。

以下是基础设施的基本细节。

  1. Fargate 和 RDS 使用相同的 VPC 和相同的子网
  2. 我们在 Fargate 前面有一个应用程序负载均衡器
  3. 能够使用LB url访问容器应用程序

现在的问题是,Fargate 容器应用无法连接到 RDS

有人可以建议如何配置安全组或其他边界以允许容器连接 RDS。

如果我将 RDS SG 配置更改为 RDS 端口和 IP 作为 0.0.0.0/0 (Anywhere) 容器应用程序能够连接到 RDS。但这我们将无法在 UAT / PROD 中做到

blu*_*res 9

  1. 查找 Fargate 服务的安全组 ID。它看起来像sg-ab3123b1252,但之后的值不同sg-
  2. 在 RDS 安全组规则中,不要在源字段中放置 CIDR,而是放置 Fargate 服务安全组 ID。端口 5432(假设您使用的是标准 postgresql 端口)。

通过将 Fargate 安全组添加到您的 RDS 安全组规则,您是在说“允许来自使用指定源安全组的任何资源在端口 5432 上的 TCP 流量”。

检查文档中的默认 VPC 组。无论如何都需要阅读该页面,但是链接的部分有一个我正在具体描述的示例。


小智 0

您可能想要尝试将带有 RDS 端口的 VPC IP 配置到 RDS SG 中。