

 **協助改進此頁面** 

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

若要為本使用者指南貢獻內容，請點選每個頁面右側面板中的**在 GitHub 上編輯此頁面**連結。

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

# 從叢集移除 Amazon EKS 附加元件
移除附加元件

您可以使用 `eksctl`、 AWS 管理主控台或 CLI 從叢集中移除 Amazon EKS AWS 附加元件。

若要從叢集移除 Amazon EKS 附加元件：
+ 此附加元件提供的功能沒有任何停機時間。
+ 使用服務帳戶 (IRSA) 的 IAM 角色，並且附加元件具有與其關聯的 IAM 角色時，IAM 角色不會移除。
+ 若是使用 Pod 身分識別，附加元件擁有的任何 Pod 身分識別關聯皆會移除。如果您指定 CLI AWS `--preserve`的選項，則會保留關聯。
+ Amazon EKS 停止管理附加元件的設定。
+ 當有新版本可用時，主控台會停止通知您。
+ 您無法使用任何 AWS 工具或 APIs更新附加元件。
+ 您可以選擇將附加元件軟體保留在叢集上，以便您可以自我管理附加元件軟體，或從叢集中移除附加元件軟體。如果您的叢集上的任何資源都不依賴於附加元件提供的功能，您應該僅從叢集中移除附加元件軟體。

## 先決條件


請完成以下操作再建立附加元件：
+ 現有 Amazon EKS 叢集。若要部署叢集，請參閱 [開始使用 Amazon EKS](getting-started.md)。
+ 檢查附加元件是否需要 IAM 角色。如需詳細資訊，請參閱
+ 裝置或 AWS CloudShell 上安裝的`eksctl`命令列工具版本 `0.215.0`或更新版本。如需有關安裝或更新 `eksctl` 的指示，請參閱 `eksctl` 文件中的[安裝](https://eksctl.io/installation)一節。

## 程序


移除 Amazon EKS 附加元件時，您有兩個選項：
+  **Preserve add-on software on your cluster** (在叢集上保留附加元件軟體)：此選項會移除任何設定的 Amazon EKS 管理。其也會移除 Amazon EKS 通知您更新的功能，並在您啟動更新後自動更新 Amazon EKS 附加元件。不過，該選項會保留您叢集上的附加元件軟體。此選項會使附加元件成為自我管理安裝，而不是 Amazon EKS 附加元件。如果啟用此選項，附加元件就無須停機。
+  **Remove add-on software entirely from your cluster** (從叢集中完全移除附加元件軟體)：只有叢集上沒有資源依賴於附加元件提供的功能時，我們才會建議您將 Amazon EKS 附加元件從叢集中移除。

您可以使用 `eksctl`、 AWS 管理主控台或 CLI 移除 Amazon EKS AWS 附加元件。

### 移除附加元件 (eksctl)


1. 判斷叢集上目前安裝的附加元件。使用您叢集的名稱取代 *my-cluster*。

   ```
   eksctl get addon --cluster my-cluster
   ```

   範例輸出如下。

   ```
   NAME        VERSION              STATUS  ISSUES  IAMROLE  UPDATE AVAILABLE
   coredns     v1.8.7-eksbuild.2    ACTIVE  0
   kube-proxy  v1.23.7-eksbuild.1   ACTIVE  0
   vpc-cni     v1.10.4-eksbuild.1   ACTIVE  0
   [...]
   ```

   您的輸出可能看起來有所不同，具體取決於您的叢集上有哪些附加元件和版本。

1. 移除附加元件。使用叢集名稱取代 *my-cluster*，並使用您想要移除之上一步輸出中傳回的附加元件名稱取代 *name-of-add-on*。若移除 *--preserve* 選項，除了 Amazon EKS 不再管理附加元件之外，附加元件軟體也會從叢集中刪除。

   ```
   eksctl delete addon --cluster my-cluster --name name-of-addon --preserve
   ```

   若要了解移除附加元件的相關詳細資訊，請參閱 `eksctl` 文件中的[刪除附加元件](https://eksctl.io/usage/addons/#deleting-addons)。

### 移除附加元件AWS （主控台）


1. 開啟 [Amazon EKS 主控台](https://console.aws.amazon.com/eks/home#/clusters)。

1. 在左側導覽窗格中選擇**叢集**。

1. 選擇要移除 Amazon EKS 附加元件的叢集名稱。

1. 選擇**附加元件**索引標籤。

1. 選擇要移除的附加元件。

1. 選擇**移除**。

1. 在**移除：*附加元件名稱***確認對話方塊中，執行以下操作：

   1. 若希望 Amazon EKS 停止管理附加元件的設定，請選取**在叢集上保留**。若要在叢集上保留附加元件軟體，請執行此動作。如此一來，您就可以自行管理附加元件的所有設定。

   1. 輸入附加元件的名稱。

   1. 選擇**移除**。

### 移除附加元件 (AWS CLI)


1. 您需要在裝置`0.215.0`或 AWS CloudShell 上安裝版本 或更新版本的`eksctl`命令列工具。如需有關安裝或更新 `eksctl` 的指示，請參閱 `eksctl` 文件中的[安裝](https://eksctl.io/installation)一節。

1. 請參閱已安裝附加元件的清單。使用您叢集的名稱取代 *my-cluster*。

   ```
   aws eks list-addons --cluster-name my-cluster
   ```

   範例輸出如下。

   ```
   {
       "addons": [
           "coredns",
           "kube-proxy",
           "vpc-cni",
           "name-of-addon"
       ]
   }
   ```

1. 移除已安裝的附加元件。使用叢集名稱取代 *my-cluster*，並使用您想要移除的附加元件名稱取代 *name-of-add-on*。移除 *--preserve* 會將附加元件軟體從叢集中刪除。

   ```
   aws eks delete-addon --cluster-name my-cluster --addon-name name-of-addon --preserve
   ```

   縮寫的範例輸出如下所示。

   ```
   {
       "addon": {
           "addonName": "name-of-add-on",
           "clusterName": "my-cluster",
           "status": "DELETING",
       }
   }
   ```

1. 檢查移除狀態。使用叢集名稱取代 *my-cluster*，並使用您將移除的附加元件名稱取代 *name-of-addon*。

   ```
   aws eks describe-addon --cluster-name my-cluster --addon-name name-of-addon
   ```

   移除附加元件之後，範例輸出如下所示。

   ```
   An error occurred (ResourceNotFoundException) when calling the DescribeAddon operation: No addon: name-of-addon found in cluster: my-cluster
   ```