在 AWS Outpost 上為 Amazon EKS 叢集建立 VPC 和子網路 - Amazon EKS

協助改善此頁面

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

想要為此使用者指南做出貢獻? 選擇 GitHub 上的編輯此頁面連結,該連結位於每個頁面的右窗格中。您的貢獻將幫助我們的使用者指南更適合每個人。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 AWS Outpost 上為 Amazon EKS 叢集建立 VPC 和子網路

建立本機叢集時,您需要指定 VPC 與至少一個在 Outpost 上執行的私人子網路。本主題概述了本機叢集的 VPC 和子網路要求和考量事項。

VPC 要求和注意事項

建立本機叢集時,您指定的 VPC 必須符合下列要求和考量事項:

  • 確保 VPC 具有足夠的 IP 地址用於本機叢集、任何節點以及您要建立的其他 Kubernetes 資源。如果您想要使用的 VPC 沒有足夠的 IP 地址,請增加可用的 IP 地址數量。您可以透過將其他無類別域間路由 (CIDR) 區塊與 VPC 關聯來完成此操作。您可以在建立叢集的之前或之後,將私有 (RFC 1918) 和公有 (非 RFC 1918) CIDR 區塊與 VPC 關聯。叢集可能最多需要 5 小時才能辨識您與 VPC 關聯的 CIDR 區塊。

  • VPC 無法具有指派的 IP 字首或 IPv6 CIDR 區塊。由於這些限制條件,在將更多 IP 地址指派給字首為 且不適用於 VPC 的 Amazon EKS 節點中涵蓋的資訊。 了解叢集、 Pods和 服務的 IPv6 地址

  • VPC 已啟用 DNS 主機名稱和 DNS 解析。如果沒有這些功能,本機叢集無法建立,您需要啟用這些功能並重新建立叢集。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的 VPC 的 DNS 屬性

  • 若要透過區域網路存取本機叢集,VPC 必須與 Outpost 的本機閘道路由表關聯。如需詳細資訊,請參閱 Outposts AWS 使用者指南中的 VPC 關聯

子網需求和注意事項

在建立叢集時,指定至少一個私有子網路。如果您指定多個子網路,Kubernetes 控制平面執行個體會平均分佈在子網路上。如果指定多個子網路,則子網路必須存在於相同的 Outpost 上。此外,子網路還必須具有適當的路由和安全群組許可,才能互相通訊。在建立本機叢集時,您指定的子網路必須符合下列要求:

  • 子網路都位於相同的邏輯 Outpost 上。

  • 這些子網路一起至少有三個可用於 Kubernetes 控制平面執行個體的 IP 地址。如果指定三個子網路,每個子網路必須至少有一個可用的 IP 地址。如果指定兩個子網路,每個子網路必須至少有兩個可用的 IP 地址。如果指定一個子網路,該子網路必須至少有三個可用的 IP 地址。

  • 子網路具有 Outpost 機架本機閘道的路由,以存取您本機網路上的 Kubernetes API 伺服器。如果子網路沒有通往 Outpost 機架本機閘道的路由,您必須從 VPC 內與 Kubernetes API 伺服器通訊。

  • 子網必須使用 IP 地址型命名。Amazon EKS 不支援 Amazon EC2 資源型命名

子網路存取 AWS 服務

Outposts 上的本機叢集私有子網路必須能夠與區域 AWS 服務通訊。為此,您可以使用 NAT 閘道進行網際網路對外存取,或者,如果您想要所有流量在 VPC 內保持私密,可使用介面 VPC 端點

使用 NAT 閘道

本機叢集在 Outposts 上的私有子網路必須具有關聯的路由表,其路由至位於 Outpost 父可用區域中的公有子網路中的 NAT 閘道。公有子網路必須擁有到網際網路閘道的路由。此 NAT 閘道會啟用傳出網際網路存取,並防止來自網際網路未經要求的傳入連線連接到 Outpost 上的執行個體。

使用 介面 VPC 端點

如果本機叢集在 Outposts 上的私有子網路沒有傳出網際網路連線,或者如果您想要在 VPC 中保持所有流量的私密性,則必須在建立叢集之前,在區域子網路中建立下列界面 VPC 端點和閘道端點

端點 端點類型

com.amazonaws.region-code.ssm

介面

com.amazonaws.region-code.ssmmessages

介面

com.amazonaws.region-code.ec2messages

介面

com.amazonaws.region-code.ec2

介面

com.amazonaws.region-code.secretsmanager

介面

com.amazonaws.region-code.logs

介面

com.amazonaws.region-code.sts

介面

com.amazonaws.region-code.ecr.api

介面

com.amazonaws.region-code.ecr.dkr

介面

com.amazonaws.region-code.s3

閘道

端點必須符合下列需求:

  • 在位於 Outpost 父可用區域中的私有子網路中建立

  • 已啟用私有 DNS 名稱

  • 擁有連接的安全群組,該群組允許來自私有 Outpost 子網路之 CIDR 範圍的輸入 HTTPS 流量。

建立端點會產生費用。如需詳細資訊,請參閱 AWS PrivateLink 定價。如果您需要Pods存取其他 AWS 服務,則需要建立其他端點。如需端點的完整清單,請參閱AWS 與 AWS PrivateLink 整合的 服務

建立 VPC

您可以使用下列其中一個 AWS CloudFormation 範本來建立符合先前需求的 VPC:

  • 範本 1 – 此範本會在 Outpost 上建立具有一個私有子網路的 VPC,並在 AWS 區域中建立一個公有子網路。私有子網路透過 NAT Gateway 路由至網際網路,而 NAT Gateway 位於 AWS 區域的公有子網路中。此範本可用於在具有輸出網際網路存取權的子網路中建立本機叢集。

  • 範本 2 – 此範本會在 Outpost 上建立具有一個私有子網路的 VPC,以及在子網路中建立本機叢集所需的最小一組 VPC 端點,該子網路沒有輸入或輸出網際網路存取 (也稱為私有子網路)。