节点指标数据

kubelet 查看节点、卷、Pod 和容器级别指标的机制。

kubelet 在节点、卷、Pod 和容器级别收集指标统计信息,并在 Summary API 中发出此信息。

你可以通过 Kubernetes API Server 向 stats summary API 发送代理请求。

这是一个名为 minikube 的节点的 Summary API 请求示例

kubectl get --raw "/api/v1/nodes/minikube/proxy/stats/summary"

这是使用 curl 的相同 API 调用示例

# You need to run "kubectl proxy" first
# Change 8080 to the port that "kubectl proxy" assigns
curl http://localhost:8080/api/v1/nodes/minikube/proxy/stats/summary

Summary 指标 API 源

默认情况下,Kubernetes 使用运行在 kubelet 中的嵌入式 cAdvisor 获取节点摘要指标数据。如果你在集群中启用了 PodAndContainerStatsFromCRI 特性门控,并且你使用的容器运行时支持通过 容器运行时接口 (CRI) 访问统计信息,则 kubelet 使用 CRI 获取 Pod 和容器级别的指标数据,而不是通过 cAdvisor。

压力停顿信息 (PSI)

特性状态: Kubernetes v1.33 [alpha]

作为一个 Alpha 特性,Kubernetes 允许你配置 kubelet 来收集 Linux 内核关于 CPU、内存和 IO 使用情况的压力停顿信息 (PSI)。这些信息在节点、Pod 和容器级别收集。有关详细模式,请参阅Summary API。你必须启用 KubeletPSI 特性门控才能使用此功能。这些信息也暴露在Prometheus 指标中。

要求

压力停顿信息需要

下一步

有关集群故障排除的任务页面讨论了如何使用依赖这些数据的指标管线。

最后修改于 2025 年 4 月 8 日 下午 3:42 PST: 将 cgroup v2 添加到 PSI 要求中 (fd68ed8909)