We have multiple EKS clusters, and we use Prometheus for monitoring. In our Grafana dashboard, we have several panels for each EKS cluster to display metrics like CPU usage, memory utilization, and filesystem usage. For each cluster, we show composite percentage values for CPU usage, memory utilization, and filesystem usage.
To display CPU usage, I’m using the following query:
round(sum(rate(container_cpu_usage_seconds_total{id=“/”}[1h])) / sum(machine_cpu_cores{}) * 100)
This query returns data for only one Prometheus data source, while for others, I get a “No Data” message.
If I remove the “id” filter, I get data from the other Prometheus data sources, but I’m unsure if this is the correct approach or if it provides accurate values.
Could someone explain why I’m not receiving data when using the “id” filter?