Courseiva
Storage →hardMultiple Choice

CKA Storage Practice Question

A CSI driver is installed in the cluster, but a PersistentVolumeClaim using a StorageClass that references this driver remains Pending. The administrator checks the logs of the CSI controller pod and sees no errors. What is a possible 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 StorageClass volumeBindingMode is set to WaitForFirstConsumer.

If the volumeBindingMode is set to WaitForFirstConsumer, the PV will not be provisioned until a pod using the PVC is scheduled. This is a common pitfall. The CSI driver may be working fine, but the binding mode delays provisioning.

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 CSI driver is not registered correctly.

    Why it's wrong here

    The CSI driver not being registered correctly would surface as explicit failures during the plugin registration handshake between the kubelet and the driver. The kubelet would log errors such as "failed to get CSI driver" and provisioning attempts would fail with events on the PVC like "Failed to provision volume". Because the problem states that there are no errors at all, and the PVC is simply Pending, an unregistered driver is an unlikely root cause; a registration problem would generate meaningful errors, not silence.

  • ✓

    The StorageClass volumeBindingMode is set to WaitForFirstConsumer.

    Why this is correct

    With volumeBindingMode: WaitForFirstConsumer, the PersistentVolumeClaim is intentionally left in the Pending state until a pod that references it is created and scheduled to a node. The external provisioner is not invoked at PVC creation time; instead, the scheduler waits for a pod to consume the volume, then binds and provisions it in the node's zone/topology. Therefore, if no pod has been created, the PVC remaining Pending with no errors is exactly the expected behavior.

  • ✗

    The StorageClass volumeBindingMode is set to Immediate.

    Why it's wrong here

    If volumeBindingMode were set to Immediate, the provisioner would attempt to create and bind a volume as soon as the PVC is created, and with a properly installed and registered CSI driver it would succeed unless there was a provisioning error. The absence of any error events or provisioner logs would make this scenario inconsistent with a Pending PVC; either the volume would be bound or there would be a visible failure. Immediate mode does not cause silent indefinite Pending.

  • ✗

    The PVC requests a size that is not available.

    Why it's wrong here

    If the requested storage size were unavailable, the CSI provisioner would normally return an error after attempting to allocate the volume, and the PVC would receive an event such as "ProvisioningFailed" or "InvalidCapacity". A mere Pending state with no accompanying error indicates that the provisioner has not even been triggered to evaluate capacity, which is characteristic of deferred provisioning rather than capacity exhaustion. Modern CSI drivers also support dynamic capacity management, so a fixed size is rarely a reason for silent Pending.

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 →

How Courseiva writes practice questions · Editorial policy

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.