There are many critical metrics for monitoring Kubernetes clusters. Monitoring occurs at two levels: cluster and pod. Cluster monitoring tracks the health of an entire Kubernetes cluster to verify if nodes function properly and at the right capacity, and how many applications run on a node and how the cluster utilizes resources. Pod monitoring tracks issues affecting individual pod metrics, like resource utilization, application and pod replication or autoscaling metrics.
At the cluster level, you want to measure how many nodes are available and healthy to determine the cloud resources you need to run the cluster. You also need to measure which computing resources your nodes use—including memory, CPU, bandwidth and disk utilization––to know if you should decrease or increase the size or number of nodes in a cluster.
At the pod level, there are three key metrics: Container: network, CPU and memory usage
Application: specific to the application and related to its business logic
Pod health and availability: how the orchestrator handles a specific pod, health checks, network data and on-progress deployment.