Amazon EKS 是一種受管服務,您不需要安裝和操作自己的 Kubernetes 控制平面或工作節點,便可在 AWS 上輕鬆執行 Kubernetes。
Kubernetes 是一種開放原始碼容器協同運作系統,它可讓您大規模部署和管理容器化應用程式。Kubernetes 將容器組織成邏輯群組以便更好管理和探索,然後將其啟動至 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體叢集。使用 Kubernetes,您可以在內部部署和雲端使用相同的工具組執行容器化應用程式,包括微型服務、批次處理工作者和平台即服務 (PaaS)。
Amazon EKS 可跨多個 AWS 可用區域 (AZ) 佈建和擴展 Kubernetes 控制平面 (包括應用程式介面 (API) 伺服器和後端耐久儲存層),以提高可用性和容錯能力。Amazon EKS 能夠自動偵測和替換運作狀態不佳的控制平面節點,並修補控制平面。您可以使用 AWS Fargate 執行 EKS,AWS Fargate 是用於容器的無伺服器運算。Fargate 消除了佈建和管理伺服器的需求,讓您指定每個應用程式的資源和支付資源費用,並且透過經過設計的應用程式隔離來增強安全性。
Amazon EKS 整合了許多 AWS 服務,為您的應用程式提供可擴展性和安全性。這些服務包括用於負載分發的 Elastic Load Balancing、用於身份驗證的 AWS Identity and Access Management (IAM)、用於隔離的 Amazon Virtual Private Cloud (VPC) 以及用於記錄的 AWS CloudTrail。
Amazon EKS 的運作方式是代您佈建 (啟動) 和管理 Kubernetes 控制平面和工作節點。一般來說,Kubernetes 有兩個主要的元件:執行容器的「工作節點」叢集,以及管理在叢集啟動容器的時機和位置並監控其狀態的控制平面。
如果沒有 Amazon EKS,您便需要自行執行 Kubernetes 控制平面和工作節點叢集。藉助 Amazon EKS,您可以在 EKS 主控台、命令列介面 (CLI) 或 API 中使用單個命令佈建您的工作節點。AWS 在高度可用且安全的組態中處理佈建、擴展和管理 Kubernetes 控制平面。這免除大量操作重擔,讓您專注在建立應用程式,而不是管理 AWS 基礎設施。
Amazon EKS 支援與 Kubernetes 相容的 Linux x86、ARM 和 Windows Server 作業系統發行版。Amazon EKS 提供用於 Amazon Linux 2、Bottlerocket 和 Windows Server 2019 的最佳化 AMI。目前,沒有針對 AL2023 的 Amazon EKS 最佳化 AMI。用於其他 Linux 發行版 (如 Ubuntu) 的 EKS 最佳化 AMI 可從各自廠商取得。
請在 AWS 容器服務公有藍圖上提出功能請求,讓我們知道我們可以新增的內容或如何做得更好
Amazon EKS 執行開放原始碼 Kubernetes 軟體,因此您可以使用 Kubernetes 社群中所有現有的外掛程式和工具。在 Amazon EKS 上執行的應用程式與任何標準 Kubernetes 環境中執行的應用程式完全相容,無論它們是在內部部署資料中心或公有雲端執行。這表示您可以輕鬆地將任何標準 Kubernetes 應用程式遷移到 Amazon EKS,無須修改任何程式碼。
是。您可以使用 AWS Fargate 和 Amazon EKS,以無伺服器容器的方式執行 Kubernetes 應用程式。
EKS 附加元件可讓您啟用和管理 Kubernetes 操作軟體,此軟體可為 EKS 叢集提供可觀測性、擴展、聯網和 AWS 雲端資源整合等功能。啟動時,EKS 附加元件支援透過 EKS API 控制 AWS VPC CNI 外掛程式的啟動和版本。
Amazon EKS 附加元件提供 Kubernetes 操作軟體的一鍵式安裝和管理。這可讓您透過單一命令,包辦從叢集建立到應用程式執行等操作,同時輕鬆讓叢集所需的操作軟體保持最新狀態。這可讓您確保 Kubernetes 叢集安全穩定,並降低所需工作量,讓您能更輕鬆地在 AWS 上開始和管理生產就緒的 Kubernetes 叢集。
如需有關目前支援的 Kubernetes 版本的資訊,請參閱 Amazon EKS 文件。Amazon EKS 未來將會繼續新增其他 Kubernetes 版本的支援。
是。Amazon EKS 可以同時針對 Kubernetes 和 Amazon EKS 平台版本進行受管的就地叢集升級。如此可簡化叢集操作,並讓您可以善用最新的 Kubernetes 功能,以及 Amazon EKS 組態的更新和安全性修補程式。
有兩種您可以套用至 Amazon EKS 叢集的更新:即 Kubernetes 版本更新和 Amazon EKS 平台版本更新。當新的 Kubernetes 版本發佈,並通過驗證可與 Amazon EKS 搭配使用時,我們將支援三個穩定的 Kubernetes 版本,做為任何特定時間更新程序的一部分。
Amazon EKS 平台版本代表叢集控制平面的功能,例如啟用了哪些 Kubernetes API 伺服器旗標以及目前的 Kubernetes 修補程式版本。每個 Kubernetes 次要版本皆有一或多個關聯的 Amazon EKS 平台版本。適用於不同 Kubernetes 次要版本的平台版本都是彼此獨立。
當 Amazon EKS 推出新的 Kubernetes 次要版本 (例如,1.13) 時,該 Kubernetes 次要版本的初始 Amazon EKS 平台版本從 eks.1 開始。但是,Amazon EKS 會定期發佈新平台版本,以啟用新的 Kubernetes 控制平面設定,以及提供安全修正程式。
新版的 Kubernetes 引進 Kubernetes API 的重大變更,這可能改變應用程式行為。手動控制 Kubernetes 叢集版本,可讓您針對新版 Kubernetes 測試應用程式,然後再升級生產叢集。Amazon EKS 可讓您選擇何時將變更引進 EKS 叢集中。
AWS 會發佈 EKS 最佳化 Amazon Machine Image (AMI),其中包括必要的工作節點二進位檔 (Docker 和 Kubelet)。 此 AMI 會定期更新,並包括這些元件的最新版本。您可以在 EKS 主控台、API 或 CLI 中使用單一命令將 EKS 受管節點更新為最新版本的 EKS 最佳化 AMI。
如果您建置自己的自訂 AMI 來用於 EKS 工作節點,AWS 也會發佈 Packer 指令碼來描述我們的建置步驟,讓您可以識別每個 AMI 版本包括的二進位檔。
Kubernetes 版本的 Amazon EKS 延伸支援可讓您使用 Kubernetes 次要版本長達 26 個月 (自 Amazon EKS 正式推出此版本時起)。取得延伸支援的 Amazon EKS 版本會收到 Amazon EKS 管理的 Kubernetes 控制平面的持續安全修補程式。此外,Amazon EKS 還將發佈適用於 Amazon VPC CNI、kube-proxy 和 CoreDNS 附加元件、AWS 發佈的適用於 Amazon Linux、Bottlerocket、Windows 和 EKS Fargate 節點的 EKS 最佳化 Amazon Machine Image (AMI) 的重大修補程式。AWS 同時在標準支援和延伸支援方面支援所有 Amazon EKS 版本,並提供全面的技術支援。提供 Amazon EKS 的所有 AWS 區域都提供對 Kubernetes 版本的延伸支援,包括 AWS GovCloud (美國) 區域。在 Amazon EKS 文件中進一步了解 Amazon EKS 版本支援政策。
對於您所建立的每個 Amazon EKS 叢集,以及為了執行 Kubernetes 工作節點所建立的 AWS 資源,每小時費用 0.10 USD。您只需按實際用量付費;既沒有最低費用,也沒有前期承諾。在 EKS 定價頁面中可找到更多資訊。
如需 Amazon EKS 區域可用性的最新資訊,請參閱 AWS 全球基礎設施區域表。
您可以在這裡找到 Amazon EKS SLA。