Courseiva
Kubernetes Fundamentals →mediumMultiple Choice

KCNA Kubernetes Fundamentals Practice Question

You want to run a batch job that processes data and then terminates. Which Kubernetes resource is best suited for this workload?

⚠ Common exam trap

CNCF often tests the distinction between controllers that maintain 'desired state' (Deployments, StatefulSets) versus controllers that manage 'completion' (Jobs), and the trap here is that candidates mistakenly choose Deployment for any workload that 'processes data' without recognizing the terminating nature of the task.

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

✓

Job

A Kubernetes Job is designed for batch processing workloads that run to completion and then terminate. Unlike controllers that maintain a desired number of running Pods (like Deployments or StatefulSets), a Job creates one or more Pods and ensures they successfully exit. Once the specified number of successful completions is reached, the Job stops, making it the ideal choice for a one-time data processing task.

Answer analysis

Option-by-option breakdown

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

  • ✗

    StatefulSet

    Why it's wrong here

    StatefulSet assigns stable network identities and persistent storage per pod, which suits databases and clustered stateful applications, not finite batch work. It provides no completion semantics, so pods restart indefinitely rather than terminating after processing. A Job is designed for run-to-completion workloads; StatefulSet would be correct for a stateful database needing ordered, persistent replicas.

  • ✗

    DaemonSet

    Why it's wrong here

    DaemonSet schedules one pod per node to provide node-level services such as logging or monitoring agents, and it never marks work complete. It cannot model a finite batch that processes data and terminates. A Job is the correct controller for run-to-completion tasks; DaemonSet fits cluster-wide per-node daemons.

  • ✓

    Job

    Why this is correct

    A Kubernetes Job creates one or more pods that run to completion, then stops — exactly matching a batch workload that processes data and terminates. Unlike a Deployment, which maintains a desired replica count indefinitely, a Job tracks successful completions, satisfying the stem's requirement for finite, run-to-finish execution.

  • ✗

    Deployment

    Why it's wrong here

    A Deployment maintains a desired replica count and restarts terminated pods, so a batch job that must finish and exit would be perpetually recreated. Deployments are tempting because they run containers reliably, which suits long-running stateless services, not finite run-to-completion workloads.

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.