排查节点未就绪故障,后跟恢复

本文提供了一个指南,用于排查和解决 Azure Kubernetes 服务 (AKS) 群集中的“节点未就绪”问题。 当节点进入“未就绪”状态时,它可能会中断应用程序的功能,并导致它停止响应。 通常,节点会在短时间内自动恢复。 但是,为了防止反复出现问题并保持稳定的环境,必须了解能够实施有效解决的根本原因。

原因

有几个方案可能导致出现“未就绪”状态:

  • API 服务器的不可用。 这会导致就绪情况探测失败。 这可以防止 Pod 附加到服务,以便不再将流量转发到 Pod 实例。

  • 虚拟机(VM)主机故障。 若要确定是否发生 VM 主机错误,请检查以下信息源:

解决方法

通过运行以下命令 kubectl get apiservices 检查 API 服务器的可用性。 确保在部署 YAML 文件中正确配置就绪情况探测。

有关进一步步骤,请参阅 节点未就绪故障的基本故障排除。

预防

若要防止将来出现此问题,请执行下列操作之一或多项:

  • 确保服务层级已完全付费。
  • 减少对 API 服务器的次数 watchget 请求数。