REL02-BP03 确保 IP 子网分配考虑扩展和可用性
Amazon VPC IP 地址范围必须足够大,能够满足工作负载要求,包括考虑未来的扩展以及跨可用区为子网分配 IP 地址。这包括负载均衡器、EC2 实例和基于容器的应用程序。
当您规划网络拓扑时,第一步是定义 IP 地址空间本身。应(按照 RFC 1918 准则)为每个 VPC 分配私有 IP 地址范围。作为此流程的一部分,要满足以下要求:
-
在每个区域中为多个 VPC 留出 IP 地址空间。
-
在 VPC 内,为多个子网留出空间,这样您就可以跨多个可用区。
-
请考虑在 VPC 内保留未使用的 CIDR 块空间以用于未来扩展。
-
确保 IP 地址空间足以满足可能使用的任何 Amazon EC2 实例临时性队列的需求,如适用于机器学习的竞价型实例集、Amazon EMR 集群或 Amazon Redshift 集群。若是 Amazon Elastic Kubernetes Service(Amazon EKS)等 Kubernetes 集群,也应考虑这些因素。因为默认情况下,每个 Kubernetes 容器组(pod)都会从 VPC CIDR 块中分配一个可路由的地址。
-
注意,每个子网 CIDR 块中的前四个 IP 地址和最后一个 IP 地址将被预留,无法供您使用。
-
注意,最初被分配到您 VPC 的 VPC CIDR 块无法被更改或删除,但可以向 VPC 添加额外的非重叠的 CIDR 块。虽然无法更改子网 IPv4 CIDR,但可以更改 IPv6 CIDR。
-
可以使用的最大 VPC CIDR 块为 /16,最小为 /28。
-
考虑其他互联网络(VPC、本地部署或其他云提供商),并确保 IP 地址空间不重叠。有关更多信息,请参阅 REL02-BP05 在互相连接的所有私有地址空间中强制实施非重叠的私有 IP 地址范围。
期望结果:可扩展的 IP 子网有助于您适应未来的增长,并避免不必要的浪费。
常见反模式:
-
没有考虑未来的增长,导致 CIDR 块过小且需要重新配置,这可能会造成停机。
-
错误估计弹性负载均衡器可以使用的 IP 地址数量。
-
在相同子网中部署多个高流量负载均衡器。
-
使用自动扩缩机制,但未能监控 IP 地址使用情况。
-
定义过大的 CIDR 范围,远远超出未来的增长预期,这会导致地址范围重叠,难以与其他网络建立对等连接。
建立此最佳实践的好处:这可确保您能适应工作负载增长要求,并在纵向扩展过程中继续提供可用性。
在未建立这种最佳实践的情况下暴露的风险等级:中
实施指导
规划您的网络以适应增长、符合监管合规性以及实现与其他服务的集成。如果没有合理的规划,则增长可能会被低估、监管合规性可能会发生变化并且购置或私有网络连接可能难以实施。
-
根据您服务、延迟、法规和灾难恢复(DR)要求,选择相关 AWS 账户 和区域。
-
确定对区域 VPC 部署的需求。
-
确定 VPC 的大小。
-
确定是否要部署多 VPC 连接。
-
确定是否需要隔离网络来满足法规要求。
-
使用适当大小的 CIDR 块创建 VPC,满足当前和未来的需求。
-
如果增长预测不明朗,则可能需要偏向更大的 CIDR 块,降低未来重新配置的可能性
-
-
在双堆栈 VPC 中,考虑对子网使用 IPv6 寻址
。IPv6 非常适合用于包含大量临时实例集或临时容器集的私有子网,因此需要大量 IPv4 地址。
-
资源
相关的 Well-Architected 最佳实践:
相关文档:
相关视频: