Bird
Raised Fist0
Kubernetesdevops~20 mins

Rollback to previous version in Kubernetes - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Rollback Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
2:00remaining
Rollback Deployment to Previous Revision
You have a Kubernetes deployment named webapp. You run the command to rollback to the previous revision. What is the expected output?
Kubernetes
kubectl rollout undo deployment/webapp
Adeployment.apps/webapp rolled back
Berror: deployment "webapp" not found
Cdeployment.apps/webapp updated
DNo resources found
Attempts:
2 left
💡 Hint
Think about what the rollback command does to the deployment state.
🧠 Conceptual
intermediate
2:00remaining
Understanding Rollback Behavior
Which statement correctly describes what happens when you run kubectl rollout undo deployment/myapp?
AIt pauses the deployment without changing the current state.
BIt deletes the deployment and recreates it from scratch.
CIt updates the deployment to the latest image version automatically.
DIt reverts the deployment to the last successful rollout revision.
Attempts:
2 left
💡 Hint
Rollback means going back to a previous working state.
❓ Troubleshoot
advanced
2:00remaining
Rollback Failure Due to No Previous Revision
You try to rollback a deployment named api-server but get the error: error: deployment.apps "api-server" has no rollout history. What is the most likely cause?
AThe deployment has never been updated since creation.
BThe deployment name is misspelled in the command.
CThe Kubernetes cluster is down.
DThe rollback command requires a namespace flag.
Attempts:
2 left
💡 Hint
Rollback requires a previous revision to revert to.
🔀 Workflow
advanced
3:00remaining
Steps to Rollback a Deployment
Arrange the correct sequence of commands to rollback a Kubernetes deployment named frontend to its previous version and verify the rollback status.
A2,1,3,4
B1,2,3,4
C3,1,2,4
D1,3,2,4
Attempts:
2 left
💡 Hint
First rollback, then check status, then inspect details.
✅ Best Practice
expert
3:00remaining
Best Practice for Safe Rollbacks
Which practice is best to ensure safe and reliable rollbacks of Kubernetes deployments?
ADisable rollout history to save cluster resources and rely on manual pod restarts.
BAlways delete the deployment and recreate it with the previous image version manually.
CUse <code>kubectl rollout undo</code> only after verifying the deployment history and testing the previous version in a staging environment.
DUse <code>kubectl delete pod</code> to force pods to restart with the previous version.
Attempts:
2 left
💡 Hint
Safe rollback involves verification and testing before applying changes.

Practice

(1/5)
1. What does the command kubectl rollout undo deployment/myapp do in Kubernetes?
easy
A. It updates the deployment 'myapp' to the latest image version.
B. It rolls back the deployment 'myapp' to its previous version.
C. It deletes the deployment 'myapp' permanently.
D. It scales the deployment 'myapp' to zero replicas.

Solution

  1. Step 1: Understand the command purpose

    The command kubectl rollout undo is used to revert a deployment to a previous state.
  2. Step 2: Apply to the given deployment

    Using deployment/myapp specifies which deployment to rollback.
  3. Final Answer:

    It rolls back the deployment 'myapp' to its previous version. -> Option B
  4. Quick Check:

    Rollback command = revert deployment [OK]
Hint: Rollback uses 'kubectl rollout undo' with deployment name [OK]
Common Mistakes:
  • Confusing rollback with delete command
  • Thinking it updates to latest version instead of previous
  • Using scale command instead of rollback
2. Which of the following is the correct syntax to rollback a deployment named 'webapp' to its previous version?
easy
A. kubectl rollout undo deployment/webapp
B. kubectl rollback deployment/webapp
C. kubectl undo deployment webapp
D. kubectl rollback undo webapp

Solution

  1. Step 1: Recall correct rollback syntax

    The correct command to rollback is kubectl rollout undo deployment/<name>.
  2. Step 2: Match syntax with deployment name

    Replacing <name> with 'webapp' gives kubectl rollout undo deployment/webapp.
  3. Final Answer:

    kubectl rollout undo deployment/webapp -> Option A
  4. Quick Check:

    Correct rollback syntax = rollout undo [OK]
Hint: Remember 'rollout undo' is the rollback command [OK]
Common Mistakes:
  • Using 'rollback' instead of 'rollout undo'
  • Incorrect order of words in command
  • Missing 'deployment/' prefix
3. Given the following commands executed in order:
kubectl apply -f deployment-v1.yaml
kubectl apply -f deployment-v2.yaml
kubectl rollout undo deployment/myapp

What will be the current version of the deployment 'myapp' after the last command?
medium
A. Version 1 (deployment-v1.yaml)
B. Version 2 (deployment-v2.yaml)
C. No change, still version 2
D. Deployment deleted

Solution

  1. Step 1: Understand deployment updates

    First, version 1 is applied, then version 2 updates the deployment.
  2. Step 2: Rollback command effect

    The rollback command reverts the deployment to the previous version, which is version 1.
  3. Final Answer:

    Version 1 (deployment-v1.yaml) -> Option A
  4. Quick Check:

    Rollback reverts to last version before update [OK]
Hint: Rollback returns to version before last update [OK]
Common Mistakes:
  • Assuming rollback deletes deployment
  • Thinking rollback keeps current version
  • Confusing rollback with reapply
4. You tried to rollback a deployment using kubectl rollout undo deployment/myapp but got an error: error: no rollout found. What is the most likely cause?
medium
A. Rollback command requires a namespace flag.
B. You misspelled the deployment name in the command.
C. The deployment 'myapp' has no previous versions to rollback to.
D. The Kubernetes cluster is down.

Solution

  1. Step 1: Analyze the error message

    The error 'no rollout found' means no previous rollout history exists for rollback.
  2. Step 2: Identify cause

    This usually happens if the deployment was never updated or has only one version.
  3. Final Answer:

    The deployment 'myapp' has no previous versions to rollback to. -> Option C
  4. Quick Check:

    No rollout history = no rollback possible [OK]
Hint: Check rollout history before rollback [OK]
Common Mistakes:
  • Assuming cluster is down causes this error
  • Forgetting to check deployment name spelling
  • Thinking rollback always works without history
5. You have a deployment 'api-server' with three revisions in history. You want to rollback to revision 2 specifically. Which command should you use?
hard
A. kubectl rollout undo deployment/api-server revision=2
B. kubectl rollback deployment/api-server --revision=2
C. kubectl undo deployment/api-server revision 2
D. kubectl rollout undo deployment/api-server --to-revision=2

Solution

  1. Step 1: Recall rollback to specific revision syntax

    The correct syntax to rollback to a specific revision is kubectl rollout undo deployment/<name> --to-revision=<number>.
  2. Step 2: Apply to 'api-server' and revision 2

    Replacing placeholders gives kubectl rollout undo deployment/api-server --to-revision=2.
  3. Final Answer:

    kubectl rollout undo deployment/api-server --to-revision=2 -> Option D
  4. Quick Check:

    Use '--to-revision' flag to rollback specific version [OK]
Hint: Use '--to-revision' flag to rollback specific version [OK]
Common Mistakes:
  • Using incorrect flags like --revision or wrong command order
  • Omitting '--to-revision' flag
  • Using 'rollback' instead of 'rollout undo'
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard