CKAD Application Deployment Practice Question
Your Deployment is stuck during rollout, and you want to investigate. Which command pauses the rollout and allows you to check the current state?
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 rollout pause deployment my-deployment
The correct command to pause a deployment rollout is `kubectl rollout pause deployment my-deployment`. While paused, you can inspect the current state with `kubectl rollout status` or other diagnostic commands. Option A (`kubectl rollout resume`) resumes a paused rollout, not pauses it. Option B (`kubectl rollout status`) shows the rollout state but does not pause it. Option D (`kubectl rollout stop`) is not a valid kubectl command; the correct command to stop a rollout is `kubectl rollout undo`. Therefore, only option C pauses the rollout as required.
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 rollout resume deployment my-deployment
Why it's wrong here
kubectl rollout resume is intended to continue a deployment that was explicitly paused with kubectl rollout pause. It does not stop or freeze a stuck rollout; instead it tells the controller to proceed with the current ReplicaSet scaling process, which can make a bad rollout worse. Since the goal is to halt progress and investigate, this command acts in the opposite direction and is therefore incorrect.
- ✗
kubectl rollout status deployment my-deployment
Why it's wrong here
kubectl rollout status only queries and reports the current rollout state, such as waiting for ReplicaSet availability or the progress deadline being exceeded. It passively observes the deployment but does not alter its desired state or prevent the controller from continuing to scale ReplicaSets. While useful for diagnosis after pausing, it cannot stop or isolate the stuck rollout, so it is not the correct command here.
- ✓
kubectl rollout pause deployment my-deployment
Why this is correct
kubectl rollout pause is the correct command because it sets the deployment's spec.paused field to true, instructing the deployment controller to stop creating or scaling new ReplicaSets. This freezes the rollout's current state and gives you a stable point to inspect logs, events, and resource metrics without the controller racing ahead. It directly addresses the need to investigate a stuck rollout.
- ✗
kubectl rollout stop deployment my-deployment
Why it's wrong here
kubectl rollout stop is not a valid kubectl rollout subcommand; the valid subcommands are history, pause, restart, resume, status, and undo. Running this command would fail with a usage error before any action is taken. To pause the rollout, you must use the exact, supported command kubectl rollout pause.
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.