Kubernetes Metrics Server: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
=External=
* https://github.com/kubernetes-incubator/metrics-server
* https://github.com/kubernetes-sigs/metrics-server
* https://github.com/kubernetes/community/blob/master/contributors/design-proposals/instrumentation/metrics-server.md
* https://kubernetes.io/docs/tasks/debug-application-cluster/resource-metrics-pipeline/
=Internal=
=Internal=
* [[Kubernetes_Resources_Management_Concepts#Kubernetes_Metrics_Server|Kubernetes Resources Management Concepts]]
* [[Metrics in Kubernetes]]
* [[Kubernetes_Autoscaling_Concepts#Horizontal_Pod_Autoscaling|Horizontal Pod Autoscaling]]
* [[Kubelet#Metrics_Collection|kubelet]]
 
=Overview=
 
The Kubernetes metrics server, also referred to as "metrics-server" is a lightweight, short-term, in-memory cluster-wide aggregator of resource usage data. It collects and exposes [[Metrics_in_Kubernetes#Resource_Metrics|resource metrics]]. metrics-server is used as part of the Kubernetes [[Metrics_in_Kubernetes#Resource_Metrics_Pipeline|resource metrics pipeline]]. The metrics server discovers all nodes on the cluster and queries each node's [[kubelet#Metrics_Collection|kubelet]] for [[Metrics_in_Kubernetes#Resource_Metrics|resource metrics]] (CPU and memory) then exposes these metric via the [[Metrics_in_Kubernetes#Resource_Metrics_API|Resource Metrics API]]. The Resource Metrics API is not available if the metrics server is not deployed. The API is served at /metrics/resource/v1beta1 on the kubelet's authenticated and read-only ports. The metrics server is registered with the main API through [[Kubernetes Aggregation Layer|Kubernetes aggregator]] and operates as an extension API server.


=TODO=
The metrics server is not meant for non-autoscaling purposes. It should not be used to forward metrics to monitoring solutions, or as a source of monitoring solution metrics. Use full monitoring solutions like [[Prometheus]].


* Install the metric server for EKS: https://docs.aws.amazon.com/eks/latest/userguide/horizontal-pod-autoscaler.html
=Operations=
* [[Kubernetes_Metrics_Server_Operations#Docker_Desktop_Kubernetes|Install metrics-server with manifest on Docker Desktop Kubernetes]]

Latest revision as of 19:23, 15 October 2020

External

Internal

Overview

The Kubernetes metrics server, also referred to as "metrics-server" is a lightweight, short-term, in-memory cluster-wide aggregator of resource usage data. It collects and exposes resource metrics. metrics-server is used as part of the Kubernetes resource metrics pipeline. The metrics server discovers all nodes on the cluster and queries each node's kubelet for resource metrics (CPU and memory) then exposes these metric via the Resource Metrics API. The Resource Metrics API is not available if the metrics server is not deployed. The API is served at /metrics/resource/v1beta1 on the kubelet's authenticated and read-only ports. The metrics server is registered with the main API through Kubernetes aggregator and operates as an extension API server.

The metrics server is not meant for non-autoscaling purposes. It should not be used to forward metrics to monitoring solutions, or as a source of monitoring solution metrics. Use full monitoring solutions like Prometheus.

Operations