Tools for Monitoring Resources
In Kubernetes, application monitoring does not depend on a single monitoring solution. On new clusters, you can use resource metrics or pipelines to collect monitoring statistics.
metrics-server discovers all nodes on the cluster and queries each node’s for CPU and memory usage. The kubelet acts as a bridge between the Kubernetes master and the nodes, managing the pods and containers running on a machine. The kubelet translates each pod into its constituent containers and fetches individual container usage statistics from the container runtime through the container runtime interface. If you use a container runtime that uses Linux cgroups and namespaces to implement containers, and the container runtime does not publish usage statistics, then the kubelet can look up those statistics directly (using code from cAdvisor). No matter how those statistics arrive, the kubelet then exposes the aggregated pod resource usage statistics through the metrics-server Resource Metrics API. This API is served at on the kubelet’s authenticated and read-only ports.
Integration of a full metrics pipeline into your Kubernetes implementation is outside the scope of Kubernetes documentation because of the very wide scope of possible solutions.
Learn about additional debugging tools, including: