【问题标题】:GKE, automatic restart of stuck nodeGKE,卡住节点自动重启
【发布时间】:2017-05-30 22:34:09
【问题描述】:

有时支持 GKE 集群的节点出现故障,NotReady 状态:

$ kubectl get nodes
NAME                        STATUS     AGE       VERSION
gke-my-pool-f8045547-60gw   Ready      10d       v1.6.2
gke-my-pool-f8045547-7c7e   NotReady   10d       v1.6.2

节点可能会在 NotReady 中停留数天,直到我手动重新启动它。

我对我的 pod 进行了健康检查,所以它们都转到了其他节点,但是这个陈旧的节点仍然连接了 GCE 磁盘的问题。因此,某些 pod 无法在任何其他节点上启动,直到我手动分离磁盘(或重新启动陈旧节点)。

这基本上扼杀了 Kubernetes 的整个想法,因为这种情况每天发生几次,所以我必须整天照看它。有什么方法可以配置 Kubernetes 或 GCE 来自动执行此操作?最简单的方法是自动重启NotReady 节点,但似乎没有办法为节点本身配置健康检查。另一种选择是自动卸载磁盘,当它从另一台机器请求时,但我也看不到任何配置方法。

【问题讨论】:

  • 从我在这里看到的kubernetes.io/docs/tasks/debug-application-cluster/…Currently Kubernetes won’t take any action on the node conditions and events generated by node problem detector. In the future, a remedy system could be introduced to deal with node problems. 因此,这可能会在未来发生(但没有说明何时)
  • 您知道我可以使用标准 GCE 工具监控节点健康吗?它可以按条件重启节点,但我无法将它连接到 Kubernetes 健康端点

标签: kubernetes google-cloud-platform google-compute-engine google-kubernetes-engine


【解决方案1】:

GKE 具有节点自动修复功能,可监控节点的健康状态并触发自动修复事件(目前是 NotReady 节点的节点重新创建)。它目前处于测试阶段,但您可以尝试一下:https://cloud.google.com/container-engine/docs/node-auto-repair

【讨论】:

    猜你喜欢
    • 2022-01-17
    • 1970-01-01
    • 2017-02-19
    • 2021-01-22
    • 2023-01-26
    • 2023-02-15
    • 1970-01-01
    • 2020-03-31
    • 2021-12-23
    相关资源
    最近更新 更多