Dash0 Logo
Infrastructure MonitoringLog ManagementApplication Performance ManagementDistributed TracingKubernetes MonitoringWebsite MonitoringDashboardsAlertingService MapIntegrationsTransparent CostObservability as Code
PricingDocs
GuidesBlogKnowledgeComparisonsPodcastIntegrationsChangelog
Contact usMeet our TeamCareersSecurity
  • Book A Demo
  • Sign In
  • Start Free Trial
Book a demoSign in
Start Free Trial

Resources

  • Pricing
  • Blog
  • Guides
  • Knowledge
  • Comparisons
  • Integrations
  • Documentation
  • Glossary
  • OTelBin.io
  • Sitemap

Company

  • Our Team
  • Careers
  • Trust Center
  • Security

Compare

  • Datadog
  • Grafana
  • Dynatrace
  • New Relic
  • Elastic
  • Honeycomb
  • Sentry

Contact

  • Contact us
  • GitHub
  • LinkedIn
  • X
  • YouTube
  • Dash0 Newsletter
  • Terms and Conditions
  • Privacy Policy
  • Data Processing Agreement
  • Vulnerability Disclosure

©2025 Dash0 Inc.

Hub/Google Kubernetes Engine (GKE)

Technology

Google Kubernetes Engine (GKE)

Dash0 integrates with Google Kubernetes Engine by retrieving platform-level and control plane metrics from Google Cloud Monitoring, offering visibility into node pools, autoscaling, and pod readiness.

Related Integrations

Google Cloud Platform

In this section
    TechnologyOverviewUse CasesMetrics SummarySetupRelated integrations

Overview

Overview

Google Kubernetes Engine (GKE) is a managed Kubernetes platform from Google Cloud. It integrates deeply with Cloud Monitoring to expose platform-level metrics that are not available inside the cluster.

This integration helps you collect GKE Autopilot and control plane metrics using the OpenTelemetry Collector's googlecloudmonitoring receiver. These metrics are sourced from Cloud Monitoring and include autoscaler recommendations, node pool status, and pod readiness latencies — all of which are crucial for understanding your cluster's health and behavior at the platform level.

Use Cases

  • Fetch GKE control plane metrics from Cloud Monitoring.
  • Monitor node pool availability and autoscaler recommendations.
  • View pod readiness and interruption latencies.

Metrics Summary

The OpenTelemetry Collector's googlecloudmonitoring receiver currently supports Cloud Run metrics with INT64 and DOUBLE value types. This includes CPU, memory, network, and request counts. Metrics with DISTRIBUTION value types (e.g. histograms) are not supported and will be skipped by the receiver.

Metric NameDescription
kubernetes.io/autoscaler/container/cpu/per_replica_recommended_request_coresRecommended CPU per replica
kubernetes.io/autoscaler/container/memory/per_replica_recommended_request_bytesRecommended memory per replica
kubernetes.io/autoscaler/latencies/per_hpa_recommendation_scale_latency_secondsLatency of autoscaler recommendations
kubernetes.io/node_pool/interruption_countNumber of interruptions in the node pool
kubernetes.io/node_pool/statusStatus of the node pool
kubernetes.io/node_pool/multi_host/availableAvailability of multi-host node pools
kubernetes.io/node/interruption_countNode-level interruption count
kubernetes.io/node/latencies/startupTime taken for node startup
kubernetes.io/node/status_conditionGeneral node condition status
kubernetes.io/pod/latencies/pod_first_readyTime for pod to become ready after scheduling
kubernetes.io/pod/network/policy_event_countCount of network policy events per pod

Full metric definitions available in Google Cloud Monitoring metrics for Kubernetes

Setup

Setup

This guide explains how to deploy the OpenTelemetry Collector inside your GKE cluster to collect metrics that are available via Cloud Monitoring, such as autoscaler recommendations, pod readiness latencies, and node pool interruptions.

These metrics are essential for monitoring GKE Autopilot and control plane behaviors.

1. Install the OpenTelemetry Collector

You can install the Collector using one of the supported methods:

  • Helm Chart Installation Guide
  • OpenTelemetry Operator Guide

Both support supplying a custom configuration.

2. Granting Access and Requirements

To collect metrics from Google Cloud Monitoring, the OpenTelemetry Collector must authenticate with the correct permissions and run in a properly configured GCP project.

Required Permissions

The Collector must use a Google Cloud service account with the following role:

  • roles/monitoring.viewer — grants read access to Cloud Monitoring metrics.

You can assign this role directly to a service account or via Workload Identity if running on GKE.

Authentication

The googlecloudmonitoring receiver uses Application Default Credentials (ADC) to authenticate. The behavior depends on where you run the Collector:

  • On GCP (GKE, Compute Engine): Credentials are picked up automatically from the attached service account — no need to set environment variables.
  • Outside GCP (e.g., on a VM or local environment): You must set the GOOGLE_APPLICATION_CREDENTIALS environment variable to point to a service account key file.

Wherever possible, prefer using GCP-native authentication mechanisms like Workload Identity over key files.

Running on GKE? Use Workload Identity

To bind a Kubernetes service account (KSA) to a GCP service account:

  • Enable Workload Identity on your GKE cluster (enabled by default on Autopilot).
  • Annotate your KSA with the email of the GCP service account.
  • Ensure the GCP service account trusts the KSA via the roles/iam.workloadIdentityUser binding.

See Workload Identity docs for full setup details.

GCP Project Requirements

Make sure the project you're collecting metrics from meets the following:

  • Billing is enabled — required for Cloud Monitoring to function beyond the free tier.
  • Cloud Monitoring API is enabled — the collector depends on this to fetch metrics.
  • Relevant metrics exist — the metrics you request must be emitted by services running in that project.

If you're not seeing expected data, check that the service is deployed and actively generating telemetry in the target project.

3. Configure the Collector

Below is a sample configuration to collect platform-level metrics from Google Cloud Monitoring.

Replace the <YOUR_GCP_PROJEC_ID> with your GCP project id. Dash0 GRPC endpoint and token can be obtained in the organization settings for your account under "Auth Tokens" and "Endpoints".

4. Optimize for Cost and Performance

As of October 2, 2025, Google will charge based on the number of time series returned, not API calls. To reduce cost:

  • Use metric_descriptor_filter and metrics_list to limit the scope of metrics pulled.
  • Keep collection_interval appropriate (e.g., 5m) to avoid excess traffic and redundant data.

5. Learn More

  • googlecloudmonitoringreceiver docs
  • Kubernetes metrics list