CKAD Application Deployment Practice Question
You have a Deployment with strategy type: Recreate. You update the container image. What behavior will occur during the update?
⚠ Common exam trap
Watch out — candidates often confuse the Recreate strategy with the RollingUpdate strategy, mistakenly thinking new pods are created before old ones are terminated, but the Recreate strategy strictly terminates all old pods first.
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
✓
Old pods are terminated, then new pods are created.
With the Recreate strategy, the Deployment controller first scales down all existing pods to zero, ensuring they are fully terminated, and then creates new pods with the updated container image. This behavior guarantees that only one version of the application runs at any time, avoiding concurrent old and new pod execution.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The update is performed in-place without pod termination.
Why it's wrong here
Kubernetes pods are designed to be immutable; their pod spec (including container images) cannot be modified once created. Any update to the pod template, such as a new image version, requires replacing the entire pod with a new one created from the updated template. The Recreate strategy does this by terminating old pods and creating new ones; there is no in-place update mechanism in Kubernetes.
- ✗
New pods are created before old ones are terminated.
Why it's wrong here
This order of operations describes a RollingUpdate strategy, where new pods are started gradually while old pods are still running, and then old pods are scaled down. Recreate takes the opposite approach: it deliberately avoids any overlap between old and new pods. The Deployment controller scales the old ReplicaSet to zero before scaling up the new ReplicaSet, ensuring that all old pods are fully terminated before any new pod is created. Creating new pods before old ones are gone would defeat the purpose of the Recreate strategy.
- ✗
The deployment is paused automatically.
Why it's wrong here
Pausing a Deployment is an explicit user action performed with `kubectl rollout pause deployment/<name>`; it is not automatic behavior of any update strategy, including Recreate. The Recreate strategy simply proceeds with terminating the old pods and then creating the new ones from the updated template. If the rollout were paused, it would halt the termination/creation process until the user resumes it, but the strategy itself does not trigger a pause.
- ✓
Old pods are terminated, then new pods are created.
Why this is correct
The Recreate strategy is defined by this exact sequence: the Deployment controller first scales down all old ReplicaSets to zero, terminating every existing pod, and only then scales up the new ReplicaSet to the desired number of replicas. This ensures that no old and new versions ever run at the same time, but it also means there is a brief period of downtime. This behavior is explicitly set via `strategy.type: Recreate` in the Deployment manifest.
Go deeper
Related to this question
About these practice questions
One of 826 original CKAD practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. 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.