Interview Kubernetes, Docker, Helm & Podman

How does Kubernetes DNS work for service discovery?

Kubernetes, Docker, Helm & Podman · Basic level

Answer

Kubernetes DNS is usually provided by CoreDNS. Services get predictable DNS names, ClusterIP Services resolve to the Service IP, and headless Services can return individual Pod endpoint records for direct discovery.

Technical explanation

Service DNS names follow patterns like service.namespace.svc.cluster.local, with search domains making short names work inside the namespace.

DNS problems often come from CoreDNS health, NetworkPolicy, kube-proxy/CNI issues, or using the wrong namespace name.

Kubernetes workload controllers encode different lifecycle guarantees: interchangeable replicas, stable identities, node-local agents, or finite tasks.

Storage decisions must align with durability, access mode, zone placement, backup, restore, and failover behavior.

Autoscaling should be designed with metrics, scheduling constraints, PDBs, and node capacity together.

Hands-on example

1. Deploy a workload for this exercise using kubectl apply and a small test image such as nginx, busybox, or a purpose-built app: test CoreDNS service discovery from a temporary debug Pod.

2. Inspect ownerReferences, events, Pods, PVCs, PVs, EndpointSlices, and metrics depending on the resource being tested.

3. Create a realistic disruption: delete a Pod, scale replicas, restart a node, fill a queue, or recreate storage attachment in a test environment.

4. Write the runbook entry covering expected behavior, safe rollback, and what alarms should exist.

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Kubernetes, Docker, Helm & Podman interview questions

← All Kubernetes, Docker, Helm & Podman questions