CKAD Application Deployment Practice Question
Which of the following are valid methods to perform a blue-green deployment? (Choose TWO)
⚠ Common exam trap
CKAD often tests the misconception that a rolling update or a single Deployment with label changes constitutes blue-green, when true blue-green requires two distinct environments and a traffic-switching mechanism.
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
✓
Create two Deployments for blue and green, and update the Service selector to point to the new version
Option A is correct because a classic Kubernetes blue-green deployment runs two separate Deployments (blue and green) simultaneously, each with its own pod labels, and the cutover is performed by editing the Service's spec.selector to match the new version's labels, instantly redirecting traffic without downtime. Option D is correct because an Ingress resource can define rules that route requests to different backend Services, each fronting a different version of the app; switching the Ingress rule (or using weighted/canary annotations) shifts traffic from the blue Service to the green Service, achieving the same atomic cutover at layer 7. Option B is invalid because mutating pod labels on a single Deployment to match the Service selector does not create a parallel green environment and would cause the Service to lose its endpoints during the change, not a controlled blue-green switch. Option C describes a standard rolling update of one Deployment, which gradually replaces pods rather than maintaining two distinct environments. Option E is not blue-green because deleting the old Deployment before creating the new one causes downtime and provides no instant rollback path.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Create two Deployments for blue and green, and update the Service selector to point to the new version
Why this is correct
Two parallel Deployments let you validate the green version fully before cutover, and switching the Service selector redirects all traffic atomically without recreating pods. This satisfies the requirement for an instant, reversible switch between versions.
- ✗
Create a single Deployment and update the pod labels to match the Service selector
Why it's wrong here
Mutating a live Deployment's pod labels makes the existing Service selector match new pods while old ones still run, but both ReplicaSets remain active under one Deployment, so no separate blue and green environments exist to switch between or roll back to. It suits canary-style label routing, not blue-green.
- ✗
Use a single Deployment and change the container image, then perform a rolling update
Why it's wrong here
Changing the image on one Deployment and rolling it out replaces pods in place, so old and new versions share the same Service and traffic cannot be switched atomically. It is tempting because rolling updates are the standard way to release new images, but blue-green needs two separate Deployments with a Service selector switch.
- ✓
Use an Ingress resource to route traffic to different Services, each backing a different version
Why this is correct
An Ingress routes HTTP traffic by host or path to distinct Services, each selecting a different version's pods. This satisfies the requirement to shift user traffic between blue and green without altering the Service selector or restarting workloads.
- ✗
Delete the old Deployment and create a new one
Why it's wrong here
Deleting the old Deployment before creating the replacement removes the blue environment entirely, so traffic cannot be switched back if the green version fails; blue-green requires both versions running simultaneously behind separate Services. This recreate approach fits stateless releases where brief downtime and no rollback are acceptable.
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 and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official CNCF exam blueprint
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.