Courseiva
Kubernetes Fundamentals →hardMultiple Select

KCNA Kubernetes Fundamentals Practice Question

Which THREE of the following are valid reasons to use a StatefulSet instead of a Deployment? (Select 3)

⚠ Common exam trap

A common misconception is that StatefulSets are for any application needing scaling, but the trap is that StatefulSets are specifically for stateful workloads requiring stable identity and storage, not for stateless or unordered scaling scenarios.

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 application requires stable unique network identifiers that persist across rescheduling.

Option B is correct because StatefulSets give each Pod a stable, unique network identity via a headless Service and predictable DNS names (pod-0, pod-1, etc.) that persist across rescheduling, which Deployments do not guarantee. Option D is correct because StatefulSets use volumeClaimTemplates to bind a dedicated PersistentVolumeClaim to each Pod, so each replica keeps its own persistent storage across rescheduling, unlike a Deployment where all replicas typically share or lack per-Pod PVCs. Option E is correct because StatefulSets provide ordered, graceful deployment and scaling (0..N-1) and reverse-order termination with graceful shutdown, which is essential for clustered stateful apps. Option A is not a reason to use a StatefulSet because unordered, rapid scaling is exactly what Deployments handle well. Option C is not a reason because stateless, arbitrarily replicable workloads are the canonical use case for Deployments, not StatefulSets.

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 application needs to be scaled up and down quickly without regard to order.

    Why it's wrong here

    StatefulSets provide stable ordinal identities and ordered scaling; rapid unordered scaling is what Deployments handle. It is tempting because both controllers scale replicas, but StatefulSet ordering guarantees are unnecessary overhead when sequence and identity do not matter.

  • ✓

    The application requires stable unique network identifiers that persist across rescheduling.

    Why this is correct

    StatefulSet pods receive stable, ordinal-based hostnames through a governing headless Service, so each replica keeps a predictable DNS identity such as web-0 or web-1 across rescheduling. Deployments assign random pod names and share one Service address, offering no per-pod identity. This satisfies the stem's requirement for persistent unique network identifiers.

  • ✗

    The application is stateless and can be replicated arbitrarily.

    Why it's wrong here

    Stateless workloads with interchangeable replicas suit Deployments, which manage identical pods without stable identities. It is tempting because StatefulSets also run multiple replicas, but per-pod storage and ordinal naming add no value when any replica can serve any request.

  • ✓

    Each Pod instance requires its own persistent storage that persists across rescheduling.

    Why this is correct

    StatefulSet's volumeClaimTemplates give each replica a stable, uniquely named PersistentVolumeClaim bound to its ordinal identity, so storage follows the Pod across rescheduling. A Deployment's replicas share one PVC template without per-Pod binding, losing data association. This satisfies the stem's requirement for individual persistent storage per Pod instance.

  • ✓

    The application must handle graceful shutdown and ordered termination.

    Why this is correct

    StatefulSet pods receive stable ordinal identities, so Kubernetes terminates them in reverse order and starts them sequentially. This satisfies the stem's ordered termination and graceful shutdown constraint, which a Deployment cannot guarantee because its pods are interchangeable and scaled without ordering.

About these practice questions

Courseiva writes every KCNA question from scratch — 930 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 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.