Courseiva

CKAD Application Observability and Maintenance Practice Question

A pod has been scheduled on a node but is stuck in 'ContainerCreating' state. The team suspects a missing storage class. Which command would best confirm this?

⚠ Common exam trap

A common mix-up: candidates assume checking the StorageClass list (`kubectl get storageclass`) or PVC status (`kubectl get pvc`) will reveal the missing class, but only the pod's detailed description shows the specific provisioning failure event tied to the missing StorageClass.

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>

`kubectl describe pod <pod>` provides detailed event logs and status conditions for the pod, including specific error messages like 'failed to provision volume with StorageClass' or 'storageclass.storage.k8s.io "<name>" not found'. This directly confirms whether a missing storage class is the root cause of the 'ContainerCreating' state, as the pod's events will surface the exact provisioning failure.

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 aggregates node-level conditions (e.g., MemoryPressure), capacity, allocatable, and node events, but it does not inspect the pod's volume mounts or the specific error the kubelet encounters while provisioning a PersistentVolume. A pod stuck in ContainerCreating due to a missing storage class records the failure in its own event stream, not in the node's status. The node can be perfectly healthy; the fault is with the PVC's storage class resolution, leaving describe node with no relevant storage binding error for this pod.

  • ✗

    kubectl get pvc

    Why it's wrong here

    kubectl get pvc lists PersistentVolumeClaims and their status (e.g., Pending, Bound) but does not tie the claim to a particular pod or reveal why the storage class is missing. A PVC referencing a nonexistent storage class appears as Pending, but the precise error like "storageclass.storage.k8s.io \"fast\" not found" is only emitted in the pod's events when the kubelet attempts the mount. Knowing the PVC is pending does not confirm the pod's failure; the pod describe output supplies the actionable cause, so this command is a useful secondary check, not the primary diagnostic.

  • ✗

    kubectl get storageclass

    Why it's wrong here

    kubectl get storageclass enumerates the storage classes available in the cluster but cannot tell you which class a given PVC requested or whether that class matches the pod's volume. The pod's creation failure stems from the interaction between the PVC spec and the cluster's StorageClass objects; the pod's event log contains the exact resolution error. Listing storage classes only shows what exists, not why this pod cannot use it, so you cannot infer the pod's stuck state from this command alone.

  • ✓

    kubectl describe pod <pod>

    Why this is correct

    kubectl describe pod <pod> displays the pod's full status, including the volume list, associated PVCs, container states, and crucially the Events section at the bottom. If the pod is stuck in ContainerCreating, the kubelet emits a FailedMount event with a message such as "unable to find storage class" or "no persistent volumes available for this claim," which directly identifies the missing storage class. This event is the authoritative source for the reason the pod cannot start, and the output also shows current conditions and volume definitions for a complete diagnostic picture.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

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.