Courseiva
Container Orchestration →hardMultiple Choice

KCNA Container Orchestration Practice Question

A team runs a stateful application in a Kubernetes cluster. They need each Pod to have a stable network identity and its own persistent storage that survives Pod rescheduling. Which controller should they use?

⚠ Common exam trap

The trap here is assuming a Deployment with a PersistentVolumeClaim can provide stable per-Pod storage, when it cannot guarantee identity or one-to-one storage.

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

✓

A StatefulSet

StatefulSets are designed for stateful applications requiring stable network identifiers and persistent storage. They provide ordinal Pod names, stable DNS via a headless Service, and PersistentVolumeClaims that are retained. Deployments, DaemonSets, and ReplicaSets manage stateless or node-level workloads and do not offer these guarantees.

Answer analysis

Option-by-option breakdown

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

  • ✗

    A ReplicaSet

    Why it's wrong here

    A ReplicaSet maintains a specified number of identical Pods but does not offer stable identities or persistent storage. Pods are replaceable and have random names. It is a lower-level controller often managed by a Deployment. It cannot satisfy the need for stable network identity and dedicated storage per Pod.

  • ✗

    A DaemonSet

    Why it's wrong here

    A DaemonSet ensures a copy of a Pod runs on every node, typically for node-level services like logging or monitoring. It does not provide stable network identities or per-Pod persistent storage for stateful applications. Pods are tied to nodes, and storage is not managed per Pod. Therefore, it is unsuitable for this scenario.

  • ✗

    A Deployment

    Why it's wrong here

    Deployments manage stateless applications with interchangeable Pods. Pods do not have stable identities; their names are random, and they share or lack persistent storage. While a Deployment can use a PersistentVolumeClaim, it cannot provide per-Pod stable storage or identity. Thus, it does not meet the stateful requirements.

  • ✓

    A StatefulSet

    Why this is correct

    StatefulSets provide stable, unique network identities and persistent storage for each Pod. Pods are created with ordinal names and a headless Service gives them stable DNS names. PersistentVolumeClaims are retained across rescheduling. This exactly matches the requirement for stable identity and per-Pod storage, making it the correct choice.

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 and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official CNCF exam blueprint

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.