节点指标数据
访问 kubelet 所观测到的节点、卷、Pod 和容器级别指标的机制。
kubelet 在节点、卷、Pod 和容器级别收集统计信息, 并在 Summary API 中输出这些信息。
你可以通过 Kubernetes API 服务器将代理的请求发送到 stats Summary API。
下面是一个名为 minikube
的节点的 Summary API 请求示例:
kubectl get --raw "/api/v1/nodes/minikube/proxy/stats/summary"
下面是使用 curl
所执行的相同 API 调用:
# 你需要先运行 "kubectl proxy"
# 更改 8080 为 "kubectl proxy" 指派的端口
curl http://localhost:8080/api/v1/nodes/minikube/proxy/stats/summary
说明:
从 metrics-server
0.6.x 开始,metrics-server
查询 /metrics/resource
kubelet 端点,不查询 /stats/summary
。
概要指标 API 源
默认情况下,Kubernetes 使用 kubelet 内运行的嵌入式 cAdvisor
获取节点概要指标数据。如果你在自己的集群中启用 PodAndContainerStatsFromCRI
特性门控,
且你通过容器运行时接口(CRI)使用支持统计访问的容器运行时,
则 kubelet 将使用 CRI 来获取 Pod 和容器级别的指标数据,
而不是 cAdvisor 来获取。
压力停滞信息(PSI)
特性状态:
Kubernetes v1.34 [beta]
作为 Beta 级别特性,Kubernetes 允许你配置 kubelet 来收集 Linux
内核的压力停滞信息(PSI)
的 CPU、内存和 I/O 使用情况。这些信息是在节点、Pod 和容器级别上收集的。
详细模式请参见 Summary API。
此特性默认启用,通过 KubeletPSI
特性门控管理。
这些信息也在
Prometheus 指标中暴露。
参见了解 PSI 指标, 学习如何解读 PSI 指标。
要求
压力停滞信息要求:
接下来
集群故障排查任务页面讨论了如何使用依赖这些数据的指标管道。
最后修改 August 30, 2025 at 5:35 PM PST: [zh-cn]sync KubeletCgroupDriverFromCRI node-metrics implementation-details (eb3e68ebc8)