更新 CoreDNS Amazon EKS 附加元件 - Amazon EKS

協助改善此頁面

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

若要提供此使用者指南,請選擇位於每個頁面右窗格中的在 GitHub 上編輯此頁面連結。

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

更新 CoreDNS Amazon EKS 附加元件

更新 Amazon EKS 類型的附加元件。如果您尚未將 Amazon EKS 附加元件新增至叢集,請新增它或參閱 更新 CoreDNS Amazon EKS 自我管理附加元件

開始之前,請檢閱升級考量事項。如需詳細資訊,請參閱CoreDNS 升級的重要考量事項

  1. 查看叢集上目前安裝了哪些附加元件版本。使用您的叢集名稱取代 my-cluster

    aws eks describe-addon --cluster-name my-cluster --addon-name coredns --query "addon.addonVersion" --output text

    範例輸出如下。

    v1.10.1-eksbuild.13

    如果傳回的版本與最新版本資料表中叢集 Kubernetes 版本的版本相同,表示您已在叢集上安裝最新版本,不需要完成此程序的其餘部分。如果您收到錯誤,而不是輸出中的版本號碼,則表示叢集上沒有安裝 Amazon EKS 類型的附加元件。您必須先建立附加元件,才能使用此程序進行更新。

  2. 儲存您目前安裝的附加元件。

    kubectl get deployment coredns -n kube-system -o yaml > aws-k8s-coredns-old.yaml
  3. 使用 CLI AWS 更新您的附加元件。如果您想要使用 AWS Management Console 或 eksctl 來更新附加元件,請參閱 更新 Amazon EKS 附加元件。將隨後的命令複製到您的裝置。視需要對命令進行下列修改,然後執行修改後的命令。

    • 使用您叢集的名稱取代 my-cluster

    • v1.11.3-eksbuild.1 取代為叢集版本最新版本資料表中列出的最新版本

    • --resolve-conflictsPRESERVE 選項會保留附加元件的現有組態值。如果您已設定附加元件設定的自訂值,而且不使用此選項,Amazon EKS 會以其預設值覆寫您的值。如果您使用此選項,建議您在更新生產叢集上的附加元件之前,測試非生產叢集上的任何欄位和值變更。如果您將此值變更為 OVERWRITE,則所有設定都會變更為 Amazon EKS 預設值。如果您已為任何設定設定自訂值,可能會以 Amazon EKS 預設值覆寫這些值。如果您將此值變更為 none,Amazon EKS 不會變更任何設定的值,但更新可能會失敗。若更新失敗,您會收到錯誤訊息,以協助您解決衝突。

    • 如果您未更新組態設定,--configuration-values '{"replicaCount":3}'請從命令中移除 。如果您要更新組態設定,請將 "replicaCount":3 取代為您要設定的設定。在此範例中,CoreDNS 的複本數量設定為 3。您指定的值必須對組態結構描述有效。如果您不知道組態結構描述,請執行 aws eks describe-addon-configuration --addon-name coredns --addon-version v1.11.3-eksbuild.1 ,將 v1.11.3-eksbuild.1 取代為您要查看組態的附加元件版本編號。結構描述會在輸出中傳回。如果您有任何現有的自訂組態,並且想要全部移除,同時將所有設定的值設定回 Amazon EKS 預設值,請從命令中移除 "replicaCount":3,這樣就會得到空白的 {}。如需 CoreDNS 設定的詳細資訊,請參閱 Kubernetes 文件中的自訂 DNS 服務

      aws eks update-addon --cluster-name my-cluster --addon-name coredns --addon-version v1.11.3-eksbuild.1 \ --resolve-conflicts PRESERVE --configuration-values '{"replicaCount":3}'

      更新動作可能需要幾秒鐘的時間才能完成。

  4. 確認附加元件版本已更新。使用您叢集的名稱取代 my-cluster

    aws eks describe-addon --cluster-name my-cluster --addon-name coredns

    更新動作可能需要幾秒鐘的時間才能完成。

    範例輸出如下。

    { "addon": { "addonName": "coredns", "clusterName": "my-cluster", "status": "ACTIVE", "addonVersion": "v1.11.3-eksbuild.1", "health": { "issues": [] }, "addonArn": "arn:aws: eks:region:111122223333:addon/my-cluster/coredns/d2c34f06-1111-2222-1eb0-24f64ce37fa4", "createdAt": "2023-03-01T16:41:32.442000+00:00", "modifiedAt": "2023-03-01T18:16:54.332000+00:00", "tags": {}, "configurationValues": "{\"replicaCount\":3}" } }