Observing Contour with OpenTelemetry and Dash0
Blog post from Dash0
Ingress controllers, which serve as the critical entry point for Kubernetes clusters, play a vital role in handling TLS termination and routing requests. This text explores the observability of Contour, an ingress controller that uses Envoy and is gaining popularity due to its CRD-driven architecture and separation of control and data planes. Like ingress-NGINX, Contour supports OpenTelemetry for distributed tracing but requires the OpenTelemetry Collector to integrate logs and metrics, scraping Prometheus metrics and parsing logs to enrich them with trace context. The Collector operates in two forms: a DaemonSet for node-local log collection and a Deployment for centralized trace and metric aggregation, ensuring all signals reach the observability platform Dash0. This approach highlights the current state of OpenTelemetry adoption in Kubernetes, demonstrating progress in tracing and the necessary role of the Collector in unifying logs and metrics for effective monitoring.