Metrics server is one of the components in core metrics pipeline described in Kubernetes monitoring architecture.
Metrics server is responsible for collecting resource metrics from kubelets and exposing them in Kubernetes Apiserver
through Metrics API. Main consumers of those metrics are kubectl top
, HPA and VPA. Metric server stores only the
latest values of metrics needed for core metrics pipeline (CPU, Memory) and is not responsible for forwarding metrics
to third-party destinations.
The detailed design of the project can be found in the following docs:
Metrics server has particular requirements on cluster and network configuration that is not default for all cluster distributions. Please ensure that your cluster distribution supports those requirements before using metrics server:
- Metrics server needs to be reachable from kube-apiserver (Configuring master to cluster communication)
- Kube-apiserver should be correctly configured to enable aggregation layer (How to configure aggregation layer)
- Nodes need to have kubelet authorization configured and match metrics-server configuration (How to configure kubelet authorization)
- Pod/Node metrics need to be exposed by Kubelet by Summary API
Compatibility matrix:
Metrics Server | Metrics API group/version | Supported Kubernetes version |
---|---|---|
0.3.x | metrics.k8s.io/v1beta1 |
1.8+ |
0.2.x | metrics.k8s.io/v1beta1 |
1.8+ |
In order to deploy metrics-server in your cluster run the following command from the top-level directory of this repository:
$ kubectl apply -f deploy/kubernetes/
You can also use this helm chart to deploy the metric-server in your cluster (This isn't supported by the metrics-server maintainers): https://github.com/helm/charts/tree/master/stable/metrics-server
Before posting it an issue, first checkout Frequently Asked Questions.
Learn how to engage with the Kubernetes community on the community page.
You can reach the maintainers of this project at:
This project is maintained by SIG Instrumentation
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.