Courseiva
Workloads and Scheduling →mediumMultiple Select

CKA Workloads and Scheduling Practice Question

Which THREE of the following are characteristics of a Kubernetes StatefulSet? (Select THREE)

⚠ Common exam trap

Many candidates confuse StatefulSet behavior with Deployment behavior, assuming pods are interchangeable or created in random order, but StatefulSets enforce ordered creation/termination and unique identities for stateful workloads.

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

✓

Pods are created and terminated in a predictable order (ordinal index)

Option A is correct because a StatefulSet assigns each pod a stable ordinal index (0, 1, 2, ...) and creates, scales, and terminates pods in that strict ordered sequence, unlike a Deployment. Option B is correct because StatefulSets use volumeClaimTemplates to give each pod its own dedicated PersistentVolumeClaim, which is retained and reattached to the same ordinal pod even after rescheduling. Option D is correct because each StatefulSet pod receives a stable, unique network identity in the form of a predictable hostname (pod-name.service-name) backed by a headless Service, so DNS names remain consistent across restarts. Option C is incorrect because StatefulSet pods are never created in random order; ordering is deterministic by ordinal. Option E is incorrect because StatefulSet pods are deliberately not interchangeable — each has its own identity, hostname, and storage, which is the opposite of the interchangeable replicas in a Deployment.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    Pods are created and terminated in a predictable order (ordinal index)

    Why this is correct

    This is a key characteristic of StatefulSets. They assign ordinal indices (0,1,2,...) and create/scale/terminate pods in order, ensuring that each pod is fully ready before the next is started. For example, when scaling up, pod-0 starts and becomes ready, then pod-1, etc. During termination, it's reverse order. This ordered behavior is critical for applications requiring leader election or primary/secondary roles, as the first pod often becomes the leader.

  • ✓

    Each pod gets its own PersistentVolumeClaim (PVC) that persists across rescheduling

    Why this is correct

    StatefulSets use volumeClaimTemplates to create a dedicated PVC for each pod replica. This PVC is bound to a PersistentVolume (PV) and remains associated with the pod's ordinal identity. If the pod is rescheduled to a different node, the same PVC is reattached, ensuring data persistence and consistency across restarts and rescheduling events.

  • ✗

    Pods are created in random order

    Why it's wrong here

    This is incorrect. StatefulSets do not create pods randomly; they create them sequentially based on ordinal index, starting from 0 to N-1. Random creation would violate the guaranteed ordering that StatefulSets provide, which is essential for stateful applications that rely on stable identities and ordered startup. Deployments and ReplicaSets create pods in arbitrary order, but StatefulSets specifically avoid randomness.

  • ✓

    Each pod gets a unique, stable network identity (hostname)

    Why this is correct

    StatefulSets create stable network identities for each pod using a predictable hostname based on the StatefulSet name and ordinal index (e.g., web-0, web-1). These hostnames are stable across rescheduling because the pod's name is preserved, and Kubernetes DNS resolves these names to the pod's IP address. This stability is essential for stateful services like databases that need to discover peers by consistent canonical names.

  • ✗

    All pods in the StatefulSet are interchangeable

    Why it's wrong here

    This is incorrect. Each pod in a StatefulSet has its own unique ordinal identity, stable hostname, and dedicated storage. They are not interchangeable because each pod maintains its own state and network identity; unlike a Deployment where pods are equivalent and can be replaced arbitrarily, StatefulSet pods must be treated as individual, identifiable instances. Replacing one with another would break the stable identity guarantees.

Go deeper

Related to this question

About these practice questions

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