Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Successfully reported this slideshow.

Like this presentation? Why not share!

- Fig for Local Development by James Turnbull 1061 views
- Orchestrating Docker - Making the W... by James Turnbull 2573 views
- Introduction to Docker by James Turnbull 1101 views
- Software archaeology for beginners:... by James Turnbull 10121 views
- Introduction to Docker by James Turnbull 13064 views
- Docker for Developers by James Turnbull 981 views

2,497 views

Published on

“We can’t fix this. Let’s roll back the deployment.”

This talk is designed to explain and demonstrate to Operations staff:

Why roll back is a fantasy and explained with a dash of Werner Heisenberg

Why it is dangerous and how you can recognize when you’re about to get trapped

How you can avoid falling into that trap of considering it an appropriate compensating control.

It’ll also explain what you can actually do operationally instead of “rolling back”. This will cover other alternative compensating controls that can help you get running again and resolve your outage whilst still allowing you to find root cause.

No Downloads

Total views

2,497

On SlideShare

0

From Embeds

0

Number of Embeds

70

Shares

0

Downloads

19

Comments

0

Likes

1

No embeds

No notes for slide

- 1. RollbackThe Impossible Dream by James Turnbull jamtur01 @ github kartar @ twitter jamesturnbull on freenode james @ puppetlabs.com
- 2. About MeVP Technical Operations at Puppet Labs Puppet guy Ruby guy Talks funny
- 3. A show of hands
- 4. Who thinks theyknow what rollback is?
- 5. Last set of hands
- 6. YMMV
- 7. Definitions
- 8. Traditional
- 9. Modern
- 10. Fact or Fiction?
- 11. Accept certain constraints
- 12. Constraint #1Apply sufficient capital
- 13. Constraint #2 Idempotent
- 14. Constraint #3Cascade-less failure
- 15. Constraint #4 Resources
- 16. A Philosophical Digression
- 17. If I know where I amI don’t know how I got there If I know how I got there I don’t know where I am
- 18. Very few “systems”are truly deterministic
- 19. A Mathematical Digression
- 20. On system rollback and totalised ﬁelds An algebraic approach to system change Mark Burgess and Alva Couch 20th June 2011http://cfengine.com/markburgess/papers/totalfield.p df
- 21. So what’s wrong with rollback?
- 22. Risk
- 23. Learning from mistakes
- 24. Complex systems are … complex
- 25. Human error
- 26. What is the problemrollback is trying to solve?
- 27. What is the problem YOU are trying to solve?
- 28. So how can wemitigate Rollback shortcomings?
- 29. Preventative Design
- 30. Rollback is (often) anarchitecture problem
- 31. Increase Resilience
- 32. OperationalIntelligence
- 33. A little bit of DevOps in every byte…
- 34. Small, iterative changes
- 35. Accept that failure happens
- 36. “We can’t test that? Okay we can roll it back if it breaks…”
- 37. Assumption is themother of all fuckups*
- 38. “But the system can’t be{run|upgraded|deployed} like that because…”
- 39. Conclusions
- 40. Rollback is possible but not probable
- 41. If you have to have “rollback” accept constraints
- 42. You can mitigate the need for it
- 43. Thank you!Questions/Insults? jamtur01 @ github kartar @ twitter jamesturnbull on freenode james @ puppetlabs.com

No public clipboards found for this slide

Be the first to comment