NLB 为所有子网提供一个 IP

NLB with one IP for all subnets

我正在尝试设置一个 NLB 来为我的 ECS Fargate 实例提供主要入口 IP,但我很困惑为什么您需要为每个子网指定一个弹性 IP,而不仅仅是一个整个事情的知识产权。这是否意味着每个 IP 只能将流量转发到自己的子网?我的目标实例副本将分布在多个子网中,因此我只想要一个分布在所有实例中的中央 IP,无论是哪个子网。

是的,对于这个特定的应用程序,我的负载均衡器确实需要一个静态 IP,不能使用 DNS。

谁能帮我解释一下为什么每个子网都需要一个 IP,是否可以只使用一个 IP 在多个子网之间进行负载平衡?

NLB 将跨 多个可用性区域 (AZ) 部署,如果关联的子网位于一个以上的 AZ 中。

假设您的子网位于两个可用区中。在这种情况下,NLB 将创建两个节点,每个可用区一个 ,以实现高可用性目的。每个节点都有自己的静态 public IP 地址。每个节点只能将流量转发到其 AZ 中的子网(默认情况下不能跨 AZ)如果您使用 NLB 的 url,它将解析到这两个 IP 地址。

如果您只想使用这两个 IP 地址中的一个,则必须启用 cross-zone load balancing。默认情况下它是禁用的。