本页面介绍了如何删除 Anthos clusters on VMware (GKE On-Prem) 用户集群。
选择用于删除集群的工具
删除用户集群的方式取决于集群是否由 Anthos On-Prem API 管理。如果满足以下任一条件,则用户集群由 Anthos On-Prem API 管理:
该集群在 Google Cloud 控制台中或使用 Google Cloud CLI (gcloud CLI) 创建,这会自动配置 Anthos On-Prem API 以管理集群。
集群是使用
gkectl
创建的,但已配置为由 Anthos On-Prem API 管理。
如果用户集群由 Anthos On-Prem API 管理,则您可以使用任何工具删除集群。如果用户集群不是由 Anthos On-Prem API 管理,请在管理员工作站上使用 gkectl
删除集群。
删除用户集群
gkectl
您可以使用 gkectl
删除任何用户集群,包括由 Anthos On-Prem API 管理的集群。
gkectl delete cluster \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster CLUSTER_NAME
其中
ADMIN_CLUSTER_KUBECONFIG
是管理员集群的 kubeconfig 文件的路径。CLUSTER_NAME
是要删除的用户集群的名称。
如果用户集群删除失败,您可以在运行 gkectl
时使用 --force
标志来清理集群资源。
gkectl delete cluster \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster CLUSTER_NAME \ --force
如果您使用的是 Seesaw 捆绑式负载平衡器,请删除负载平衡器。
Google Cloud 控制台
如果用户集群由 Anthos On-Prem API 管理,请按照以下步骤删除集群:
在 Google Cloud 控制台中,前往 Anthos 集群页面。
选择用户集群所在的 Cloud 项目。
在集群列表中,点击要修改的集群。
在详细信息面板中,如果类型为 vm Anthos (VMware),请执行以下步骤,使用 Google Cloud 控制台删除集群:
在详细信息面板中,点击更多详细信息。
点击窗口顶部附近的
删除。当系统提示您确认时,再次点击删除。
如果类型为外部,则表示集群是使用
gkectl
创建的。在这种情况下,请使用gkectl
删除集群。
gcloud CLI
如果用户集群由 Anthos On-Prem API 管理,请在安装了 gcloud CLI 的计算机上执行以下操作:
使用您的 Google 帐号登录:
gcloud auth login
更新组件:
gcloud components update
获取集群列表,以便确保在删除命令中指定正确的集群名称:
gcloud alpha container vmware clusters list \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION
请替换以下内容:
FLEET_HOST_PROJECT_ID
:集群在其中注册的项目的 ID。LOCATION
:与用户集群关联的 Google Cloud 位置。
输出内容类似如下:
NAME LOCATION VERSION ADMIN_CLUSTER. STATE example-user-cluster-1a us-west1 1.14.1-gke.39 example-admin-cluster-1 RUNNING
运行以下命令以删除集群:
gcloud alpha container vmware clusters delete USER_CLUSTER_NAME \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION \ --force \ --allow-missing
请替换以下内容:
USER_CLUSTER_NAME
:要删除的用户集群的名称。FLEET_HOST_PROJECT_ID
:集群在其中注册的项目的 ID。LOCATION
:与用户集群关联的 Google Cloud 位置。
您可以使用
--force
标志来删除包含节点池的集群。如果没有--force
标志,您必须先删除节点池,然后再删除集群。--allow-missing
标志是标准 Google API 标志。添加此标志后,如果未找到集群,该命令会返回成功。如果该命令返回包含文本
failed connecting to the cluster's control plane
的错误,则表示管理员集群、Connect Agent 或本地环境存在连接问题。如果您认为连接问题是暂时性的(例如由于网络问题导致),请等待并重试该命令。
如果重试该命令仍然失败,请参阅收集 Connect Agent 日志,以使用 Connect Agent 来排查问题。
如果您知道管理员集群已被删除,或者管理员集群或用户集群的虚拟机已关停或无法访问,请添加
--ignore-errors
标志并重试该命令。
如需了解其他标志,请参阅 gcloud CLI 参考文档。
清理资源
如果您在删除集群时出现问题,可能会剩余一些 F5 或 vSphere 资源。以下部分介绍了如何清理这些剩余资源。
在 vSphere 中清理用户集群的虚拟机
要验证用户集群的虚拟机是否已删除,请执行以下步骤:
从 vSphere Web Client 左侧的 Navigator 菜单中,点击 Hosts and Clusters 菜单。
查找管理员集群的资源池。这是管理员集群配置文件中
vCenter.resourcePool
的值。在资源池下,找到以您的用户集群名称为前缀的虚拟机。这些是您的用户集群的控制平面节点。将有一个或三个节点,具体取决于您的用户集群是否具有高可用性控制平面。
查找用户集群的资源池。这是用户集群配置文件中
vCenter.resourcePool
的值。如果您的用户集群配置文件未指定资源池,则会从管理员集群继承。在资源池下,找到以您的用户集群中节点池的名称为前缀的虚拟机。这些是用户集群中的工作器节点。
对于每个控制平面节点和每个工作器节点:
在 vSphere Web 客户端中,右键点击虚拟机,然后选择电源 > 关停。
关停虚拟机后,右键点击虚拟机,然后选择从磁盘中删除。
清理用户集群的 F5 分区
如果用户集群的分区中还有剩余条目,请执行以下步骤:
- 在 F5 BIG-IP 控制台的右上角,切换到您要清理的用户集群分区。
- 依次选择 Local Traffic > Virtual Servers > Virtual Server List。
- 在 Virtual Servers 菜单中,移除所有虚拟 IP 地址。
- 选择 Pools,然后删除所有池。
- 选择 Nodes,然后删除所有节点。
完成操作后
删除集群后,您可以删除用户集群的 kubeconfig。