Technology
Kubernetes
Gain visibility into your Kubernetes environment with unified metrics and checks. Monitor nodes, pods, and containers for immediate issue detection.
Overview
Overview
Kubernetes has become a cloud-native operating system, and monitoring it and its workload is essential to operating your platform. With Dash0, you can gain detailed insights into your Kubernetes clusters. And because Dash0 fully embraces open standards and CNCF technologies, it is incredibly interoperable.
Use Cases
- Monitor Kubernetes cluster and workload metrics
- View workload events and readiness
- See CPU, memory and disk usage statistics.
- Understand how close your workloads are to their limits.
- Observe detailed telemetry about your deployed workloads.
Setup
Setup
Dash0 provides native Kubernetes Views and Dashboards to help you monitor your clusters, workloads, and resource usage. These features rely on OpenTelemetry components and Kubernetes metadata following semantic conventions to ensure consistency across environments.
This setup guide outlines how to collect and export the required telemetry to power Dash0's Kubernetes integration.
Architecture Overview
To support all built-in Kubernetes views in Dash0, telemetry must be collected using a two-tier OpenTelemetry Collector deployment:
1. DaemonSet Collectors (Node-level)
- Receivers:
kubeletstats
- Purpose: Collect CPU, memory, and system metrics per pod and node
- Deployment: Runs as a DaemonSet on every node
2. Deployment Collector (Cluster-level)
- Receivers:
k8s_cluster
- Purpose: Collect workload status and aggregate node metrics
- Deployment: Runs as a single deployment
3. Metadata Enrichment
- Processor:
k8sattributes
- Purpose: Annotate metrics with Kubernetes metadata (e.g.,
k8s.namespace.name
,k8s.pod.name
,k8s.resource.uid
)
Note: For the best experience in Dash0, we strongly recommend enriching telemetry with Kubernetes resource UIDs (e.g.,
k8s.pod.uid
,k8s.node.uid
, etc.). These ensure consistent identity and grouping across restarts or rescheduling. You can include them via thek8sattributes
processor:yaml123456k8sattributes:extract:metadata:- k8s.pod.uid- k8s.node.uid- k8s.deployment.uid
Installation Options
Dash0 supports multiple ways to deploy the telemetry pipeline:
- Dash0 operator for Kubernetes (recommended)
- OpenTelemetry Operator for Kubernetes
-
Helm Chart for The OpenTelemetry Collector
Choose the method that best fits your environment.