删除 Amazon EKS 集群
使用完 Amazon EKS 集群后,应删除与其关联的资源,这样便不会产生任何不必要的费用。
要删除连接的集群,请参阅 注销集群
如果集群中具有与负载均衡器关联的有效服务,则必须先删除这些服务,然后再删除集群,以便正确删除负载均衡器。否则,VPC 中可能有阻止您删除 VPC 的孤立资源。
您可以使用 eksctl
、Amazon Web Services Management Console 或 Amazon CLI 删除集群。选择带有要用于删除集群的工具的名称的选项卡。
- eksctl
-
使用
eksctl
删除 Amazon EKS 集群和节点此过程需要
eksctl
版本0.84.0
或更高版本。可以使用以下命令来查看您的版本:eksctl version
有关安装或升级
eksctl
的更多信息,请参阅 安装或升级 eksctl。-
列出集群中运行的所有服务。
kubectl get svc --all-namespaces
-
删除具有关联的
EXTERNAL-IP
值的任何服务。这些服务的前面配置了一个 Elastic Load Balancing 负载均衡器,您必须从 Kubernetes 中将其删除才能释放负载均衡器和关联资源。kubectl delete svc <service-name>
-
使用以下命令(将 <prod> 替换为您的集群名称)删除集群及其关联的节点。
eksctl delete cluster --name <prod>
输出:
[ℹ] using region <region-code> [ℹ] deleting EKS cluster "prod" [ℹ] will delete stack "eksctl-prod-nodegroup-standard-nodes" [ℹ] waiting for stack "eksctl-prod-nodegroup-standard-nodes" to get deleted [ℹ] will delete stack "eksctl-prod-cluster" [✔] the following EKS cluster resource(s) for "prod" will be deleted: cluster. If in doubt, check CloudFormation console
-
- Amazon Web Services Management Console
-
使用 Amazon Web Services Management Console 删除 Amazon EKS 集群
-
列出集群中运行的所有服务。
kubectl get svc --all-namespaces
-
删除具有关联的
EXTERNAL-IP
值的任何服务。这些服务的前面配置了一个 Elastic Load Balancing 负载均衡器,您必须从 Kubernetes 中将其删除才能释放负载均衡器和关联资源。kubectl delete svc <service-name>
-
删除所有节点组和 Fargate 配置文件。
-
访问 https://console.aws.amazon.com/eks/home#/clusters
打开 Amazon EKS 控制台。 -
在左侧导航窗格中,选择 Amazon EKS Clusters(集群),然后在集群的选项卡列表中,选择要删除的集群的名称。
-
选择 Configuration(配置)选项卡。选择 Compute(计算)选项卡,选择要删除的节点组,选择 Delete(删除),输入节点组的名称,然后选择 Delete(删除)。删除集群中的所有节点组。
注意 只会列出托管节点组。
-
选择要删除的 Fargate Profile(Fargate 配置文件),选择 Delete(删除),输入配置文件的名称,然后选择 Delete(删除)。删除集群中的所有 Fargate 配置文件。
-
-
删除所有自行管理的节点 Amazon CloudFormation 堆栈。
打开 Amazon CloudFormation 控制台,地址:https://console.aws.amazon.com/cloudformation
。 -
请选择要删除的节点堆栈,然后选择 Delete(删除)。
-
在 Delete stack(删除堆栈)确认对话框中,请选择 Delete stack(删除堆栈)。删除集群中的所有自行管理的节点堆栈。
-
请删除集群。
访问 https://console.aws.amazon.com/eks/home#/clusters
打开 Amazon EKS 控制台。 -
选择要删除的集群并选择 Delete (删除)。
-
在删除集群确认屏幕上,选择 Delete (删除)。
-
(可选)删除 VPC Amazon CloudFormation 堆栈。
打开 Amazon CloudFormation 控制台,地址:https://console.aws.amazon.com/cloudformation
。 -
请选择要删除的 VPC 堆栈,然后选择 Delete(删除)。
-
在 Delete stack(删除堆栈)确认对话框中,请选择 Delete stack(删除堆栈)。
-
- Amazon CLI
-
使用 Amazon CLI 删除 Amazon EKS 集群
-
列出集群中运行的所有服务。
kubectl get svc --all-namespaces
-
删除具有关联的
EXTERNAL-IP
值的任何服务。这些服务的前面配置了一个 Elastic Load Balancing 负载均衡器,您必须从 Kubernetes 中将其删除才能释放负载均衡器和关联资源。kubectl delete svc <service-name>
-
删除所有节点组和 Fargate 配置文件。
-
使用以下命令列出集群中的节点组。
aws eks list-nodegroups --cluster-name
<my-cluster>
注意 只会列出托管节点组。
-
使用以下命令删除每个节点组。删除集群中的所有节点组。
aws eks delete-nodegroup --nodegroup-name
<my-nodegroup>
--cluster-name <my-cluster> -
使用以下命令列出集群中的 Fargate 配置文件。
aws eks list-fargate-profiles --cluster-name
<my-cluster>
-
使用以下命令删除每个 Fargate 配置文件。删除集群中的所有 Fargate 配置文件。
aws eks delete-fargate-profile --fargate-profile-name
<my-fargate-profile>
--cluster-name<my-cluster>
-
-
删除所有自行管理的节点 Amazon CloudFormation 堆栈。
-
使用以下命令列出您的可用 Amazon CloudFormation 堆栈。在生成的输出中查找节点模板名称。
aws cloudformation list-stacks --query "StackSummaries[].StackName"
-
使用以下命令(将
<node-stack>
替换为节点堆栈名称)删除每个节点堆栈。删除集群中的所有自行管理的节点堆栈。aws cloudformation delete-stack --stack-name
<node-stack>
-
-
使用以下命令(将 <my-cluster> 替换为您的集群名称)删除集群。
aws eks delete-cluster --name
<my-cluster>
-
(可选)删除 VPC Amazon CloudFormation 堆栈。
-
使用以下命令列出您的可用 Amazon CloudFormation 堆栈。在生成的输出中查找 VPC 模板名称。
aws cloudformation list-stacks --query "StackSummaries[].StackName"
-
使用以下命令(将 <my-vpc-stack> 替换为您的 VPC 堆栈名称)删除 VPC 堆栈。
aws cloudformation delete-stack --stack-name
<my-vpc-stack>
-
-