Workload Resource Recommendations Based on Usage
Recommended Requests & Limits for Kubernetes Workloads based on historical usage
This dashboard shows historical usage for Kubernetes Workloads and based on that, gives a recommendation for Requests and Limits settings. It has variables for the percentile and overhead amount used to calculate the recommendations, so you can account for workloads with variable load and also adjust limits based on your own appetite to tradeoff reliability against efficiency.
The dashboard uses:
- kubelet cadvisor metrics which would be normally collected via the metrics-server, for container resource usage data
- kube-state-metrics, for details of current requests & limits set
It also relies on a recording rule
node_namespace_pod_container:container_cpu_usage_seconds_total:sum_rate
from kube-prometheus, which is defined as:
sum by(cluster, namespace, pod, container) (rate(container_cpu_usage_seconds_total{image!="",job="kubelet",metrics_path="/metrics/cadvisor"}[5m])) * on(cluster, namespace, pod) group_left(node) topk by(cluster, namespace, pod) (1, max by(cluster, namespace, pod, node) (kube_pod_info{node!=""}))
Data source config
Collector config:
Upload an updated version of an exported dashboard.json file from Grafana
Revision | Description | Created | |
---|---|---|---|
Download |