EKS 自動模式 - Eksctl 使用者指南

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

EKS 自動模式

eksctl 支援 EKS Auto Mode,這項功能可將 Kubernetes 叢集的 AWS 管理延伸到叢集本身之外,讓 AWS 也能設定和管理基礎設施,讓工作負載能夠順暢地運作。這可讓您委派關鍵基礎設施決策,並利用 AWS 的專業知識進行day-to-day操作。由 AWS 管理的叢集基礎設施包含許多 Kubernetes 功能做為核心元件,而不是附加元件,例如運算自動擴展、Pod 和服務聯網、應用程式負載平衡、叢集 DNS、區塊儲存和 GPU 支援。

建立已啟用自動模式的 EKS 叢集

eksctl 已新增 autoModeConfig 欄位以啟用和設定自動模式。autoModeConfig 欄位的形狀為

autoModeConfig: # defaults to false enabled: boolean # optional, defaults to [general-purpose, system]. # To disable creation of nodePools, set it to the empty array ([]). nodePools: []string # optional, eksctl creates a new role if this is not supplied # and nodePools are present. nodeRoleARN: string

如果 autoModeConfig.enabled 為 true,eksctl 會透過將 computeConfig.enabled: truekubernetesNetworkConfig.elasticLoadBalancing.enabled: true和 傳遞storageConfig.blockStorage.enabled: true至 EKS API 來建立 EKS 叢集,進而管理運算、儲存和聯網等資料平面元件。

若要在啟用自動模式的情況下建立 EKS 叢集,請如 所示設定 autoModeConfig.enabled: true

# auto-mode-cluster.yaml apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: auto-mode-cluster region: us-west-2 autoModeConfig: enabled: true
eksctl create cluster -f auto-mode-cluster.yaml

eksctl 會建立節點角色,以用於自動模式啟動的節點。eksctl 也會建立 general-purposesystem 節點集區。若要停用預設節點集區的建立,例如設定您自己的節點集區,使用不同的子網路集區,請設定 nodePools: [],如 中的

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: auto-mode-cluster region: us-west-2 autoModeConfig: enabled: true nodePools: [] # disables creation of default node pools.

更新 EKS 叢集以使用自動模式

若要更新現有的 EKS 叢集以使用自動模式,請執行

# cluster.yaml apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: cluster region: us-west-2 autoModeConfig: enabled: true
eksctl update auto-mode-config -f cluster.yaml
注意

如果叢集是由 eksctl 建立,並使用公有子網路做為叢集子網路,則自動模式會在公有子網路中啟動節點。若要針對自動模式啟動的工作者節點使用私有子網路,請更新叢集以使用私有子網路

停用自動模式

若要停用自動模式,請設定 autoModeConfig.enabled: false 並執行

# cluster.yaml apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: auto-mode-cluster region: us-west-2 autoModeConfig: enabled: false
eksctl update auto-mode-config -f cluster.yaml

詳細資訊