DevOps · Flashcard

A developer creates a PersistentVolumeClaim requesting 10Gi of storage with StorageClass 'fast-ssd'. The PVC stays in Pending state. Running 'kubectl describe pvc' shows: 'waiting for first consumer to be created before binding'. What does this mean?

  • AThe StorageClass has volumeBindingMode set to WaitForFirstConsumer, which delays PV provisioning until a Pod actually references the PVC. This ensures the volume is created in the same availability zone as the Pod, preventing cross-zone scheduling failures
  • BThe cluster has run out of SSD storage capacity, and the PVC is waiting in a queue until storage is freed by other workloads being terminated
  • CThe PVC is waiting for an administrator to manually approve the storage request, because the 'fast-ssd' StorageClass requires manual provisioning approval for requests over 5Gi
  • DThe CSI driver for the 'fast-ssd' StorageClass has crashed and the PVC is retrying the provisioning request every 30 seconds until the driver recovers

Why this is the answer

WaitForFirstConsumer delays volume binding/provisioning until a Pod using the PVC is scheduled. This is critical in multi-zone clusters: if the PV were created immediately, it might end up in zone-a while the Pod is scheduled to zone-b (where the volume isn't accessible). By waiting, the provisioner knows which zone to create the volume in. The alternative mode, Immediate, provisions the volume as soon as the PVC is created.

Official docs
Study in Gnoseed →