如何查找导致 GKE 中 AUTO_REPAIR_NODES 事件的原因

如何查找导致 GKE 中 AUTO_REPAIR_NODES 事件的原因

我们在之前稳定的 GKE 集群上突然遇到了一大堆AUTO_REPAIR_NODES事件,但无法查明原因。我们找到了这个页面:https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-repair#repair_criteria 建议的项目是:

  • 节点报告NotReady多个时间
  • 节点多次检查未返回任何状态
  • 节点的启动磁盘已满的时间太长。

我们检查了日志,没有发现任何有关 的日志消息NotReady

我们已经检查了豆荚在突然自动修复的节点上,它们在自动修复事件发生之前都在接收流量,并且它们都仍在返回流量。因此,这可能意味着节点本身并没有失去所有连接。

我们检查了所有节点上的临时磁盘使用情况,没有一个节点超过 16gb(使用默认启动磁盘大小 100gb,这意味着临时磁盘限制为 50gb,所以我们肯定还差得很远)

所以基本上我们不知道别的检查,也不知道在哪里去检查。

有人有什么建议吗?

谢谢

答案1

您的集群是否启用了主日志?控制器管理器会为您提供更清晰的画面。

另一个潜在原因是 webhook。如果它们阻止任何系统 pod 正确部署,节点将处于未就绪状态,并显示消息“CNI 插件未启动”。因此,我的建议是检查用户定义的 webhook 范围并删除 kube-system 命名空间(如果包含)。

如果您有控制器日志,请将其粘贴到这里。这样我就可以进一步帮助您。

相关内容