CKAD Application Deployment Practice Question
A developer is creating a Deployment with 4 replicas. The application requires a rolling update with zero downtime. Which TWO strategies ensure zero downtime during an update?
⚠ Common exam trap
In Kubernetes, the trap here is that candidates often confuse maxSurge and maxUnavailable, thinking that allowing one Pod to be unavailable (maxUnavailable=1) is safe, but in a strict zero-downtime requirement, even a single unavailable Pod can cause capacity loss if the application cannot tolerate reduced replicas.
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
✓
Set maxSurge=1
Setting maxSurge=1 allows Kubernetes to spin up one new Pod before terminating any old Pod during a rolling update. This ensures that the total number of available Pods never drops below the desired replica count, maintaining service capacity and achieving zero 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.
- ✓
Set maxSurge=1
Why this is correct
Setting maxSurge=1 allows the deployment controller to create one additional pod beyond the desired 4 replicas before terminating any existing pods. This temporarily raises the total pod count to 5, ensuring that the running workload always has at least 4 available replicas throughout the rolling update. This strategy results in zero downtime as new pods become ready before old ones are removed.
- ✗
Set maxUnavailable=1
Why it's wrong here
Setting maxUnavailable=1 permits the deployment to make up to one pod unavailable during the update, meaning the available replica count can drop to 3 out of the desired 4. This creates a temporary capacity shortfall and could potentially cause degradation or downtime for the application. Consequently, it does not satisfy the requirement of maintaining full replica availability.
- ✗
Use Recreate strategy
Why it's wrong here
The Recreate strategy is a deployment strategy that terminates all existing pods at once, and only after they are fully removed does it create new pods. This results in a period of zero available replicas, causing complete application downtime during the update. For a deployment that must always have 4 replicas available, this strategy is fundamentally unsuitable.
- ✓
Set maxUnavailable=0
Why this is correct
Setting maxUnavailable=0 guarantees that no running pod is terminated unless a replacement pod is already available and ready, thereby ensuring the desired replica count is never below 4. This condition alone prevents any capacity drop; however, to allow the rollout to progress, it must be paired with a positive maxSurge value because if maxSurge is also 0, the controller cannot create new pods and the update would stall.
- ✗
Set maxSurge=0
Why it's wrong here
Setting maxSurge=0 disallows the creation of any extra pods beyond the desired 4 replicas. If maxUnavailable is also 0, the deployment cannot proceed because there are no spare pods to replace existing ones; if maxUnavailable is greater than 0, the controller must first terminate pods, reducing the available replica count below 4. Thus, this setting either blocks the update or allows a temporary drop in capacity, making it incorrect for ensuring continuous availability.
Go deeper
Related to this question
About these practice questions
This CKAD question is part of Courseiva's 826-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam 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.