Search code examples
monitoringgoogle-kubernetes-enginegoogle-cloud-stackdriver

Problem: empty graphics in GKE cluster node detail (No data for this time interval). How can I fix it?


I have a cluster in Google Cloud. But I need to know information about resources usage. In interface of each node there are three graphics about CPU, memory and disk usage. But all this graphics in the each node have warning "No data for this time interval" for any time interval.

no data in any resource usage

I upgraded all clusters and nodes to the latest version 1.15.4-gke.22 and changed "Legacy Stackdriver Logging" to "Stackdriver Kubernetes Engine Monitoring".

Stackdriver Kubernetes Engine Monitoring enabled

But it didn't help. In Stackdriver Workspace there is only "disk_read_bytes" with graphics, any other requests in Metric Explorer have only message "No data for this time interval"

no data for this time interval

If I do request "kubectl top nodes" in the command line, I see current data for CPU and memory. But I need to see it on Node detail page to understand the peak load. How can I configure it?


Solution

  • In my case, I was missing permissions on the IAM service account associated with the cluster - make sure it has the roles:

    • Monitoring Metrics Writer (roles/monitoring.metricWriter)
    • Logs Writer (roles/logging.logWriter)
    • Stackdriver Resource Metadata Writer (roles/stackdriver.resourceMetadata.writer)

    This is documented here