帮助改进此页面
想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。
从集群中移除 Amazon EKS 附加组件
您可以使用 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.187.0
版或更高版本的 eksctl
命令行工具。要安装或更新 eksctl
,请参阅 eksctl
文档中的 Installation。
过程
您可以使用 eksctl
、AWS Management Console或 AWS CLI 移除 Amazon EKS 附加组件。如果附加组件需要 IAM 角色,请参阅 来自 AWS 的 Amazon EKS 附加组件 中特定附加组件的详细信息,以了解有关创建角色的详细信息。
您可以通过两种方式来移除 Amazon EKS 附加组件:
-
将附加组件保留在您的集群上 - 此方法将移除 Amazon EKS 对任何设置的管理。还移除 Amazon EKS 通知您更新以及在您启动更新后自动更新 Amazon EKS 附加组件的功能。但是,此方法会保留集群上的附加组件软件。此选项会将附加组件作为自行管理安装使用,而不是作为 Amazon EKS 附加组件使用。使用此方法,附加组件不停机。
-
从集群中完全删除附加组件 - 我们建议只有当集群中没有资源依赖于附加组件时,才从集群移除 Amazon EKS 附加组件。
- eksctl
-
使用 eksctl
移除 Amazon EKS 附加组件
-
确定集群上目前安装的附加组件。将 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 Management Console
-
使用 AWS Management Console移除 Amazon EKS 附加组件
访问 https://console.aws.amazon.com/eks/home#/clusters 打开 Amazon EKS 控制台。
-
在左侧导航窗格中,选择集群。
-
选择要从中移除 Amazon EKS 附加组件的集群名称。
-
选择附加组件选项卡。
-
选择要移除的附加组件。
-
选择移除。
-
在移除:name of addon
确认对话框中,执行以下操作:
-
如果希望 Amazon EKS 停止管理附加组件设置,请选择在集群上保留。如果要在集群上保留附加组件软件,请执行此操作。这样您可以自行管理附加组件的所有设置。
-
输入附加组件的名称。
-
选择移除。
- AWS CLI
-
先决条件
您的设备或 AWS CloudShell 上安装了 0.187.0
版或更高版本的 eksctl
命令行工具。要安装或更新 eksctl
,请参阅 eksctl
文档中的 Installation。
使用 AWS CLI 移除 Amazon EKS 附加组件
-
查看已安装的附加组件列表。将 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