我已在 AWS ECS Fargate 上部署了 Nest.js 应用程序,并使用具有两个关联弹性 IP(每个子网一个)的网络负载均衡器。现在,我正在尝试连接到 Liquid Web 上的远程数据库。我已经将这两个 IP 添加到了 WHM 防火墙白名单设置中,并将它们添加到了远程 MySQL 主机下的控制面板中。我检查了安全组出站规则和网络ACL出站规则,一切似乎都正常。您能告诉我还需要检查什么吗?
此外,我尝试使用相同的数据库 URL 字符串通过 localhost 连接到此远程数据库。在防火墙和远程 MySQL 主机中允许我的本地公共 IP 后,我能够连接到数据库。
此外,我还可以在部署后使用与网络负载均衡器关联的弹性 IP 地址连接到我的应用程序。
我希望你能帮助我。 :)
谢谢!
当 AWS 上的服务器(例如 EC2 服务器或 ECS 服务器)与 Internet 上的某个服务器建立新的传出连接时,该连接不会通过负载均衡器或以任何方式使用负载均衡器。负载均衡器仅代理传入请求。
为了给您的 ECS 服务提供静态公网 IP 地址,您的 VPC 的公有子网中必须至少有一个 NAT 网关,并将您的 ECS 服务部署到以下私有子网(具有到 NAT 网关路由的子网):专有网络。然后,出站请求将通过 NAT 网关进行代理,您将能够将 NAT 网关的弹性 IP 地址列入外部服务的白名单。