協助改善此頁面
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要提供此使用者指南,請選擇位於每個頁面右窗格中的在 GitHub 上編輯此頁面連結。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 EKS Auto 模式自動化叢集基礎設施
EKS Auto Mode 會將 Kubernetes 叢集的 AWS 管理延伸到叢集本身之外, AWS 以允許 也設定和管理基礎設施,讓工作負載能夠順暢地運作。您可以委派關鍵基礎設施決策,並利用 的專業知識 AWS 進行day-to-day操作。管理的叢集基礎設施 AWS 包含許多 Kubernetes 功能作為核心元件,而不是附加元件,例如運算自動擴展、Pod 和服務聯網、應用程式負載平衡、叢集 DNS、區塊儲存和 GPU 支援。
若要開始使用,您可以在現有叢集上部署新的 EKS Auto Mode 叢集或啟用 EKS Auto Mode。您可以使用 eksctl、 AWS CLI、、EKS APIs 或您偏好的基礎設施即程式碼工具來部署、升級或修改 AWS Management Console EKS Auto Mode 叢集。 infrastructure-as-code
透過 EKS Auto 模式,您可以繼續使用您偏好的 Kubernetes 相容工具。EKS Auto Mode 會與 Amazon EC2、Amazon EBS 和 ELB 等 AWS 服務整合,利用遵循最佳實務的 AWS 雲端資源。這些資源會自動擴展、成本最佳化並定期更新,以協助將營運成本和開銷降至最低。
功能
EKS Auto Mode 提供下列高階功能:
簡化 Kubernetes 叢集管理:EKS Auto Mode 透過為生產就緒的叢集提供最低的操作負荷,簡化 EKS 管理。使用 EKS Auto Mode,您可以放心地執行要求嚴苛的動態工作負載,而不需要深入的 EKS 專業知識。
應用程式可用性:EKS Auto Mode 會根據 Kubernetes 應用程式的需求,動態新增或移除 EKS 叢集中的節點。這可將手動容量規劃的需求降至最低,並確保應用程式的可用性。
效率:EKS Auto Mode 旨在最佳化運算成本,同時遵守 NodePool 和工作負載需求所定義的彈性。它也會終止未使用的執行個體,並將工作負載合併到其他節點,以提高成本效益。
安全性:EKS Auto Mode 會針對您的節點使用視為不可變AMIs。這些 AMIs會強制執行鎖定的軟體、啟用 SELinux 強制性存取控制,並提供唯讀根檔案系統。此外,EKS Auto Mode 啟動的節點最長生命週期為 21 天 (您可以減少),之後會自動將其取代為新的節點。這種方法透過定期循環節點來增強您的安全狀態,符合許多客戶已經採用的最佳實務。
自動化升級:EKS Auto Mode 可讓您的 Kubernetes 叢集、節點和相關元件與最新的修補程式保持最新狀態,同時遵守您設定的 Pod 中斷預算 (PDBs) 和 NodePool 中斷預算 NDBs)。最長可達 21 天的生命週期,如果封鎖 PDBs或其他組態阻止更新,則可能需要介入。
受管元件:EKS Auto Mode 包含 Kubernetes 和 AWS 雲端功能作為核心元件,否則必須作為附加元件進行管理。這包括對 Pod IP 地址指派、Pod 網路政策、本機 DNS 服務、GPU 外掛程式、運作狀態檢查程式和 EBS CSI 儲存體的內建支援。
可自訂的 NodePools 和 NodeClasses:如果您的工作負載需要變更儲存、運算或聯網組態,您可以使用 EKS Auto 模式建立自訂 NodePools 和 NodeClasses。雖然您不應該編輯預設 NodePools 和 NodeClasses,但您可以將新的自訂 NodePools 或 NodeClasses 與預設組態一起新增,以符合您的特定需求。
自動化元件
EKS Auto Mode 透過自動化關鍵基礎設施元件,簡化 Amazon EKS 叢集的操作。啟用 EKS Auto Mode 可進一步減少管理 EKS 叢集的任務。
以下是自動化的資料平面元件清單:
-
運算:對於許多工作負載,使用 EKS Auto Mode,您可以忘記 EKS 叢集的許多運算層面。其中包含:
-
節點:EKS Auto Mode 節點的設計可視為設備。EKS Auto Mode 會執行下列動作:
-
選擇適當的 AMI,該 AMI 設定了執行工作負載所需的許多服務,無需介入。
-
使用 SELinux 強制執行模式和唯讀根檔案系統,鎖定對 AMI 上檔案的存取。
-
禁止 SSH 或 SSM 存取,以防止直接存取節點。
-
包含 GPU 支援,以及適用於 NVIDIA 和 Neuron GPUs 的個別核心驅動程式和外掛程式,可實現高效能工作負載。
-
自動處理 EC2 Spot 執行個體中斷通知和 EC2 執行個體運作狀態事件
-
-
自動擴展:依賴 Karpenter
自動擴展,EKS Auto Mode 會監控不可排程的 Pod,並使新節點可以部署以執行這些 Pod。隨著工作負載終止,EKS Auto Mode 會在不再需要節點時動態中斷和終止節點,將資源用量最佳化。 -
升級:控制節點可視需要簡化 EKS Auto Mode 提供安全修補程式、作業系統和元件升級的能力。這些升級旨在將工作負載中斷降至最低。EKS Auto Mode 會強制執行最長 21 天的節點生命週期,以確保up-to-date軟體和 APIs。
-
-
負載平衡:EKS Auto Mode 與 Amazon 的 Elastic Load Balancing 服務整合,自動化 Kubernetes 服務和輸入資源的負載平衡器佈建和組態,以簡化負載平衡。它支援 Application 和 Network Load Balancer 的進階功能、管理其生命週期,並擴展以符合叢集需求。此整合提供符合 AWS 最佳實務的生產就緒負載平衡解決方案,可讓您專注於應用程式,而非基礎設施管理。
-
儲存:EKS Auto Mode 會在節點終止時設定磁碟區類型、磁碟區大小、加密政策和刪除政策,為您設定暫時性儲存。
-
網路:EKS Auto Mode 可自動化 Pod 和服務連線的關鍵網路任務。這包括 IPv4/IPv6 支援,以及使用次要 CIDR 區塊來擴展 IP 地址空間。
-
Identity and Access Management:您不需要在 EKS Auto Mode 叢集上安裝 EKS Pod Identity Agent。
有關這些元件的更多資訊,請參閱 了解 EKS Auto Mode 的運作方式。
組態
雖然 EKS Auto Mode 會在不介入的情況下有效地管理您的大部分資料平面服務,但有時候您可能會想要變更部分服務的行為。您可以透過下列方式修改 EKS Auto Mode 叢集的組態:
-
Kubernetes DaemonSets:您可以改為使用 Kubernetes 協助程式集,而不是修改安裝在節點上的服務。Daemonset 設計為由 Kubernetes 管理,但在叢集中的每個節點上執行。透過這種方式,您可以新增特殊服務來監控或以其他方式監看節點。
-
自訂 NodePools 和 NodeClasses:預設 NodePools 和 NodeClasses 是由 EKS Auto 模式設定,您不應對其進行編輯。若要自訂節點行為,您可以為使用案例建立其他 NodePools 或 NodeClasses,例如:
-
選取特定執行個體類型 (例如,加速處理器或 EC2 Spot 執行個體)。
-
隔離工作負載以進行安全或成本追蹤。
-
設定暫時性儲存設定,例如 IOPS、大小和輸送量。
-
-
負載平衡:EKS Auto Mode 作為 Kubernetes 物件執行的某些服務,例如負載平衡,可以直接在您的 EKS Auto Mode 叢集上設定。
如需設定 EKS Auto Mode 選項的詳細資訊,請參閱 設定 EKS 自動模式設定。
共同責任模式
AWS 共同責任模型定義 AWS 和 客戶之間的安全與合規責任。以下影像和文字會比較和對比 EKS Auto Mode AWS 和 EKS 標準模式之間的客戶和責任差異。

EKS Auto Mode 會將 Kubernetes 基礎設施的大部分共同責任轉移給客戶 AWS。透過 EKS Auto Mode, AWS 承擔更多雲端安全的責任,這曾是客戶的責任,現在已共同承擔。客戶現在可以更專注於其應用程式,同時 AWS 管理基礎基礎設施。
客戶責任
在 EKS Auto 模式下,客戶會繼續維護應用程式容器的責任,包括可用性、安全性和監控。它們也會維持對 VPC 基礎設施和 EKS 叢集組態的控制。此模型可讓客戶專注於應用程式特定的考量,同時委派叢集基礎設施管理給 AWS。每個節點的選用功能可以透過 AWS 附加元件包含在叢集中。
AWS 責任
使用 EKS Auto Mode 時, AWS 擴展其責任,包括與已在未使用 Auto Mode 的 EKS 叢集中管理的元件相比,管理幾個額外的關鍵元件。特別是,EKS Auto Mode 會接管啟動的 EC2 執行個體的組態、管理、安全性和擴展,以及用於負載平衡、IP 地址管理、聯網政策和區塊儲存的叢集功能。下列元件由 AWS 以 EKS Auto 模式管理:
-
自動模式啟動的 EC2 執行個體:利用 Amazon EC2 受管執行個體 AWS 來處理節點的完整生命週期。EC2 受管執行個體負責作業系統組態、修補、監控和運作狀態維護。在此模型中,執行個體本身和在其上執行的訪客作業系統都是 的責任 AWS。節點使用 Bottlerocket
AMIs 的變體,這些變體已針對執行容器進行最佳化。Bottlerocket AMIs 具有鎖定的軟體、不可變的根檔案系統和安全的網路存取 (以防止透過 SSH 或 SSM 直接通訊)。 -
Cluster Capabilities: AWS 管理運算自動擴展、具有網路政策強制執行的 Pod 聯網、Elastic Load Balancing 整合和儲存驅動程式組態。
-
叢集控制平面: AWS 繼續管理 Kubernetes API 伺服器、跨帳戶 ENIs 和 等資料庫,如同標準 EKS。
-
Foundation Services 和全球基礎設施: AWS 負責基礎運算、儲存、聯網和監控服務,以及區域、本機區域和節點的全球基礎設施。