为 AWS Elastic Load Balancer 指定的 public 子网中有 8 个免费 IP 地址?

8 free IP addresses in the public subnet specified for AWS Elastic Load Balancer?

the relevant section of AWS Official Doc起,提出以下要求:

When you create a load balancer, you must specify one public subnet from at least two Availability Zones. You can specify only one public subnet per Availability Zone.

To ensure that your load balancer can scale properly, verify that each subnet for your load balancer has a CIDR block with at least a /27 bitmask (for example, 10.0.0.0/27) and has at least 8 free IP addresses. Your load balancer uses these IP addresses to establish connections with the targets.

但是,我不明白为什么 -- 关于要求 8 个免费 IP 地址 的一点。有人可以解释一下吗?提前致谢!

我在网上搜索了一下,没有找到很好的解释。我认为理解这个要求可能有助于我理解 ELB 是如何工作的(我确实阅读了关于“How ELB works”的章节,但我仍然感到困惑)

AWS Elastic Load Balancers 可以扩大和缩小以满足您网站的流量需求。 scaling up 使用您子网中的私有 IP 地址。 AWS 不太了解它的工作原理。我能找到的最好的是对它的模糊引用。

load balancers that all feature the high availability, automatic scaling, and robust security necessary to make your applications fault tolerant

8 free IP addresses 在下面模糊地提到,一般来说它允许 ELB 水平扩展。

If subnets in your VPC run out of available IP addresses, AWS resources, such as load balancers, might not respond successfully to increased traffic.

It's a best practice to keep at least eight IP addresses in each subnet available for use. There are two ways to free up or add additional IP addresses for use with load balancers.

仅供参考,如果您尝试创建没有八个可用 IP 地址的 ELB,它将失败,您将收到以下错误消息:

参考资料