CKAD Application Deployment Practice Question
A Deployment is configured with strategy type 'Recreate'. What happens during an update to the pod template?
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 and then new pods are created
The Recreate strategy first terminates all existing pods, then creates new pods. This ensures that only one version is running at a time, but causes downtime.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Old pods are terminated and then new pods are created
Why this is correct
When a Deployment's strategy is set to Recreate, the controller first scales the current ReplicaSet to zero, ensuring every old pod has terminated gracefully, and only then creates the new ReplicaSet and starts new pods. This eliminates any overlap between old and new versions, guaranteeing that no mixed-version traffic can occur, but it also means the application experiences full downtime during the transition. The ordering is strictly linear: the old pods must be gone before the new pods appear.
- ✗
New pods are created before old ones are terminated
Why it's wrong here
This behavior describes a RollingUpdate configuration with maxSurge greater than zero, in which new pods are created and only after they become Ready are old pods scaled down. Recreate is the opposite: the Deployment controller must observe the old ReplicaSet reach zero replicas before it will even create the new ReplicaSet. Choosing this option implies a different strategy entirely, so for a Recreate deployment, having new pods appear before old ones are terminated violates the strategy's core contract.
- ✗
Pods are updated in place
Why it's wrong here
Kubernetes Pod objects are immutable in their core scheduling and container spec fields: you cannot change a pod's image, command, or container ports after creation without deleting and recreating the pod. A Deployment implements updates by replacing the entire Pod template and letting the ReplicaSet controller create brand-new pods; it never patches the running pods' specifications. Even if you manually attempted an in-place pod spec edit, the kubelet would reject it, and the pod would remain unchanged, so this is not how any deployment strategy works.
- ✗
The update is paused until manual approval
Why it's wrong here
The Recreate strategy takes effect as soon as the Deployment's pod template changes; the controller immediately begins terminating old pods without awaiting human input. Pausing a rollout is a separate control-plane feature: you can set spec.paused: true to freeze the Recreate or RollingUpdate behavior until you clear it, but that is not a strategy in itself. Here, the question is about the strategy's ordering, and Recreate does not require manual approval — any pause would be an additional, explicit action taken by the user.
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.