MOVING TO A DEVOPS MODE – EASY, HARD OR JUST PLAIN TERRIFYING?

  • 862 views
Uploaded on

Slides from my and Daniel Bryant's (@danielbryantuk) talk at Devoxx UK2014 …

Slides from my and Daniel Bryant's (@danielbryantuk) talk at Devoxx UK2014

http://www.devoxx.co.uk/2014/03/moving-to-a-devops-mode-easy-hard-or-just-plain-terrifying/

DevOps – is it for you? Heard about the wonderful ways it could benefit your organisation, but put off by the scary stories? Can you really make the transition to DevOps, and is it worth it? Listen and learn from two DevOps practitioners about their hands-on experiences in making the change. Covering a range of real life examples, this talk will explain the real business benefits to be had from using DevOps techniques, as well as the technical and personal aspects involved.
Whether it’s a small team within a startup or one of hundreds within a large organisation, this talk has practical advice on how to approach the challenge, what critical changes need to be considered, and what tools and processes are best suited for the situation. The adoption of DevOps is a game changing event for the industry. Learn why and learn how you can benefit from it too.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
862
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
27
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • James Gough’s “The benefits are more than just the tests”
    Mash Badar’s “TDD at Scale” (slidesha.re/19P7kzS)

Transcript

  • 1. @spoole167 @danielbryantuk#DevOps MOVING TO A DEVOPS MODE: EASY, HARD OR JUST PLAIN TERRIFYING? MOVING TO A DEVOPS MODE: EASY, HARD OR JUST PLAIN TERRIFYING? Daniel Bryant Steve Poole @danielbryantuk @spoole167
  • 2. @spoole167 @danielbryantuk#DevOps Your Guides for Today’s Journey into DevOps… Daniel Bryant Principal Consultant, OpenCredo Full-Stack Developer Open Source Advocate Agile, Continuous Delivery and DevOps Aspiring Software Craftsman Steve Poole IBM Developer Making Java Real Since Version 0.9 Open Source Advocate DevOps Practitioner (whatever that means!) Driving Change
  • 3. @spoole167 @danielbryantuk#DevOps Our Goals… • DevOps is about extending ‘agility’ across your IT organisation • Implementing this is not going to be easy… • … some things will be hard, some things terrifying • However, there are real benefits
  • 4. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps In the beginnin g
  • 5. @spoole167 @danielbryantuk#DevOps Once upon a time the universe was static Design, Code Unit test Functional Test System test Stage Configure Fix bugs Fix bugs Helpline Monitor, backup upgrade, support, repair security, compliance Uses reality chasm
  • 6. @spoole167 @danielbryantuk#DevOps This was called “Waterfall” Reinforced team separation Long feedback cycles Long time-to-market Tended to increase ‘Release Panic’ BIG Reality ChasmDEV OPS
  • 7. @spoole167 @danielbryantuk#DevOps Waterfall - more a roller-coaster ride… Time #ofbugs Start to panic here DEV OPS QA Client £ Value here Really panic here Reality Chasm
  • 8. @spoole167 @danielbryantuk#DevOps If you fell into the reality chasm… Time #ofbugs Start to panic here Really panic here DEV OPS QA Client No Value here
  • 9. @spoole167 @danielbryantuk#DevOps Agile helps reduce the chasm Time #ofbugs Feedback here OPS Client DEV Feedback here Feedback here QA £ Value here
  • 10. @spoole167 @danielbryantuk#DevOps But now clients say… Time #ofbugs OPS Client DEV QA £ I want value here And here
  • 11. @spoole167 @danielbryantuk#DevOps The new challenge – we can’t afford the gap Time #ofbugs OPS Client DEV QA Move LeftMove Left
  • 12. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps B reak dow n the silos…
  • 13. @spoole167 @danielbryantuk#DevOps How to bring Dev, QA & Ops together? Culture Common goals Shared responsibility Education Standard technology
  • 14. @spoole167 @danielbryantuk#DevOps Netflix are not Unicorns! Neither are Amazon, etsy, Spotify… and besides…
  • 15. @spoole167 @danielbryantuk#DevOps Change your mindset…
  • 16. @spoole167 @danielbryantuk#DevOps Culture is Vital • Culture drives behaviour, drives culture… • “Communication, simplicity, feedback, courage” • Everyone is responsible for delivery • Continuous experimentation and learning • Not easy to change culture • The hardest part of DevOps… • …but you will learn new things
  • 17. @spoole167 @danielbryantuk#DevOps Changing Culture • Greenfield • Flickr’s story (slidesha.re/sHpYV) • “Why other people don’t get it” • Sandro Mancuso (slidesha.re/1bcStpe) • Enterprise • “The Phoenix Project” (Gene Kim et al)
  • 18. @spoole167 @danielbryantuk#DevOps Changing Culture • Create an effective team… • “Habits of highly effective technical teams” • Martijn Verburg (bit.ly/1aF9SnK) • “Patterns of Effective Teams” • Dan North (vimeo.com/68226771) • Buy some doughnuts… • Andrzej Grzesik (http://www.youtube.com/watch?v=OFr0PoIIdvk)
  • 19. @spoole167 @danielbryantuk#DevOps We’ve all got issues… Great, so how does this work for individual teams?
  • 20. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps Interlude … C D and D evO ps
  • 21. @spoole167 @danielbryantuk#DevOps Continuous Delivery and DevOps go hand-in-hand… • Create a build and deployment pipeline • Adopting Continuous Delivery • Jez Humble (http://bit.ly/1oEReUM) • Implementing Continuous Delivery • Rachel Laycock (http://bit.ly/1l1qMPf)
  • 22. @spoole167 @danielbryantuk#DevOps Start with automated build & unit test Continuous IntegrationContinuous Integration JUnit SCM BuildBuild Orchestration Unit Test
  • 23. @spoole167 @danielbryantuk#DevOps Add staging for automated QA Continuous IntegrationContinuous Integration JUnit Continuous DeliveryContinuous Delivery Repository Performance & QA Deployment tools
  • 24. @spoole167 @danielbryantuk#DevOps Add “automatic(ish) deployment to production™” Continuous IntegrationContinuous Integration JUnit Continuous DeliveryContinuous Delivery Continuous DeploymentContinuous Deployment Hosting Deployment tools
  • 25. @spoole167 @danielbryantuk#DevOps Base it on virtualization technologies Continuous Deployment PipelineContinuous Deployment Pipeline External CloudExternal CloudOn premises cloudOn premises cloud Cloud Deployment Orchestrator Cloud Deployment Orchestrator JUnit
  • 26. @spoole167 @danielbryantuk#DevOps The imperative of DevOps Startups through to big businesses are demanding the value that DevOps & Cloud Technologies can offer 1. Production deployment pipeline up and running in days 2. Updates published in hours DevOps helps transition an organization into this new world… Helps to remove the ‘reality chasm’
  • 27. @spoole167 @danielbryantuk#DevOps The imperative of DevOps The cost? 1. Standardized pipelines 2. Dev and Ops teams working together 3. Greatly expanding your horizons and your technical skills 4. Leaving your comfort zone
  • 28. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps M ake your m ove…
  • 29. @spoole167 @danielbryantuk#DevOps Developers…
  • 30. @spoole167 @danielbryantuk#DevOps Contribute to the pipeline • Continuous Integration • Unit / Integration Tests • Automate all the things • Stop throwing stuff over the wall… • …or we’ll throw you over it too!
  • 31. @spoole167 @danielbryantuk#DevOps Moving closer to Ops • Design patterns • Asynchronous communication • Timeouts / retries • Bulkheads / circuit-breakers • Metrics are your friend • Technical and business data • Logging (centralised)
  • 32. @spoole167 @danielbryantuk#DevOps Thinking/Acting like a sysadmin • Learn Linux fundamentals • Diagnostic skills • top, iotop, iostat, netstat, vmstat • Java utils: jps, jstat, jmap, jhat • “DevOps Troubleshooting” by K. Rankin • Maybe grow a beard…
  • 33. @spoole167 @danielbryantuk#DevOps QA…
  • 34. @spoole167 @danielbryantuk#DevOps Automating QA • Automate all the things… • Tests can be specifications • Specifications can be tests… • Make it easy for everyone to execute • Make it fast (and conditional) • Contribute to the build pipeline • If you want people to care, then fail the build!
  • 35. @spoole167 @danielbryantuk#DevOps Automating QA • Unit and Intra-component integration testing • Spock is awesome • Utilise embedded datastore/middleware • Performance • JMeter + plugins • Gatling • Website • Geb (Groovy + Selenium)
  • 36. @spoole167 @danielbryantuk#DevOps Operations…
  • 37. @spoole167 @danielbryantuk#DevOps Ops should be operational… • Learn about coding (pair program!) • Python, Ruby, Groovy • Get closer to Dev & QA • Provide constant feedback • Embrace chaos for testing • Simian army…
  • 38. @spoole167 @danielbryantuk#DevOps Monitoring is mandatory • Infrastructure monitoring • Nagios • Zabbix • Splunk • AppDynamics • Several trail-blazers • Etsy (www.codeascraft.com) • Netflix (techblog.netflix.com)
  • 39. @spoole167 @danielbryantuk#DevOps Graphing…
  • 40. @spoole167 @danielbryantuk#DevOps Graphing…
  • 41. @spoole167 @danielbryantuk#DevOps Say No To Snowflakes! • “Infrastructure as Code” • Version control everything • Automate all provisioning • Chef, Puppet, SaltStack, Python, AWS CLI • Play with Vagrant (www.vagrantup.com) • Docker and Packer are also interesting
  • 42. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps W hy not?
  • 43. @spoole167 @danielbryantuk#DevOps Who here ‘does’ Agile?
  • 44. @spoole167 @danielbryantuk#DevOps Are you personally ready? • Do you use Agile techniques? • Can you spell “Continuous Integration”? • Are the advantages of DevOps clear? • Could you communicate them to your Dev & Ops teams?
  • 45. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps Sum m ar y
  • 46. @spoole167 @danielbryantuk#DevOps Summary Businesses need to be able to react faster… …DevOps and the Cloud are key enablers DevOps is as much a game changer as Agile was… …this is a Developer, QA and Ops “renaissance” Don’t be afraid to learn and experiment… …you’ll benefit even if the tech doesn’t survive Agile moved you closer to the customer… …DevOps moves you closer to the IT team
  • 47. @spoole167 @danielbryantuk#DevOps Moving to a DevOps Mode… You should be terrified The transition will be hard But it’s easy to get started
  • 48. @YourTwitterHandle#DVXFR14{session hashtag} @spoole167 @danielbryantuk#DevOps Thanks Q & A