CKA Troubleshooting Practice Question
You run 'kubectl top nodes' and get an error: 'error: metrics not available yet'. What is the most likely cause?
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 metrics-server is not installed or not running
The metrics server is not deployed or not ready; kubectl top requires the metrics server to collect resource usage data.
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 nodes do not have enough resources to run the metrics collection
Why it's wrong here
The metrics-server is designed to be very lightweight and typically consumes only a few tens of millicores of CPU and a few MiB of memory per node. If nodes were critically under-resourced, you'd see pod scheduling failures, OOMKilled events, or the metrics-server failing to start with a resource-specific message, not a generic "error metric" when running kubectl top nodes. The absence or failure of metrics-server is the direct cause of that error, independent of node resource capacity.
- ✗
You do not have permission to view node metrics
Why it's wrong here
RBAC would produce a distinct error: kubectl top nodes queries the metrics.k8s.io API. If the current user lacked permissions, the API server would return a 403 Forbidden response with a message like "nodes.metrics.k8s.io is forbidden: User ... cannot list resource". That is a very different error from "error metric", which indicates the API endpoint itself is unavailable or has no data. Permission errors are immediately identifiable and are not phrased as a metric collection failure.
- ✗
The kubelet is not running on the nodes
Why it's wrong here
If kubelet were down, the node would be reported NotReady and would not appear in kubectl get nodes as Ready; metrics-server also ingests data from the kubelet's summary API, so a down kubelet would cause missing metrics for that node and likely a "unknown" status. The error "error: metrics not available yet" or "error metric" is typically returned when the metrics API has no registered data source — i.e., no metrics-server is serving the API — not because the source agent (kubelet) is down. Also, with kubelet down, kubectl top would fail to get node list or show all nodes not ready.
- ✓
The metrics-server is not installed or not running
Why this is correct
kubectl top nodes relies on the metrics-server to collect resource usage from each kubelet and expose them through the metrics.k8s.io API. If metrics-server is not installed, the API endpoint returns 404 or no data, and kubectl top prints an error such as "error: metrics not available yet". If metrics-server is installed but not running (CrashLoopBackOff, pending), the same failure occurs because the API aggregator has no healthy backing service. Therefore, verifying the metrics-server deployment and its API service is the first step.
Go deeper
Related to this question
About these practice questions
One of 726 original CKA 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 CKA 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 CKA exam.