【问题标题】:Routing for private EC2 instances behind Load Balancers in a VPCVPC 中负载均衡器后面的私有 EC2 实例的路由
【发布时间】:2021-03-30 02:04:55
【问题描述】:

我有 4 个 EC2 实例,每个可用区 (2AZ) 的私有子网中有 2 个,一个托管 App A,另一个托管 AppB。这些实例位于 2 个面向 Internet 的 ALB(每个应用程序一个 ALB)后面,路由 53 根据子域名将流量路由到相应的 ALB,每个公有子网中的 2 个 NAT 网关路由私有实例的 Internet 流量.

我希望 appA 和 AppB 使用每个应用程序的域名使用 HTTPs 进行通信。 每个应用程序的流量是否来自负载均衡器?由于每个 EC2 实例只允许来自其 ALB 的安全组的流量。 每个应用程序的安全组是否应该允许来自另一个应用程序的流量,或者流量将来自负载均衡器? 我为 VPC 激活了 DNS 解析。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 load-balancing amazon-vpc


    【解决方案1】:

    对于您描述的设置中的流量,域的入口流量将通过负载均衡器进入,然后将请求转发到 EC2 实例。只要负载均衡器安全组允许入站流量,您就会收到流量。

    对于您的应用程序的出口流量,它将取决于您的 EC2 和路由配置。

    如果您的 EC2 实例位于公共子网中(并且具有公共 IP 地址),则 EC2 将通过 internet gateway 路由流量。如果您的 EC2 实例位于私有子网中,您将需要使用 NAT Gateway 或 NAT instance 将流量路由到 Internet。

    这些选项将在route table 中为适用的子网配置,此外,您的 EC2 实例的出站安全组规则将需要允许访问您想要的目标 IP、端口和协议.默认情况下,安全组将允许所有出站访问。

    【讨论】:

    • 我已经在每个 AZ 中都有一个公共子网,其中 NAT 网关将流量路由到互联网。每个 EC2 的出站流量允许所有出站流量。 ALB 的安全组仅允许端口 443 上的入站流量用于启用 HTTP 重定向的 HTTPS。
    • 如果子网使用 NAT 网关,那么它们将是私有子网 :) 流量将通过 NAT 网关路由,而其他应用程序将从 NAT 网关 IP 接收入站流量
    • 我没明白你的意思? NAT 网关位于公共子网中,EC2 实例位于私有子网中,互联网流量被路由到 NAT 网关。我关心的是来自每个实例的流量,我需要允许来自每个应用程序的流量通过 HTTPS
    • 对,我明白你的意思,EC2s 安全组只需要允许 HTTPS 出站,目的地允许来自 NAT 网关弹性 IP 的入站流量
    • 目前,每个 ALB 的安全组只允许 Internet 流量到每个 EC2 实例。那么我应该更新 EC2 实例或负载均衡器的安全组的入站规则吗?内部流量是否会从一个实例离开 VPC 到另一个实例?我想限制从它的负载均衡器的 sec 组对每个 EC2 的访问
    猜你喜欢
    • 2019-03-26
    • 1970-01-01
    • 1970-01-01
    • 2016-06-01
    • 1970-01-01
    • 2019-01-18
    • 2017-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多