CKAD Application Design and Build Practice Question
You need to run a one-time batch job that processes 10 work items in parallel, with a maximum of 3 pods running at the same time. Which Job YAML fields should you set?
⚠ Common exam trap
A common mix-up: candidates confuse `spec.parallelism` with the total number of work items and `spec.completions` with the concurrency limit, leading them to swap the values (e.g., Option B).
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
✓
spec.parallelism: 3 and spec.completions: 10
`spec.parallelism: 3` limits the maximum number of pods running concurrently, and `spec.completions: 10` ensures the Job runs 10 work items to completion. This combination processes all 10 items in parallel batches of 3, meeting the requirement of a one-time batch job with a maximum of 3 pods at a time.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
spec.template.spec.containers and spec.completions
Why it's wrong here
Providing only spec.template.spec.containers (the pod template) and spec.completions is incomplete: completions tells the Job the total number of successful pods required (e.g., 10), but without an explicit spec.parallelism, Kubernetes defaults parallelism to 1. This means the Job runs the pods sequentially, not concurrently, which does not satisfy a requirement to process 10 work items with a concurrency level of 3. You must set spec.parallelism to control the maximum simultaneous pods.
- ✗
spec.parallelism: 10 and spec.completions: 3
Why it's wrong here
Setting spec.parallelism to 10 and spec.completions to 3 configures 10 concurrent pods but declares the Job successful after only 3 pods complete. Once the completions count is reached, the Job controller marks the Job as done and will typically delete or stop any remaining running pods, so the other 7 pods are not guaranteed to finish. This under-counts the total work; to process 10 items, completions must equal the total number of work items (10), while parallelism should reflect the desired concurrency (3).
- ✓
spec.parallelism: 3 and spec.completions: 10
Why this is correct
Correct: spec.parallelism: 3 and spec.completions: 10. Here, parallelism defines the maximum number of pods that may run simultaneously, limiting concurrency to 3. completions specifies that exactly 10 pods must successfully finish overall before the Job is considered complete. As pods complete, the Job controller creates new pods (up to the parallelism limit) until the completion count of 10 is reached, ensuring all 10 work items are processed with the intended degree of parallelism.
- ✗
spec.backoffLimit: 3 and spec.completions: 10
Why it's wrong here
spec.backoffLimit controls retry behavior: it sets how many times a failing pod can be retried before the Job is marked failed. It has no effect on how many pods run at the same time. With backoffLimit: 3 and completions: 10, but no parallelism set, the Job defaults to parallelism: 1, so the 10 required completions are executed sequentially, not in parallel. This option misidentifies a retry knob as a concurrency control and fails to achieve the required concurrency of 3.
Go deeper
Related to this question
About these practice questions
Courseiva writes every CKAD question from scratch — 826 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 →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This CKAD 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 CKAD exam.