Courseiva
Application Deployment →easyMultiple Choice

CKAD Application Deployment Practice Question

Which kubectl command is used to view the rollout history of a Deployment?

⚠ Common exam trap

A common mistake is confusing `kubectl rollout history` (viewing past revisions) with `kubectl rollout status` (viewing current rollout progress).

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 history deployment my-deployment

`kubectl rollout history` is the dedicated command to view the revision history of a Deployment, including the list of revisions and, optionally, details of a specific revision when combined with `--revision`. This command directly queries the Deployment's rollout history stored in its annotations (e.g., `deployment.kubernetes.io/revision`).

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 history deployment my-deployment --revision=2

    Why it's wrong here

    The `--revision=2` flag changes the command's behavior: instead of listing the full rollout history, it fetches details for revision 2 only, including the ReplicaSet's labels, annotations, and Pod template. This is a targeted inspection command, not a general history-viewing command, and it will print an error if revision 2 does not exist. Therefore, it does not satisfy the request to view the rollout history.

  • ✗

    kubectl rollout list deployment my-deployment

    Why it's wrong here

    `kubectl rollout list` is not a valid subcommand of `kubectl rollout`. The valid rollout subcommands are `history`, `pause`, `resume`, `restart`, `status`, and `undo`. Running this command would fail with a kubectl error about an unknown command, so it cannot display any rollout information at all.

  • ✓

    kubectl rollout history deployment my-deployment

    Why this is correct

    `kubectl rollout history deployment my-deployment` is the canonical command to view a Deployment's rollout history. It lists all revisions, showing their revision numbers and change-cause annotations (if recorded), which gives you an overview of every template change. This is exactly what the question asks for, and it provides the foundation for rolling back to a specific revision.

  • ✗

    kubectl rollout status deployment my-deployment

    Why it's wrong here

    `kubectl rollout status deployment my-deployment` checks the live rollout progress, reporting whether the Deployment has successfully completed, is still progressing, or has failed. It does not show past revisions or any history; instead, it watches the current rollout state and may block until the rollout finishes. Thus, it answers a different question: 'What is the current state?' not 'What past versions exist?'

About these practice questions

Courseiva writes every CKAD question from scratch — 826 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 →

How Courseiva writes practice questions · Editorial policy

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.