協助改進此頁面
若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。
更新 Amazon VPC CNI (自我管理的附件元件)
重要
建議將附加元件的 Amazon EKS 類型新增到叢集,而不是使用附加元件的自我管理類型。如果您不熟悉類型之間的差異,則請參閱 Amazon EKS 附加元件。如需將 Amazon EKS 附加元件新增至叢集的詳細資訊,請參閱 建立 Amazon EKS 附加元件。如果您無法使用 Amazon EKS 附加元件,我們建議您提交有關為何無法存取容器藍圖 GitHub 儲存庫
-
確認您的叢集上已安裝 Amazon EKS 類型的附加元件。使用您叢集的名稱取代
my-cluster。aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query addon.addonVersion --output text如果傳回錯誤訊息,則表明沒有在叢集上安裝 Amazon EKS 類型的附加元件。若要自行管理附加元件,請完成此程序中的剩餘步驟來更新附加元件。如果傳回版本編號,則表明已在叢集上安裝附加元件的 Amazon EKS 類型。若要將其更新,請使用 更新 Amazon EKS 附加元件 中的程序,而不是使用此程序。如果您不熟悉附加元件類型之間的差異,請參閱 Amazon EKS 附加元件。
-
查看叢集上目前安裝了哪些容器映像版本。
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3範例輸出如下。
v1.20.0-eksbuild.1您的輸出可能不包含建置編號。
-
備份您目前的設定,以便在更新版本後進行相同的設定。
kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml若要檢閱可用版本並熟悉更新版本中的變更,請參閱 GitHub 上的發布版本
。請注意,建議您更新最新版本資料表中列出的相同 major.minor.patch版本,即使 GitHub 上有更新的版本也是如此。若要查看最新提供的版本資料表,請參閱 Amazon VPC CNI 版本。資料表中列出的建置版本並未在 GitHub 上列出的自我管理版本中指定。透過以下列其中一種選項完成任務來更新您的版本:-
如果沒有附加元件的任何自訂設定,則請執行 GitHub 上
To apply this release:標題下的命令,以獲取正在更新到的發行版本。 -
如果有自訂設定,則請使用以下命令下載清單檔案。將
https://raw.githubusercontent.com/aws/amazon-vpc-cni-k8s/v1.20.0/config/master/aws-k8s-cni.yaml變更為 GitHub 上您正在更新到的發行版本的 URL。curl -O https://raw.githubusercontent.com/aws/amazon-vpc-cni-k8s/v1.20.1/config/master/aws-k8s-cni.yaml如有必要,請使用您在前一步所建立備份中的自訂設定修改清單檔案,然後將修改後的清單檔案套用至叢集。如果您的節點無法存取從中提取映像的私有 Amazon EKS Amazon ECR 儲存庫 (請參閱資訊清單中開頭為
image:的資料行),則您必須下載映像,將其複製到您自己的儲存庫,然後修改資訊清單以便從儲存庫中提取映像。如需詳細資訊,請參閱 將容器映像從一個儲存庫複製到另一個儲存庫。kubectl apply -f aws-k8s-cni.yaml
-
-
確認您的叢集上現在已安裝新版本。
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3範例輸出如下。
v1.20.1 -
(選用) 安裝
cni-metrics-helper到您的叢集。它湊集彈性網路介面和 IP 地址資訊,匯總叢集層級的指標,並將指標發佈至 Amazon CloudWatch。如需詳細資訊,請參閱 GitHub 上的 cni-metrics-helper。