Courseiva

CKAD Application Observability and Maintenance Practice Question

You want to see detailed information about a node's resource usage. Which command should you run?

⚠ Common exam trap

Many candidates confuse `kubectl describe node` (which shows static resource capacity) with `kubectl top node` (which shows dynamic usage), leading them to choose option A for resource monitoring questions.

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

✓

kubectl top node

`kubectl top node` retrieves real-time CPU and memory usage metrics for nodes from the metrics server, which is essential for monitoring resource consumption. This command directly answers the question about detailed resource usage, unlike other options that provide configuration or log 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.

  • ✗

    kubectl describe node

    Why it's wrong here

    kubectl describe node fetches the node's status object and presents a detailed summary including capacity, allocatable resources, conditions, taints, and the list of pods scheduled on it. However, it only reflects the node's total capacity and the requests/limits defined in pod specs, not real-time CPU or memory utilization. For actual current usage, you need to query the metrics API, which is exactly what kubectl top node does.

  • ✗

    kubectl logs node

    Why it's wrong here

    kubectl logs retrieves the log output from a specific container within a pod, so it requires a pod name and optionally a container name as arguments. A node is a host machine, not a Kubernetes object that exposes a container log stream through the API server. Node-level OS logs are outside kubectl's scope and are typically accessed via journalctl, SSH, or a dedicated logging agent.

  • ✗

    kubectl get nodes -o wide

    Why it's wrong here

    kubectl get nodes -o wide outputs a tabular list of nodes with extra columns such as internal IP, external IP, OS image, kernel version, and container runtime. This command reads only the node objects and their status endpoints, never contacting the metrics API, so it provides no information about CPU or memory usage. It is useful for cluster inventory and connectivity checks, not for real-time resource monitoring.

  • ✓

    kubectl top node

    Why this is correct

    kubectl top node retrieves live CPU and memory usage for each node from the Kubernetes metrics API, which is typically served by metrics-server, and reports both raw values and the percentage of allocatable resources consumed. It is the Kubernetes equivalent of the top utility and the standard way to see current node utilization. If metrics-server is not installed or unavailable, the command fails with an error like 'error: metrics not available'.

About these practice questions

Courseiva writes every CKAD question from scratch — 826 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

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.