協助改善此頁面
想要為此使用者指南做出貢獻? 捲動至此頁面底部,然後在 上選取編輯此頁面 GitHub。您的貢獻將幫助我們的使用者指南更適合所有人。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立 Amazon VPC CNI plugin for Kubernetes Amazon EKS 附加元件
使用下列步驟來建立 Amazon VPC CNI plugin for Kubernetes Amazon EKS 附加元件。
在開始之前,請檢閱考量事項。如需詳細資訊,請參閱考量事項。
必要條件
以下是 的先決條件 Amazon VPC CNI plugin for Kubernetes Amazon EKS 附加元件。
-
現有的 Amazon EKS叢集。若要部署叢集,請參閱 開始使用 Amazon EKS。
-
現有 AWS Identity and Access Management (IAM) OpenID Connect (OIDC) 叢集的供應商。若要判定您是否已經擁有一個,或是要建立一個,請參閱 建立 IAM OIDC 叢集的提供者。
-
具有 Amazon EKS_CNI_Policy IAM政策 (如果您的叢集使用
IPv4
系列) 的角色,或連接到該IPv6政策 (如果您的叢集使用IPv6
系列) IAM的角色。如需詳細資訊,請參閱設定要使用的 Amazon VPC CNI 外掛程式 IRSA。 -
如果您使用的是版本
1.7.0
或更新版本的 Amazon VPC CNI plugin for Kubernetes 而您可以使用自訂的 Pod 安全政策,請參閱 刪除預設 Amazon EKS Pod 安全政策了解 Amazon EKS建立的 Pod 安全政策 (PSP)。 -
重要
Amazon VPC CNI plugin for Kubernetes
v1.16.0
要v1.16.1
移除與 的相容性的版本 Kubernetes 版本1.23
和更早版本。VPC CNI 版本會v1.16.2
還原與 的相容性 Kubernetes 版本1.23
和更舊版本 和CNI規格v0.4.0
。Amazon VPC CNI plugin for Kubernetes 版本
v1.16.0
以v1.16.1
實作CNI規格版本v1.0.0
。CNI 執行 的EKS叢集v1.0.0
支援 規格 Kubernetes 版本v1.24
或更新版本。VPC CNI 版本v1.16.0
v1.16.1
和CNI規格v1.0.0
不支援 Kubernetes 版本v1.23
或更早版本。 如需v1.0.0
CNI規格的詳細資訊,請參閱 上的容器網路介面 (CNI) 規格。
程序
完成先決條件後,請使用下列步驟建立附加元件。
-
查看叢集上目前安裝了哪些附加元件版本。
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3
範例輸出如下。
v1.16.4-eksbuild.2
-
查看叢集上安裝的附加元件類型。根據您使用建立叢集的工具,您目前可能尚未在叢集上安裝 Amazon EKS 附加元件類型。Replace (取代)
my-cluster
您的叢集名稱。$
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output text如果傳回版本號碼,則您的叢集上安裝了 Amazon EKS類型的附加元件,不需要完成此程序中的其餘步驟。如果傳回錯誤,表示叢集上未安裝 Amazon EKS類型的附加元件。完成此程序的剩餘步驟以安裝該類型。
-
儲存您目前安裝的附加元件。
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
使用 AWS CLI建立附加元件。如果您想要使用 AWS Management Console 或
eksctl
建立附加元件,請參閱 建立 Amazon EKS 附加元件並vpc-cni
指定附加元件名稱。將隨後的命令複製到您的裝置。視需要對命令進行下列修改,然後執行修改後的命令。-
使用您叢集的名稱取代
。my-cluster
-
Replace (取代)
,其最新版本列於叢集版本的最新版本資料表中。v1.18.5-eksbuild.1
-
Replace (取代)
111122223333
使用您的帳戶 ID 和AmazonEKSVPCCNIRole
您已建立之現有IAM角色的名稱。指定角色需要您擁有 IAM OpenID Connect (OIDC) 叢集的供應商。若要判定您的叢集是否已經擁有一個提供者,或是要建立一個提供者,請參閱 建立 IAM OIDC 叢集的提供者。
aws eks create-addon --cluster-name
my-cluster
--addon-name vpc-cni --addon-version
\ --service-account-role-arn arn:aws:iam::v1.18.5-eksbuild.1
111122223333
:role/AmazonEKSVPCCNIRole
如果您已將自訂設定套用至與 Amazon 附加元件預設設定衝突的目前EKS附加元件,則建立可能會失敗。若建立失敗,您會收到錯誤,其中的訊息有助於您解決問題。或者,您可以將
--resolve-conflicts OVERWRITE
新增至上一條命令。這可讓附加元件覆寫任何現有的自訂設定。建立附加元件後,可以使用自訂設定來更新該附加元件。 -
-
確認叢集 的最新版本附加元件 Kubernetes 版本已新增至您的叢集。使用您叢集的名稱取代
。my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output text建立附加元件的動作可能需要幾秒鐘的時間才能完成。
範例輸出如下。
v1.18.5-eksbuild.1
-
如果您已對原始附加元件進行自訂設定,則在建立 Amazon EKS附加元件之前,請使用您在上一個步驟中儲存的組態,以自訂設定更新 Amazon EKS附加元件。
(選用) 安裝
cni-metrics-helper
到您的叢集。它會抓取彈性網路介面和 IP 地址資訊,在叢集層級彙總資訊,並將指標發佈至 Amazon CloudWatch。如需詳細資訊,請參閱cni-metrics-helper上的 GitHub。