REL02-BP03 確保 IP 子網路分配帳戶具有擴展性和可用性
Amazon VPC IP 位址範圍必須足夠大,以因應工作負載的要求,包括考慮將來擴展 IP 位址以及跨可用區域將 IP 位址分配給子網路。這包括負載平衡器、EC2 執行個體和容器型應用程式。
規劃您的網路拓樸時,首先要定義 IP 位址空間。私有 IP 位址範圍 (依循 RFC 1918 指引) 應分配給各 VPC。在此流程中請滿足下列要求:
-
允許每個區域為多於一個 VPC 準備 IP 位址空間。
-
在 VPC 內,允許多個子網路,以便可涵蓋多個可用區域。
-
考慮在 VPC 內留下未用 CIDR 區塊空間,以供未來擴展。
-
確保有 IP 位址空間可以滿足您可能會用到之 Amazon EC2 執行個體的任何臨時機群需求,例如,用於機器學習的 Spot 機群、Amazon EMR 叢集或 Amazon Redshift 叢集。Kubernetes 叢集 (例如 Amazon Elastic Kubernetes Service (Amazon EKS)) 也應考慮類似的考量,因為預設情況下,每個 Kubernetes Pod 都會從 VPC CIDR 區塊指派一個可路由的位址。
-
請注意,在各子網路 CIDR 區塊中,前四個 IP 位址和最後一個 IP 位址均預留起來,無法供您使用。
-
請注意,雖然無法變更或刪除分配給 VPC 的最初 VPC CIDR 區塊,但您可以將不重疊的其他 CIDR 區塊新增至 VPC。無法變更子網路 IPv4 CIDR,但可以變更 IPv6 CIDR。
-
最大可能的 VPC CIDR 區塊是 /16,最小的是 /28。
-
考慮使用其他連線網路 (VPC、內部部署或其他雲端供應商),並確保不重疊的 IP 位址空間。如需詳細資訊,請參閱 REL02-BP05 在連線的所有私有位址空間中強制使用不重疊的私有 IP 位址範圍。
預期成果:可擴展的 IP 子網路可以幫助您適應未來的成長,並避免不必要的浪費。
常見的反模式:
-
未能考慮未來的成長,導致 CIDR 區塊太小且需要重新設定,進而可能造成停機。
-
錯誤預估 Elastic Load Balancer 可以使用的 IP 位址數量。
-
在相同的子網路中部署許多高流量負載平衡器
-
使用自動擴展機制,同時無法監控 IP 位址使用情況。
-
定義過大的 CIDR 範圍遠遠超出了未來的成長預期,這可能會導致難以與具有重疊位址範圍的其他網路進行對等互連。
建立此最佳實務的優勢:如此可確保您可以適應工作負載的增長,並在向上擴展時繼續提供可用性。
未建立此最佳實務時的曝險等級:中
實作指引
規劃網路以適應增長、法規要求以及與其他網路整合。增長可能會被低估,合規要求可能會發生變化,並且如果沒有適當的規劃,採購或私有網路連線可能會難以實作。
-
根據您的服務要求、延遲、法規和災難復原 (DR) 要求,選取相關的 AWS 帳戶和區域。
-
確定您對區域 VPC 部署的需求。
-
確定 VPC 的大小。
-
確定是否要部署多 VPC 連線。
-
確定您是否需要區隔聯網以滿足法規要求。
-
使用適當大小的 CIDR 區塊製作 VPC,以滿足當前和未來需求。
-
如果您有未知的增長預測,您可能希望選擇較大的 CIDR 區塊,以減少未來重新配置的可能性
-
-
請考慮使用子網路的 IPv6 定址
做為雙堆疊 VPC 的一部分。IPv6 非常適合在包含暫時性執行個體或容器的私有子網路中使用,否則需要大量 IPv4 位址。
-
資源
相關 Well-Architected 的最佳實務:
相關文件:
相關影片: