CKAD Application Deployment Practice Question
You need to perform a canary deployment using a Service and two Deployments (stable and canary). Which TWO resources or configurations are typically used to route a percentage of traffic to the canary? (Select TWO)
⚠ Common exam trap
A common misconception in CKAD is that a single Service with multiple selectors can split traffic by percentage, when in fact Kubernetes Services only support label-based selection and round-robin load balancing without weighted routing.
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
✓
Service Mesh (e.g., Istio VirtualService)
A Service Mesh like Istio uses a VirtualService resource to define traffic routing rules based on weights (e.g., `weight: 90` for stable and `weight: 10` for canary). This allows fine-grained, percentage-based traffic splitting between two different Kubernetes Services or subsets, which is a core requirement for canary deployments.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Service Mesh (e.g., Istio VirtualService)
Why this is correct
Service Mesh provides fine-grained traffic splitting.
- ✗
A single Service with multiple label selectors
Why it's wrong here
A Service cannot split traffic; it selects all matching pods.
- ✗
NetworkPolicy
Why it's wrong here
Controls network access, not traffic routing.
- ✓
Ingress with canary annotation
Why this is correct
Ingress controllers like NGINX support canary.
- ✗
HorizontalPodAutoscaler
Why it's wrong here
A HorizontalPodAutoscaler adjusts replica counts based on CPU or memory metrics, but it cannot split or weight traffic between two Deployments. It is tempting because it automates scaling, which might seem related to controlling canary capacity; however, it would be correct only for automatically scaling a single Deployment’s replicas in response to load, not for routing a percentage of requests to a canary.
Go deeper
Related to this question
About these practice questions
Courseiva writes every CKAD question from scratch — 160 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.