Node metrics data
Mechanisms for accessing metrics at node, volume, pod and container level, as seen by the kubelet.
The kubelet gathers metric statistics at the node, volume, pod and container level, and emits this information in the Summary API.
You can send a proxied request to the stats summary API via the Kubernetes API server.
Here is an example of a Summary API request for a node named minikube
:
kubectl get --raw "/api/v1/nodes/minikube/proxy/stats/summary"
Here is the same API call using curl
:
# 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
Note: Beginning with metrics-server
0.6.x, metrics-server
queries the /metrics/resource
kubelet endpoint, and not /stats/summary
.
Summary metrics API source
By default, Kubernetes fetches node summary metrics data using an embedded cAdvisor that runs within the kubelet.
Summary API data via CRI
FEATURE STATE: Kubernetes v1.23 [alpha]
If you enable the PodAndContainerStatsFromCRI
feature gate in your cluster, and you use a container runtime that supports statistics access via Container Runtime Interface (CRI), then the kubelet fetches Pod- and container-level metric data using CRI, and not via cAdvisor.
What’s next
The task pages for Troubleshooting Clusters discuss how to use a metrics pipeline that rely on these data.