- A
kubectl replace -f deployment.yaml
Why wrong: Replace can be used but requires the full manifest; it is a valid method but the question asks for TWO, and we already have two correct ones. However, replace is also valid. To avoid extra correct answers, we need to ensure only two are correct. So I'll make D incorrect by something like 'kubectl replace -f deployment.yaml --force' which is not needed. Actually, replace is valid. So let's adjust: we can make D be 'kubectl patch deployment myapp -p '{"spec":{"template":{"spec":{"containers":[{"name":"mycontainer","image":"nginx:1.21"}]}}}}' which is also valid. So to limit to two, we need to pick two that are clearly correct and make the others invalid. I'll set D as 'kubectl rollout image deployment/myapp mycontainer=nginx:1.21' which is invalid.
- B
kubectl edit deployment/myapp and change the image field
Editing the deployment allows you to change the image.
- C
kubectl rollout image deployment/myapp mycontainer=nginx:1.21
Why wrong: There is no 'kubectl rollout image' command.
- D
kubectl set image deployment/myapp mycontainer=nginx:1.21
This is the imperative way to update the image.
- E
kubectl create -f deployment.yaml
Why wrong: This would fail because the Deployment already exists.
CKAD Application Deployment Practice Question
This CKAD practice question tests your understanding of application deployment. Read the scenario carefully and evaluate each option against the stated constraints before committing to an answer. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
Which TWO of the following are valid methods to update a Deployment's image?
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
kubectl edit deployment/myapp and change the image field
Both 'kubectl set image deployment/myapp mycontainer=nginx:1.21' and 'kubectl edit deployment/myapp' can be used to update the image. 'kubectl apply -f deployment.yaml' can also be used if the YAML has the new image. 'kubectl patch' can also be used. So there are multiple methods. The question asks for TWO valid methods. The options include 'kubectl set image', 'kubectl edit', 'kubectl create -f' (which would fail if the resource exists), 'kubectl replace -f' (which can replace but requires the full manifest), and 'kubectl rollout image' (invalid).
Key principle: NAT direction and interface roles matter as much as the IP address mapping. Inside/outside designation controls which traffic is translated.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
kubectl replace -f deployment.yaml
Why it's wrong here
Replace can be used but requires the full manifest; it is a valid method but the question asks for TWO, and we already have two correct ones. However, replace is also valid. To avoid extra correct answers, we need to ensure only two are correct. So I'll make D incorrect by something like 'kubectl replace -f deployment.yaml --force' which is not needed. Actually, replace is valid. So let's adjust: we can make D be 'kubectl patch deployment myapp -p '{"spec":{"template":{"spec":{"containers":[{"name":"mycontainer","image":"nginx:1.21"}]}}}}' which is also valid. So to limit to two, we need to pick two that are clearly correct and make the others invalid. I'll set D as 'kubectl rollout image deployment/myapp mycontainer=nginx:1.21' which is invalid.
- ✓
kubectl edit deployment/myapp and change the image field
Why this is correct
Editing the deployment allows you to change the image.
Related concept
Static NAT maps one inside address to one outside address.
- ✗
kubectl rollout image deployment/myapp mycontainer=nginx:1.21
Why it's wrong here
There is no 'kubectl rollout image' command.
- ✓
kubectl set image deployment/myapp mycontainer=nginx:1.21
Why this is correct
This is the imperative way to update the image.
Related concept
Static NAT maps one inside address to one outside address.
- ✗
kubectl create -f deployment.yaml
Why it's wrong here
This would fail because the Deployment already exists.
Common exam traps
Common exam trap: NAT rules depend on direction and matching traffic
NAT is not only about the public address. The inside/outside interface roles and the ACL or rule that matches traffic are just as important.
Trap categories for this question
Command / output trap
There is no 'kubectl rollout image' command.
Detailed technical explanation
How to think about this question
NAT questions usually test address translation, overload/PAT behaviour, static mappings and whether the right traffic is being translated. Read the interface direction and address terms carefully.
KKey Concepts to Remember
- Static NAT maps one inside address to one outside address.
- PAT allows many inside hosts to share one public address using ports.
- Inside local and inside global describe the private and translated addresses.
- NAT ACLs identify traffic for translation, not always security filtering.
TExam Day Tips
- Identify inside and outside interfaces first.
- Check whether the scenario needs static NAT, dynamic NAT or PAT.
- Do not confuse NAT matching ACLs with normal packet-filtering intent.
Key takeaway
NAT direction and interface roles matter as much as the IP address mapping. Inside/outside designation controls which traffic is translated.
Real-world example
How this comes up in practice
A small business has 20 workstations on the 192.168.1.0/24 network and one public IP from its ISP. The router uses PAT (NAT overload) so all 20 devices share one public address using different source ports. NAT questions test whether you understand the four address terms and which direction each translation applies.
What to study next
Got this wrong? Here's your next step.
Review the four NAT address types (inside local, inside global, outside local, outside global), PAT port overload, and static vs dynamic NAT use cases. Then practise related CKAD NAT questions on configuration and troubleshooting.
- →
Application Deployment — study guide chapter
Learn the concepts, then practise the questions
- →
Application Deployment practice questions
Targeted practice on this topic area only
- →
All CKAD questions
991 questions across all exam domains
- →
Certified Kubernetes Application Developer CKAD study guide
Full concept coverage aligned to exam objectives
- →
CKAD practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related CKAD practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Application Design and Build practice questions
Practise CKAD questions linked to Application Design and Build.
Application Deployment practice questions
Practise CKAD questions linked to Application Deployment.
Application Environment, Configuration and Security practice questions
Practise CKAD questions linked to Application Environment, Configuration and Security.
Application Observability and Maintenance practice questions
Practise CKAD questions linked to Application Observability and Maintenance.
Services and Networking practice questions
Practise CKAD questions linked to Services and Networking.
CKAD fundamentals practice questions
Practise CKAD questions linked to CKAD fundamentals.
CKAD scenario practice questions
Practise CKAD questions linked to CKAD scenario.
CKAD troubleshooting practice questions
Practise CKAD questions linked to CKAD troubleshooting.
Practice this exam
Start a free CKAD practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this CKAD question test?
Application Deployment — This question tests Application Deployment — Static NAT maps one inside address to one outside address..
What is the correct answer to this question?
The correct answer is: kubectl edit deployment/myapp and change the image field — Both 'kubectl set image deployment/myapp mycontainer=nginx:1.21' and 'kubectl edit deployment/myapp' can be used to update the image. 'kubectl apply -f deployment.yaml' can also be used if the YAML has the new image. 'kubectl patch' can also be used. So there are multiple methods. The question asks for TWO valid methods. The options include 'kubectl set image', 'kubectl edit', 'kubectl create -f' (which would fail if the resource exists), 'kubectl replace -f' (which can replace but requires the full manifest), and 'kubectl rollout image' (invalid).
What should I do if I get this CKAD question wrong?
Review the four NAT address types (inside local, inside global, outside local, outside global), PAT port overload, and static vs dynamic NAT use cases. Then practise related CKAD NAT questions on configuration and troubleshooting.
What is the key concept behind this question?
Static NAT maps one inside address to one outside address.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Last reviewed: Jun 21, 2026
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.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.