Amazon EKS 常見問答集

Amazon EKS 自動模式

Amazon EKS 自動模式可完全自動化 AWS 上的 Kubernetes 叢集管理,透過自動佈建基礎設施、擴展資源、管理核心附加元件以及最佳化成本來簡化操作。EKS 自動模式提供由 AWS 管理的安全且可擴展的叢集基礎設施,並具有整合的 Kubernetes 功能,例如運算自動擴展、Pod 和服務聯網、應用程式負載平衡、叢集 DNS、區塊儲存和 GPU 支援。它符合 Kubernetes,這意味著您可以將其與所有喜歡的 Kubernetes 兼容的工具一起使用。在 EKS 叢集中執行的應用程式現在可以使用 AWS 受管 EC2 執行個體、Amazon Elastic Block Store (Amazon EBS) 磁碟區、負載平衡器以及其他雲端資源,而這些資源均採用經過驗證的最佳實務進行設定、自動擴展、成本最佳化並保持最新狀態,同時最大限度地降低成本和營運開銷。

Amazon EKS 自動模式適用於執行 Kubernetes 1.29+ 的全新和現有 EKS 叢集,可在所有提供 EKS 的 AWS 區域中提供,AWS GovCloud (美國) 和中國區域除外。若要開始使用,只需使用 EKS API、AWS Console、eksctl 或您偏好的基礎設施即程式碼 (IaC) 工具,即可在全新或現有叢集中啟用 EKS 自動模式,並指定其 AWS 受管運算基礎設施應使用的 IAM 角色。依預設,EKS 自動模式會在叢集中建立最佳實務、一般用途運算擴展組態,從而讓您能夠快速開始執行應用程式。若要更深入的自訂,您可以選擇停用這些預設,並使用叢集中的 Kubernetes API 建立額外的運算擴展和基礎設施組態。

Amazon EKS 自動模式將整合的 Kubernetes 功能和專為現代應用程式打造的 AWS 管理基礎設施組合引入所有 EKS 叢集中。其功能是 Kubernetes 應用程式執行所需的基礎 – 運算、儲存、聯網和監控。它們是 EKS 的整合部分,您不必擔心安裝、擴展或管理問題。依預設,會根據 AWS 和 Kubernetes 最佳實務進行設定。對於進階使用案例,您可以在 EKS 自動模式的最佳實務之上建置,進一步自訂應用程式執行的基礎設施,而無需進行昂貴的持續營運工作。為了確保您的應用程式始終擁有所需的基礎設施,EKS 自動模式會持續觀察它們,並設定、建立和最佳化 AWS 受管的資源 (EC2 執行個體和 EBS 磁碟區) 以滿足其需求。您應用程式執行的基礎設施會自動更新為最新的安全性和錯誤修正,讓您能夠保持安全和最新狀態,同時最大程度地減少對執行應用程式的中斷。

與 EKS 叢集中客戶受管的 AWS 基礎設施相比,AWS 使用 Amazon EKS 自動模式來擴展其責任。除了已啟用 EKS 自動模式的 Kubernetes 叢集控制平面外,AWS 還負責保護、設定和管理應用程式執行所需的 EKS 叢集中的 AWS 基礎設施。因此,相較於與客戶受管的資源,使用 EKS 自動模式的 EKS 叢集中的 AWS 基礎設施資源 (例如 EC2 執行個體) 具有限制。例如,您無法透過 SSH 或 SSM 遠端連線、修改執行個體 IAM 角色、取代根磁碟區,或將其他彈性網路介面連接到 EKS 自動模式管理的 EC2 執行個體,因為這樣做會限制 AWS 保護和管理它們的能力。

對於想要執行 EKS 的客戶來說,Amazon EKS 搭配 AWS Fargate 仍是一種選擇,但 Amazon EKS 自動模式是未來建議的方法。EKS 自動模式完全符合 Kubernetes,支援所有上游 Kubernetes 基本元素和 Istio 等平台工具,而 Fargate 無法支援這些工具。EKS 自動模式亦完全支援所有 EC2 執行時期購買選項,包括 GPU 和 Spot 執行個體,讓客戶能夠利用協商的 EC2 折扣和其他節省機制,而這些功能在搭配使用 EKS 與 Fargate 時不可用。此外,EKS 自動模式允許客戶實現與 Fargate 相同的隔離模型,使用標準 Kubernetes 排程功能,以確保每個 EC2 執行個體會執行單一應用程式容器。透過採用 Amazon EKS 自動模式,客戶可以充分發揮在 AWS 上執行 Kubernetes 的全部優勢,這是一個完全符合 Kubernetes 的平台,可靈活運用豐富的 EC2 和採購選項,同時保留 Fargate 提供的基礎設施管理中的易用性和抽象化。

Amazon EKS 自動模式透過三種方式協助提高 EKS 叢集的安全性:1/ EKS 自動模式建立的 AWS 受管基礎設施會根據 AWS 安全最佳實務進行設定,並根據 Center for Internet Security (CIS) 第 1 級基準測試進行強化,包括:無遠端存取、不可變的根檔案系統以及核心層級強制存取控制。2/ EKS 自動模式的 AWS 受管 EC2 執行個體一旦可用之後,AWS 就會自動更新為最新的安全性和錯誤修正。如果可能,這些修補程式會就地套用,而不會中斷執行的應用程式或取代執行個體。3/ 依預設,EKS 自動模式會為其 AWS 受管 EC2 執行個體設定十四天 (14) 的最長生命週期,進而協助您滿足全行業的安全性和合規最佳實務。如果您的使用案例需要更短或更長的執行個體生命週期,您可以將 EKS 自動模式設定為滿足您需求的持續時間,最長可達 21 天。

是,在將 EKS 控制平面升級到新的 Kubernetes 版本後,EKS 自動模式啟動的新執行個體,由於應用程式擴展,會使用與控制平面版本相符的最新 Kubernetes 軟體執行。同時,現有執行個體會使用 Kubernetes 軟體逐步更新為新的 Kubernetes 版本。加上 EKS 自動模式啟動的執行個體的預設 14 天最長生命週期,這意味著,依預設,您的叢集將在升級 EKS 叢集的 Kubernetes 版本後不遲於十四 (14) 天內完全自動升級。

Amazon EKS 自動模式會提供基本 Kubernetes 功能的整合和受管版本,例如運算、儲存、聯網和監控。其中包括:1/ 可促進安全性和執行個體管理的 EKS 自動模式的代理程式,2/ containerd 容器執行時期,能夠讓 Kubernetes 有效執行容器的基本元件,3/ kubelet,可管理每個運算執行個體上的 Kubernetes Pod 的生命週期和運作狀態,4/ 可啟用叢集內路由的網路代理,5/ 一個受管的、上游相容 Karpenter 控制器,6/ 用於儲存的 Amazon EBS、Amazon Elastic File System (Amazon EFS) 和 Amazon Simple Storage Service (Amazon S3) 容器儲存介面 (CSI) 控制器,7/ 用於 IP 位址管理、Pod 聯網和網路政策的 AWS VPC 容器網路介面 (CNI) 的受管版本,8/ 用於叢集內服務探索的 CoreDNS,9/ 以及用於協調外部負載平衡器的 AWS 負載平衡器控制器。

使用 Amazon EKS 自動模式,您無需安裝或管理某些 EKS 附加元件,例如 VPC CNI、CoreDNS、立方代理和 CloudWatch 可觀測性代理程式。使用 EKS 自動模式,您的 EKS 叢集包含這些附加元件提供之功能的集成版本。但是,如果您仍有工作負載尚未遷移至 EKS 自動模式,則需要繼續為其使用這些 EKS 附加元件。除了 EKS 自動模式的整合功能取代的 EKS 附加元件外,其他附加元件還可以使用 EKS 自動模式在叢集上執行。

是,依預設,可以使用 EC2 DescribeInstances API 或 AWS Console 檢視由 EKS 自動模式啟動的受管 EC2 執行個體。由於這些執行個體由 AWS 管理,因此您可以使用 EC2 API 採取的動作僅限於那些不會影響 EKS 履行其擴展營運責任之能力的動作。依預設,EKS 自動模式具有一般用途運算組態,非常適合常見使用案例。如有需要,您可以自訂由 EKS 自動模式啟動的 EC2 執行個體。您可以使用 EKS 自動模式的節點類別 Kubernetes API 修改 EKS 自動模式執行個體的執行時期組態設定。

是。啟動符合資格的 EC2 執行個體時,系統會自動套用 Compute Savings Plans 和預留執行個體。如需詳細資訊,請參閱定價頁面

Amazon EKS 自動模式的 Kubernetes 功能會透過一組整合式控制器交付,其中這些控制器會發出各種可用於了解其行為的 Kubernetes 事件。

混合部署

混合部署有三個 Amazon EKS 選項:Amazon EKS、Amazon EKS Anywhere 和 Amazon EKS Connector。您可以使用 Amazon EKS 在 AWS 區域、AWS Local Zones、AWS Wavelength Zone 中的 AWS 託管的基礎設施上執行節點,或使用 AWS Outposts 和 Amazon EKS 混合節點在您自己的內部部署設施中執行節點。AWS Outposts 是 AWS 受管基礎設施,可在您的設施中執行,而 Amazon EKS 混合節點則在您的設施中管理的裸機或虛擬化基礎設施上執行。如果您需要在隔離或氣隙隔離環境中執行,您可以使用 Amazon EKS Anywhere,這是由客戶管理、受 AWS 支援的 Kubernetes 管理軟體,可在您管理的基礎設施上執行。或者,您也可以使用 Amazon EKS Connector 在 Amazon EKS 主控台中檢視任何 Kubernetes 叢集。如需適用於內部部署和邊緣部署的 Amazon EKS 選項的詳細資訊,請參閱 Amazon EKS 使用者指南中的部署選項

您可以使用 Amazon EKS 在 AWS Outposts 上執行自我管理節點,其叢集與您在 AWS 雲端中執行工作負載所用的叢集相同。使用 Amazon EKS on AWS Outposts 時,您可以使用與 AWS 雲端中工作負載所用相同的許多整合,包括用於運算的 Amazon EC2 執行個體、用於聯網的 Amazon VPC 和 VPC CNI、用於儲存的 Amazon EBS 磁碟區,以及用於輸入的 Application Load Balancers (ALB)。42U Outpost 機架支援在 AWS Outposts 上具有節點的 Amazon EKS。或者,您也可以在 AWS Outposts 部署整個 Kubernetes 叢集,並在 AWS Outposts 上使用 Amazon EKS 本機叢集。當您執行 Amazon EKS on AWS Outposts 時,您需要為 Amazon EKS 叢集和 AWS Outposts 容量付費。如需詳細資訊,請參閱 Amazon EKS on AWS Outposts 使用者指南

使用 Amazon EKS 混合節點,您可以將內部部署和邊緣基礎設施用作 Amazon EKS 叢集中的節點。藉助 Amazon EKS 混合節點,AWS 可管理 AWS 託管的 Kubernetes 控制平面,您也可以管理在內部部署或邊緣環境中執行的混合節點。Amazon EKS 混合節點整合不同環境的 Kubernetes 管理作業,並將內部部署和邊緣應用程式的 Kubernetes 控制平面交由 AWS 管理。Amazon EKS 混合節點可與任何內部部署硬體或虛擬機器搭配使用,您也可以搭配 Amazon EKS 混合節點來使用各種 Amazon EKS 功能,包括 Amazon EKS 附加元件、Amazon EKS Pod 身分識別、叢集存取實體、叢集洞察以及 Kubernetes 版本延伸支援。Amazon EKS 混合節點可與 AWS 服務原生整合,以進行集中式監控、日誌記錄和身分識別管理。使用 Amazon EKS 混合節點,在混合節點的 vCPU 資源連接到 Amazon EKS 叢集時,會按每小時計算所收取的費用。如需詳細資訊,請參閱 Amazon EKS 定價

Amazon EKS Anywhere 透過在內部部署和邊緣環境中自動化基礎設施設定和 Kubernetes 叢集生命週期操作等無差異的繁重工作,簡化了 Kubernetes 叢集管理。與 Amazon EKS 不同,Amazon EKS Anywhere 是客戶受管產品,且客戶負責 Amazon EKS Anywhere 叢集的叢集生命週期操作和維護。Amazon EKS Anywhere 建置在 Kubernetes 子專案叢集 API (CAPI) 上,並支援多種基礎設施,包括 VMware vSphere、裸機、Nutanix、Apache CloudStack 和 AWS Snow。Amazon EKS Anywhere 可以在氣隙隔離環境中執行,並提供與區域 AWS 服務的可選整合,以實現可觀測性和身分管理。若要獲得 Amazon EKS Anywhere 的支援,並存取 AWS 發布的 Kubernetes 附加元件,您可以購買 Amazon EKS Anywhere 企業版訂閱

您可以使用 Amazon EKS Connector 來註冊任何符合標準的 Kubernetes 叢集,並將其連線至 AWS,並在 Amazon EKS 主控台中進行檢視。連線叢集之後,您可以在 Amazon EKS 主控台中查看該叢集的狀態、組態和工作負載。您可以使用此功能在 Amazon EKS 主控台中檢視連線的叢集,但 Amazon EKS Connector 不會透過 Amazon EKS 主控台為連線的叢集啟用管理或變化操作。使用 Amazon EKS Connector 連線至 Amazon EKS 主控台的叢集無需收費。

Amazon EKS 混合節點是 Amazon EKS (一種受管 Kubernetes 服務) 的一項功能,而 Amazon EKS Anywhere 是您管理的 AWS 支援的 Kubernetes 管理軟體。Amazon EKS 混合節點適合擁有可連線至雲端的內部部署環境的客戶,而 Amazon EKS Anywhere 則適合擁有隔離或氣隙隔離內部部署環境的客戶。使用 Amazon EKS 混合節點,AWS 可管理 Kubernetes 控制平面的安全性、可用性和可擴展性,該控制平面託管在 AWS 雲端中,而且只有節點在您的基礎設施上執行。使用 Amazon EKS Anywhere,您負責管理完全在基礎設施上執行的 Kubernetes 叢集。使用 Amazon EKS 混合節點,沒有前期承諾或最低費用,而您可以在使用叢集和節點時按每小時付費。使用 Amazon EKS Anywhere,您可以購買一年期或三年期 Amazon EKS Anywhere 企業版訂閱。

使用 Amazon EKS 混合節點,您可以將您自己的實體或虛擬機器用作 Amazon EKS 叢集中的節點。藉助 Amazon EKS on AWS Outposts,您可以使用在 AWS Outposts 上執行的 Amazon EC2 執行個體,用於 Amazon EKS 叢集中的節點。Amazon EKS 混合節點和 Amazon EKS on AWS Outposts 支援不同的 Amazon EKS 附加元件,用於聯網和儲存。如需可與混合節點搭配使用的 Amazon EKS 附加元件的詳細資訊,請參閱《Amazon EKS 使用者指南》中的設定混合節點的附加元件。使用 Amazon EKS on AWS Outposts,您需要為 Amazon EKS 叢集和 AWS Outposts 容量付費。使用 Amazon EKS 混合節點,您可以為 Amazon EKS 叢集和節點用量付費。