KCNA Job Practice Question
You need to deploy a batch job that processes a queue and runs to completion. The job should run exactly once and create exactly one pod per work item, but some items may fail. Which Kubernetes resource is best suited?
⚠ Common exam trap
The KCNA exam often tests the distinction between batch and long-running workloads, and the trap here is that candidates may confuse a Job with a Deployment because both can create multiple pods, but a Deployment is designed for continuous availability, not one-time execution.
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 the correct resource for batch processing tasks that run to completion, such as processing a queue where each work item corresponds to a pod. By configuring the `.spec.completions` and `.spec.parallelism` fields, you can ensure exactly one pod per work item and control concurrency. The Job automatically retries failed pods (up to a configurable limit) without restarting the entire batch, making it ideal for handling some failures. In contrast, a Deployment (A) is for long-running, continuously available services; a CronJob (C) is for scheduled recurring jobs; and a DaemonSet (D) runs a pod on every node for infrastructure tasks. Therefore, Job (B) is the best fit.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Deployment
Why it's wrong here
Deployments are for long-running services, not batch jobs that run to completion.
- ✓
Job
Why this is correct
A Job is designed for batch processing, ensuring a specified number of pods complete successfully.
- ✗
CronJob
Why it's wrong here
CronJob is for scheduled jobs, but the requirement is to run once, not on a schedule.
- ✗
DaemonSet
Why it's wrong here
DaemonSet runs one pod per node, not appropriate for batch jobs.
Go deeper
Related to this question
About these practice questions
Courseiva writes every KCNA question from scratch — 833 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 →
Same concept, more angles
5 more ways this is tested on KCNA
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. Which Kubernetes resource is best suited for running a batch processing job that must complete successfully exactly once?
medium- A.DaemonSet
- B.Deployment
- C.CronJob
- ✓ D.Job
Why D: A Kubernetes Job is designed specifically for batch processing tasks that need to run to completion exactly once. It creates one or more Pods and ensures that a specified number of them successfully terminate, making it ideal for workloads like data processing or backups that must finish without retries or restarts.
Variation 2. A company wants to run a batch job that processes data and then terminates. Which Kubernetes resource should they use?
medium- A.CronJob
- ✓ B.Job
- C.Deployment
- D.DaemonSet
Why B: A Job is the correct Kubernetes resource for a batch job that processes data and then terminates. Unlike controllers that maintain a desired state (like Deployments), a Job creates one or more Pods and ensures they run to successful completion. Once the specified number of Pods terminate successfully, the Job is considered complete and does not restart the Pods, making it ideal for one-off or finite processing tasks.
Variation 3. Which Kubernetes resource is used to run a batch job that runs to completion?
easy- A.DaemonSet
- B.StatefulSet
- ✓ C.Job
- D.Deployment
Why C: A Kubernetes Job is specifically designed to run a finite task to completion, creating one or more Pods and ensuring they successfully terminate. Unlike controllers that maintain a desired state of running Pods, a Job tracks the number of successful completions and stops when the specified parallelism or completions count is reached.
Variation 4. A team wants to deploy a batch job that runs once to process a large dataset. The job should run to completion and then terminate. Which Kubernetes resource should be used?
medium- A.DaemonSet
- B.CronJob
- C.Deployment
- ✓ D.Job
Why D: A Job resource is designed for batch processing tasks that run to completion and then terminate. It creates one or more Pods and ensures they successfully finish their work, making it the correct choice for a one-time data processing job.
Variation 5. You need to run a batch job that processes a queue and then terminates. Which Kubernetes resource should you use?
medium- A.Deployment
- B.DaemonSet
- C.StatefulSet
- ✓ D.Job
Why D: A Job is the correct Kubernetes resource for running a batch process that executes a finite task (e.g., processing a queue) and then terminates. Unlike controllers that maintain a desired state indefinitely, a Job creates one or more Pods and ensures they run to successful completion, after which the Job itself completes and no further Pods are created.
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.