• Use a big wall • preferred near their officespace • preferred permanent • Whiteboard/Long Paper for drawing • Post-it with different colors Exercise Preparation
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations http://www.jedi.be/blog/2012/05/12/codifying-devops-area-practices/
often and reactive Defined Focused on organization and proactive Quantitatively Managed Measured and controlled Optimizing Focus on Improvement CMMI - Maturity Levels (Process centric)
DEV delivery to Prod Embed Project knowledge Embed Operations knowledge feedback from Prod OPS Tools Intro Layer Level Practice: Use a configuration mangement system like chef/puppet to provision dev,test and prod from the same source Pattern: Automation, reuse of code Principles: By reusing the code it gets tested more && often more frequent/earlier feedback
4: Embed Operations knowledge into Project Area 2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Infrastructure as code Using same technology versioning/testing/... Executable ‘documentation’ Common language
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations http://www.hashicorp.com/ Reproduceable environments Dev/Test machines are using the same setup as Production When your app requires changes on the system you can try them and change them ourself Ops can propagate production changes to dev easily
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Monitoring & Metrics #monitoring{love,sucks} Enable devs to see the production usage/ problems (graphite) Devs can add metrics in their code (Statsd) Make non-subjective decisions at the start of the project
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Developers wearing pagers Devs you have run operations learn and take it back to project Devs know the app better and can teach/ train operations people Better Tests to prevent production problems/ pain
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations https://github.com/Netflix/SimianArmy Experience problems earlier in the pipeline (less costly)
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Visualize frequency of production errors and enable extraction of ‘context’
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations https://speakerdeck.com/jnewland/chatops-at-github Shared view on the system events
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Objective view on problems (think retrospective) (Public) Post-Mortems
2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations Find bottlenecks in procedures/technology Game Days http://www.youtube.com/watch?v=LCZT_Q3z520&noredirect=1
into Project Area 2: Extend operations feedback to project Area 1: Extend delivery to production Area 3: Embed Project knowledge into Operations SadOps http://github.com/railsmachine/sadops