協助改進此頁面
若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。
建立自我管理的 Ubuntu Linux 節點
注意
受管節點群組可能會為您的使用案例提供一些優勢。如需詳細資訊,請參閱 透過受管節點群組來簡化節點生命週期。
本主題會說明如何啟動向 Amazon EKS 叢集註冊的 Amazon Elastic Kubernetes Service (EKS) 上的 Ubuntu
節點加入叢集後,您就可以將容器化應用程式部署至其中。如需詳細資訊,請參閱 eksctl 文件中的 AWS 上的 Ubuntu
重要
-
Amazon EKS 節點為標準 Amazon EC2 執行個體,會根據一般 Amazon EC2 執行個體價格向您收取這些節點的費用。如需詳細資訊,請參閱 Amazon EC2 定價
。 -
您可在 AWS Outposts 的 Amazon EKS 擴充叢集中啟動 Ubuntu 節點,但無法在 AWS Outposts 的本機叢集中啟動這些節點。如需詳細資訊,請參閱 使用 AWS Outposts 在內部部署 Amazon EKS。
-
您可以使用
x86或 Arm 處理器部署至 Amazon EC2 執行個體。不過,具有 Inferentia 晶片的執行個體可能需要先安裝 Neuron SDK。
此程序需要 eksctl 版本 0.214.0 或更新版本。您可使用以下命令檢查您的版本:
eksctl version
如需如何安裝或升級 eksctl 的指示,請參閱 eksctl 文件中的安裝eksctl 建立的叢集。
-
將以下內容複製到您的裝置。使用您叢集的名稱取代
my-cluster。此名稱僅能使用英數字元 (區分大小寫) 和連字號。必須以字母字元開頭,且長度不可超過 100 個字元。將ng-ubuntu取代為您的節點群組名稱。節點群組名稱不可超過 63 個字元。它必須以字母或數字開頭,但剩餘字元也可以包含連字符和底線。若要在 Arm 執行個體上部署,請以 Arm 執行個體類型取代m5.large。使用 Amazon EC2 SSH 金鑰對名稱取代my-ec2-keypair-name,您可以在節點啟動後使用該金鑰對來透過 SSH 連接至節點。如果您還沒有 Amazon EC2 金鑰對,可以在 AWS 管理主控台 中建立一個。如需詳細資訊,請參閱《Amazon EC2 使用者指南》中的 Amazon EC2 金鑰對。使用您自己的值取代其餘所有範例值。完成取代後,請執行修改後的命令以建立ubuntu.yaml檔案。重要
若想將節點群組部署至 AWS Outposts、AWS Wavelength 或 AWS Local Zone 子網路,則不得在建立叢集時傳入 AWS Outposts、AWS Wavelength 或 AWS Local Zone 子網路。您必須在下列範例中指定子網路。如需詳細資訊,請參閱
eksctl文件中的從組態檔案建立節點群組和組態檔案結構描述 。使用叢集所在的 AWS 區域取代 region-code。cat >ubuntu.yaml <<EOF --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code version: '1.33' iam: withOIDC: true nodeGroups: - name: ng-ubuntu instanceType: m5.large desiredCapacity: 3 amiFamily: Ubuntu2204 iam: attachPolicyARNs: - arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy - arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly - arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore - arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy ssh: allow: true publicKeyName: my-ec2-keypair-name EOF若要建立 Ubuntu Pro 節點群組,只需將
amiFamily值變更為UbuntuPro2204即可。 -
使用下列命令部署節點。
eksctl create nodegroup --config-file=ubuntu.yaml範例輸出如下。
建立節點時,會有數行輸出。輸出的最後幾行之一類似於以下的範例行。
[✔] created 1 nodegroup(s) in cluster "my-cluster" -
(選用) 部署範例應用程式來測試您的 Ubuntu 節點。
-
如果下列條件為真,我們建議封鎖 Pod 對 IMDS 的存取:
-
您計劃將 IAM 角色指派給您的所有 Kubernetes 服務帳戶,以便 Pod 僅具有所需的最低許可。
-
叢集中沒有 Pod 出於其他原因 (例如擷取當前的 AWS 區域) 需要存取 Amazon EC2 執行個體中繼資料服務 (IMDS)。
如需詳細資訊,請參閱限制存取指派給工作節點的執行個體設定檔
。 -