CKAD Services and Networking Practice Question
You have a Service named 'my-svc' in the 'prod' namespace. What is the fully qualified DNS name for this Service?
⚠ Common exam trap
The CKAD exam often tests the exact order of components in the DNS name, specifically that the namespace comes before 'svc' and after the service name, and that 'svc' is a required subdomain, not optional.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
my-svc.prod.svc.cluster.local
The fully qualified DNS name for a Service in Kubernetes follows the pattern `<service-name>.<namespace>.svc.cluster.local`. For 'my-svc' in the 'prod' namespace, this resolves to 'my-svc.prod.svc.cluster.local'. This is the standard DNS naming convention used by CoreDNS (or kube-dns) for Service discovery within a cluster.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
my-svc.prod.svc.cluster.local
Why this is correct
This is the canonical fully qualified domain name (FQDN) for a Kubernetes Service. The format is `<service-name>.<namespace>.svc.<cluster-domain>`; here the service `my-svc` is in the `prod` namespace, and `svc` is the DNS subdomain reserved for Services. It resolves to the ClusterIP of the Service and is resolvable only from within the cluster (or via the cluster's DNS). No other components come before the service name.
- ✗
my-svc.svc.cluster.local
Why it's wrong here
This FQDN omits the required namespace segment. In Kubernetes DNS, the namespace is an integral part of the service's DNS name; `my-svc.svc.cluster.local` would be interpreted by the DNS resolver as a service named `my-svc` in the `default` namespace, not in `prod`. Because no such service exists in `default`, this name will not resolve. The correct name must include `.prod` between the service name and `.svc`.
- ✗
prod.my-svc.svc.cluster.local
Why it's wrong here
`prod.my-svc.svc.cluster.local` reverses the mandatory ordering of the service and namespace labels. According to the DNS schema, the service name always precedes its namespace; this string would represent a Service named `prod` in the namespace `my-svc`. Since the actual Service is the opposite (`my-svc` in `prod`), this is invalid for the intended target. Always place the Service name first, then the namespace.
- ✗
my-svc.prod.cluster.local
Why it's wrong here
This name drops the literal `svc` component, which is the fixed subdomain that identifies a Kubernetes Service record. The correct FQDN for a Service always contains `.svc.` after the namespace; without it, the name does not match any Service record and cannot be resolved. The cluster domain may be `cluster.local` by default, but the `.svc` part is mandatory. Therefore this missing component makes the DNS name unusable.
Visual reference
Go deeper
Related to this question
About these practice questions
One of 826 original CKAD practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.