我们正在使用由 EC 实例的公共子网组成的现有设置;它们可以在 ELB 下访问并且工作正常。 但是,对于外部客户端在这些实例上使用 API,我认为需要 NAT 网关(IP 不在网络内部,类似于无服务器)。
我们尝试过、失败过、再尝试过。像this这样的问题几乎有帮助,但我仍然不明白问题的原因。启用 NAT GW 后我们无法访问站点。
已经有一个正在运行的 ELB。 如果我们要实现 NAT GW,ELB 和 NAT GW 如何结合在一起? 要为其下的 EC2 实例的公共子网提供服务吗? 当我们添加 NAT GW 时,响应变为 403。
根据您想要公开 VPC 的方式,您可以决定以下路径之一。要问的问题是:
最佳实践是避免将实例暴露在公共互联网上。您可以将它们保留在 ELB 后面的私有子网中,如下图所示。
设置1:
请注意,对于上述设置,应在公共子网中创建 ALB 和 NAT 网关(1 或 2 个用于冗余)。
设置2:
在此部署中,避免使用 NAT 网关,并且实例双向暴露于互联网。在这种情况下,实例将需要 Publip IP 或弹性 IP 来直接联系。
在这两种情况下,通过应用程序负载均衡器 [ALB] 进行的访问都应该可以正常工作。在路由表上记下