您正在查看 GKE On-Prem 以前版本的文档。查看最新文档

删除管理员集群

本页面介绍如何删除 Anthos GKE On-Prem 管理员集群。

准备工作

在删除管理员集群之前,请完成以下步骤:

  • 删除其用户集群。请参阅删除用户集群
  • 从管理员集群中删除使用 PodDisruptionBudgets (PDB) 的任何工作负载。
  • 从管理员集群中删除所有外部对象,例如 PersistentVolumes。
  • 设置一个 KUBECONFIG 环境变量,使其指向您要删除的管理员集群的 kubeconfig:

    export KUBECONFIG=[ADMIN_CLUSTER_KUBECONFIG]
    

    其中,[ADMIN_CLUSTER_KUBECONFIG] 是管理员集群的 kubeconfig 文件的路径。

删除日志记录和监控

GKE On-Prem 的日志记录和监控 Pod 从 StatefulSet 部署)使用 PDB,以阻止节点正常排空。要正确删除管理员集群,您需要删除这些 Pod。

要删除日志记录和监控 Pod,请运行以下命令:

kubectl delete monitoring --all -n kube-system
kubectl delete stackdriver --all -n kube-system

删除监控会清除与 StatefulSets 关联的 PersistentVolumes (PV),但需要单独删除 Stackdriver 的 PersistentVolume。

可选择删除 Stackdriver PV。如果您选择不删除 PV,请在用户集群之外的外部位置记录关联 PV 的位置信息和名称。

通过删除永久性卷声明 (PVC),删除的 PV将得到传播。

要查找 Stackdriver PVC,请运行以下命令:

kubectl get pvc -n kube-system

要删除 PVC,请运行以下命令:

kubectl delete pvc -n kube-system [PVC_NAME]

验证日志记录和监控功能是否已被移除

要验证日志记录和监控是否已被移除,请运行以下命令:

kubectl get pvc -n kube-system
kubectl get statefulsets -n kube-system

清理管理员集群的 F5 分区

从管理员集群中删除 gke-system 命名空间可确保正确清理 F5 分区,从而让您可以将分区重用于其他管理员集群。

要删除 gke-system 命名空间,请运行以下命令:

kubectl delete ns gke-system

然后删除 LoadBalancer 类型的所有剩余服务要列出所有服务,请运行以下命令:

kubectl get services --all-namespaces

对于 LoadBalancer 类型的每个服务,请通过运行以下命令将其删除:

kubectl delete service [SERVICE_NAME] -n [SERVICE_NAMESPACE]

然后,在 F5 BIG-IP 控制台中执行以下操作:

  1. 在控制台的右上角,切换到分区以进行清理。
  2. 依次选择 Local Traffic > Virtual Servers > Virtual Server List
  3. Virtual Servers 菜单中,移除所有虚拟 IP。
  4. 选择 Pools,然后删除所有池。
  5. 选择 Nodes,然后删除所有节点。

验证 F5 分区是否干净

CLI

通过运行以下命令来检查 VIP 是否已关闭:

ping -c 1 -W 1 [F5_LOAD_BALANCER_IP]; echo $?

如果 VIP 无效,则返回 1

F5 界面

要检查是否已从 F5 用户界面中清理分区,请执行以下步骤:

  1. 点击右上角的 Partition 下拉菜单。选择您的管理员集群的分区。
  2. 从左侧 Main 菜单,选择 Local Traffic > Network Map。本地流量网络地图下方不应列出任何内容。
  3. Local Traffic > Virtual Servers 中,选择 Nodes,然后选择 Nodes List。此处也不应列出任何内容。

如果还有任何条目,请从界面中手动删除。

关闭管理员节点机器

要删除管理员控制平面节点机器,您需要关闭 vSphere 资源池中剩余的所有管理员虚拟机。

vSphere 界面

执行以下步骤:

  1. 从 vSphere 菜单中,从 Vsphere 资源池中选择虚拟机
  2. 在“虚拟机”菜单顶部,点击 Actions
  3. 依次选择 PowerPower Off。虚拟机可能需要几分钟时间才能关机。

删除管理员节点机器

关闭虚拟机后,您可以删除虚拟机。

vSphere 界面

执行以下步骤:

  1. 从 vSphere 菜单中,从 Vsphere 资源池中选择虚拟机
  2. 在“虚拟机”菜单顶部,点击 Actions
  3. 点击 Delete from Disk

完成操作后

删除管理员集群后,删除其 kubeconfig。

问题排查

如需了解详情,请参阅问题排查

使用 gkectl 诊断集群问题

使用 gkectl diagnose 命令识别集群问题并与 Google 共享集群信息。请参阅诊断集群问题

以 verbose 模式运行 gkectl 命令

-v5

gkectl 错误记录到 stderr

--alsologtostderr

在管理员工作站中查找 gkectl 日志

即使未传入其调试标志,您也可以在以下管理员工作站目录中查看 gkectl 日志:

/home/ubuntu/.config/syllogi/logs

在管理员集群中查找集群 API 日志

如果虚拟机在管理员控制平面启动后无法启动,您可以通过在管理员集群中检查集群 API 控制器的日志来尝试进行调试:

  1. kube-system 命名空间中找到集群 API 控制器 pod 的名称,其中 [ADMIN_CLUSTER_KUBECONFIG] 是管理员集群的 kubeconfig 文件的路径:

    kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system get pods | grep clusterapi-controllers
  2. 打开 pod 的日志,其中 [POD_NAME] 是 pod 的名称。 您可以选择使用 grep 或类似工具来搜索错误:

    kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system logs [POD_NAME] vsphere-controller-manager