2025-03-31 –, The Nash
DNS plays a pivotal role in a Kubernetes environment. It is the centerpiece that enables applications to locate each other dynamically. In a production environment, where many pods extensively communicate with each other using DNS, the importance of observability becomes increasingly paramount.
Gaining telemetry insights throughout the lifecycle of a DNS request is challenging due to the numerous hidden systems involved. Components such as the application pod, system resolver, nodelocaldns, CoreDNS, and upstream DNS servers add layers of complexity, making debugging ever more difficult.
In this talk, we will explore the journey of DNS requests across various components with Kuberentes/OS context. We will then move on to tools, starting with the CoreDNS log plugin, before delving into advanced tools like Hubble and Inspektor Gadget’s DNS gadget. By leveraging the power of eBPF, these tools provide deep insights, enabling efficient tracing and resolution of complex DNS problems.
DNS is the backbone of communication in Kubernetes, enabling dynamic discovery between applications. However, observing the full lifecycle of DNS requests in a production environment can be challenging due to the complexity of components like system resolvers, CoreDNS, and upstream DNS servers. In this talk, we’ll trace the journey of DNS requests across these layers in Kubernetes, exploring tools like the CoreDNS log plugin, Hubble, and Inspektor Gadget’s DNS gadget. Leveraging eBPF technology, these tools offer deep insights and efficient debugging to resolve complex DNS issues.
Software engineer with experience in cloud-native software development and system engineering