如何删除 Google Kubernetes Engine Autopilot 中不健康的节点?

如何删除 Google Kubernetes Engine Autopilot 中不健康的节点?

我在 GKE autopilot 上运行的 Kubernetes 集群有一个不健康的节点。该节点有状态Ready,但其上运行的所有 Pod 都有CreateContainerError状态,并且似乎卡在轮询容器映像上。

例子:

(正常拉取 101 秒(x1326 持续 4 小时 49 分钟)kubelet 容器映像“gke.gcr.io/cluster-proportional-autoscaler:v1.8.10-gke.3@sha256:274afbfd520aef0933f1fefabddbb33144700982965f9e3632caabb055e912c6”已存在于机器上)。

由于我的帐户配额不足(显然 1TB 的计算存储对于小型集群来说不够),kubernetes 升级时出了点问题。我获得了更多配额,但自动驾驶仪集群无法自行修复。

我确实“封锁”了该节点以将其标记为不可调度,并从中手动删除了我的 pod。新 pod 被调度到更健康的节点上,所以还不算太糟。

现在我想清理一下。旧的 pod 卡在了Terminating状态中,但强制删除它们后它们就消失了。

kube-system我无法在和命名空间上执行相同操作gke-gmp-system。我看到“托管”Pod 处于CreateContainerError状态,并且它们正在循环拉取容器映像。其中一个也处于Terminating状态。

我想删除这个节点,显然你需要耗尽节点并忽略kube-system命名空间中的错误。我已排干节点但它仍然在那里。

我怎样才能删除不健康的节点?

答案1

新的 kubernetes 版本最终问世,升级集群解决了不健康的节点。

降级和升级集群或许也能起到作用。

相关内容