Courseiva
Kubernetes Fundamentals →hardMultiple Choice

KCNA Kubernetes Fundamentals Practice Question

A pod is stuck in the 'Pending' state. Which command would you use to get more details about why the pod cannot be scheduled?

⚠ Common exam trap

A common trap in Kubernetes exams is confusing `kubectl describe pod` (which shows dynamic runtime events and scheduling reasons) with `kubectl get pod -o yaml` (which shows static configuration). Candidates may think YAML output provides the same troubleshooting detail, but it lacks the scheduler decisions and event history that explain why a pod is 'Pending'.

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 describe pod <pod-name>

`kubectl describe pod <pod-name>` provides detailed event logs and status information, including scheduler decisions, resource constraints, and node conditions that explain why a pod remains in 'Pending' state. The 'Pending' state typically indicates the pod has not been scheduled, and `kubectl describe` surfaces the exact reason, such as insufficient CPU/memory, persistent volume claims not bound, or node selector mismatches.

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 logs <pod-name>

    Why it's wrong here

    kubectl logs retrieves container stdout/stderr, which is unavailable while the pod has never started, so it cannot reveal scheduling failures. It is tempting because logs are the first diagnostic for running pods, and would be correct for a CrashLoopBackOff or application error instead.

  • ✗

    kubectl exec -it <pod-name> -- sh

    Why it's wrong here

    kubectl exec requires a running container, so it cannot open a shell in a pod that has never been scheduled onto a node. It is tempting because exec is the standard way to inspect a live container's filesystem or processes, and would be correct once the pod is Running.

  • ✓

    kubectl describe pod <pod-name>

    Why this is correct

    kubectl describe pod returns the pod's events, including scheduler messages such as insufficient CPU, unschedulable taints or unbound persistent volume claims. Those events reveal why the scheduler cannot bind the pod, satisfying the stem's requirement for scheduling failure details.

  • ✗

    kubectl get pod <pod-name> -o yaml

    Why it's wrong here

    kubectl get pod -o yaml shows the pod's spec and status conditions, but not the scheduler's events explaining why no node matched. It is tempting because YAML output reveals resource requests and node selectors, yet kubectl describe surfaces the actual scheduling events.

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 →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

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.