KCNA Kubernetes Fundamentals Practice Question
A user reports that they cannot connect to a Service from within the cluster. The Service is of type ClusterIP. Running 'kubectl get endpoints service-name' shows no endpoints. What is the most likely cause?
⚠ Common exam trap
KCNA often tests the relationship between Service selectors and pod labels, so candidates who focus on network-level causes (kube-proxy, ports) instead of the selector mismatch pick the wrong answer.
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
✓
The Service's pod selector does not match any running pods
A ClusterIP Service with no endpoints almost always means its label selector does not match any running pods. The endpoints controller populates the Endpoints object by matching the Service's selector against pod labels; if no pods match, the list is empty and traffic cannot be routed. This is the most common cause of the reported symptom.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The Service is not associated with a namespace
Why it's wrong here
A Service always resides in a namespace, so this is not a valid state; the real cause is a label selector matching no pod labels, leaving the endpoint controller with nothing to register. Namespace scoping matters when isolating resources or applying quotas, not when endpoints are empty.
- ✗
The Service is exposed on the wrong port
Why it's wrong here
A wrong Service port would still produce endpoints, since endpoints track pod IP and targetPort, not the Service port. Empty endpoints indicate the selector matches no ready pods, typically a label mismatch or failing readiness probes. Port configuration affects connectivity, not endpoint population.
- ✗
The kube-proxy is not running on the node
Why it's wrong here
kube-proxy only programs iptables or IPVS rules for endpoints that already exist; with no endpoints, traffic has no backend regardless of kube-proxy health. It is tempting because kube-proxy failures do break Service connectivity, but that scenario shows populated endpoints with connection timeouts.
- ✓
The Service's pod selector does not match any running pods
Why this is correct
A ClusterIP Service routes traffic only to pods whose labels match its selector; an empty endpoint list means no pod satisfied that selector. Since the stem shows no endpoints, the selector likely mismatches the running pods' labels, so kube-proxy has no backend addresses to forward to.
Go deeper
Related to this question
About these practice questions
One of 930 original KCNA 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 and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official CNCF exam blueprint
This KCNA 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 KCNA exam.