帮助改进此页面
要帮助改进本用户指南,请选择位于每个页面右侧窗格中的在 GitHub 上编辑此页面链接。
您可以使用 eksctl
、AWS Management Console或 AWS CLI 从集群中移除 Amazon EKS 附加组件。
从集群中移除 Amazon EKS 附加组件时:
-
附加组件提供的功能不停机。
-
如果您使用的是服务账户的 IAM 角色(IRSA),并且附加组件有与其关联的 IAM 角色,则不会移除该 IAM 角色。
-
如果您使用的是容器组身份,则该附加组件拥有的所有容器组身份关联都将被移除。如果将
--preserve
选项指定为 AWS CLI,则将会保留关联。 -
Amazon EKS 停止管理附加组件的设置。
-
控制台停止通知您新版本何时可用。
-
您无法使用任何 AWS 工具或 API 更新附加组件。
-
您可以选择将附加软件留在集群上,以便您自行管理,您也可以从集群中删除附加软件。只有当集群上没有资源依赖于附加组件提供的功能时,您才能从集群中删除附加软件。
先决条件
在创建附加组件之前,请完成以下步骤:
-
现有 Amazon EKS 集群。要部署一个角色,请参阅开始使用 Amazon EKS。
-
检查附加组件是否需要 IAM 角色。有关更多信息,请参阅
-
您的设备或 AWS CloudShell 上安装
0.204.0
版或更高版本的eksctl
命令行工具。要安装或更新eksctl
,请参阅eksctl
文档中的 Installation。
过程
您可以通过两种方式来移除 Amazon EKS 附加组件:
-
将附加组件保留在您的集群上 - 此方法将移除 Amazon EKS 对任何设置的管理。还移除 Amazon EKS 通知您更新以及在您启动更新后自动更新 Amazon EKS 附加组件的功能。但是,此方法会保留集群上的附加组件软件。此选项会将附加组件作为自行管理安装使用,而不是作为 Amazon EKS 附加组件使用。使用此方法,附加组件不停机。
-
从集群中完全删除附加组件 - 我们建议只有当集群中没有资源依赖于附加组件时,才从集群移除 Amazon EKS 附加组件。
您可以使用 eksctl
、AWS Management Console或 AWS CLI 移除 Amazon EKS 附加组件。
移除附加组件(eksctl)
-
确定集群上目前安装的附加组件。将
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 [...]
您的输出可能会有所不同,这取决于您的集群上安装的附加组件和版本。
-
移除附加组件。将
my-cluster
替换为您的集群名称,将name-of-add-on
替换为上一步的输出中返回的要删除的附加组件名称。如果您移除了--preserve
选项,则除 Amazon EKS 不再管理该附加组件外,该附加软件也会从集群中删除。eksctl delete addon --cluster my-cluster --name name-of-addon --preserve
有关移除附加组件的更多信息,请参阅
eksctl
文档中的 Deleting addons。
移除附加组件(AWS 控制台)
-
打开 Amazon EKS 控制台
。 -
在左侧导航窗格中,选择集群。
-
选择要从中移除 Amazon EKS 附加组件的集群名称。
-
选择附加组件选项卡。
-
选择要移除的附加组件。
-
选择移除 。
-
在移除:
name of addon
确认对话框中,执行以下操作:-
如果希望 Amazon EKS 停止管理附加组件设置,请选择在集群上保留。如果要在集群上保留附加组件软件,请执行此操作。这样您可以自行管理附加组件的所有设置。
-
输入附加组件的名称。
-
选择移除 。
-
移除附加组件(AWS CLI)
-
您需要在设备或 AWS CloudShell 上安装
0.204.0
版或更高版本的eksctl
命令行工具。要安装或更新eksctl
,请参阅eksctl
文档中的 Installation。 -
查看已安装的附加组件列表。将
my-cluster
替换为您的集群的名称。aws eks list-addons --cluster-name my-cluster
示例输出如下。
{ "addons": [ "coredns", "kube-proxy", "vpc-cni", "name-of-addon" ] }
-
移除已安装的附加组件。将
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", } }
-
检查移除操作的状态。将
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