Matthew Skelton - How to choose tools for DevOps - collaboration over automation

1,275 views
1,091 views

Published on

skeltonthatcher.com | @matthewpskelton

Title: How to choose tools for DevOps - collaboration over automation

Matthew Skelton has been building, deploying, and operating commercial software systems since 1998. Co-founder and Principal Consultant at Skelton Thatcher Consulting Ltd, he specialises in helping organisations to adopt and sustain good practices for building and operating software systems: Continuous Delivery, DevOps, aspects of ITIL, and software operability. Matthew founded and leads the 700-member London Continuous Delivery meetup group (http://londoncd.org.uk/), and instigated the first conference in Europe dedicated to Continuous Delivery, PIPELINE Conference (http://pipelineconf.info/). He also co-facilitates the popular Experience DevOps workshop series (http://experiencedevops.org/).

With an ever-increasing array of tools and technologies claiming to 'enable DevOps', how do we know which tools to try or to choose? In-house, open source, or commercial? Ruby or shell? Dedicated or plugins? It transpires that highly collaborative practices such as DevOps and Continuous Delivery require new ways of assessing tools and technologies in order to avoid creating new silos. Matthew Skelton shares his recent experience of helping many different organisations to evaluate and select tools to facilitate DevOps; the recommendations may surprise you.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,275
On SlideShare
0
From Embeds
0
Number of Embeds
638
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Matthew Skelton - How to choose tools for DevOps - collaboration over automation

  1. 1. How to choose tools for DevOps and Continuous Delivery Matthew Skelton, Skelton Thatcher Consulting DevOps Exchange meetup group, 24 July 2014, London, UK #doxlon
  2. 2. Collaboration Learning Singleton tools Conway’s Law
  3. 3. Matthew Skelton •15 years building & operating software systems •Cybernetics + Neuroscience • control engineering • psychology • ‘network’ interactions @matthewpskelton
  4. 4. PIPELINE Conference London Continuous Delivery meetup group (#londoncd)
  5. 5. Help orgs to adopt and sustain good engineering practices Interim CTO/Head of X, tech strategy, architecture, workshops, delivery
  6. 6. Recent clients •Tourism •Betting & gambling •Travel booking •Financial data & reporting •Healthcare
  7. 7. Common themes •Online since ~1999 •Successful in their sector •Large, central core database(s) •Non-aligned goals •Need to adopt DevOps and Continuous Delivery
  8. 8. Common needs •Technology selection ticklists •Team interactions •Collaboration opportunities •Tools as catalysts
  9. 9. Continuous Delivery •A scientific approach to changing software systems (Dave Farley) •Regular, rapid, repeatable, reliable changes
  10. 10. Continuous Delivery •Quality •Safety •Reliability •Psychology •Effectiveness
  11. 11. DevOps “Highly effective, daily collaboration between software developers and IT operations people to produce relevant, working systems” * *also QA/Testing, IT Service Desk, Programme Management, Commercial, Marketing, etc.
  12. 12. Not DevOps “Automation” “Build & Release” “Infrastructure Development” “System Administration”
  13. 13. Collaboration
  14. 14. 1. Version Control
  15. 15. 2. Deployment Pipeline
  16. 16. Challenges were: •Limited Git skills in Service team •Manual deployments •‘Snowflake’ servers •No CI •Risks: security, automation, etc
  17. 17. http://bit.ly/thetrainline-weekly-deploy
  18. 18. What we did •Built a walking skeleton pipeline •Modelled security roles and stages •Included manual steps (at first) •Walked people through steps •Finally: opened firewall so everyone could see the UI
  19. 19. Results •Security: happy •Service team: relieved (& happy) •Developers: won over (& happy) •Business: surprised (& happy)
  20. 20. 3. Log Aggregation
  21. 21. LogStash •ElasticSearch+ LogStash+ Kibana •ELK •In Production, Pre-Prod, Test •On developer machines!!!
  22. 22. http://rashidkpc.github.io/Kibana/images/screenshots/searchss.png
  23. 23. Collaboration & tool choice Value collaboration as a key criterion Orthogonal to main purpose (?) “How does [the use of] this tool help people to collaborate?”
  24. 24. Learning
  25. 25. Learning & tool choice Bring people with you Appreciate current skills Prefer achievable gains now Avoid fear of too-scary tools
  26. 26. Singleton tools (or the ‘Prize Bull’ approach)
  27. 27. Singleton tools •Special database server •Costly log aggregation •Costly monitoring •Server configuration
  28. 28. http://www.walpapershddownload.com/highland-cattle-wallpapers/
  29. 29. “Better features”? Optimise globally across the teams that need to collaborate
  30. 30. Singleton tool Breaks feedback (learning) loop from Production Makes CI/CD more difficult Underestimates value of collaboration and learning
  31. 31. Conway’s Law
  32. 32. Mel Conway, 1968 “organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations” http://www.melconway.com/Home/Conways_Law.html
  33. 33. DevOps Topologies
  34. 34. DevOps Topologies
  35. 35. DevOps Topologies
  36. 36. DevOps Topologies
  37. 37. Conway & Tool Choice See the organisation as a system Separate tools for separate teams Shared tools for collaborative teams http://bit.ly/DevOpsTopologies
  38. 38. Conway’s Law •Allan Kelly - @allankellynet •https://vimeo.com/channels/londoncd
  39. 39. How to choose tools for DevOps Value collaboration aspects Avoid a learning mountain: evolve tooling Avoid Production-only tools Consider Conway’s Law (this list is incomplete!)
  40. 40. Further reading HighOps Operability eBook bit.ly/OperabilityEbook Build Quality In buildqualityin.com
  41. 41. Thank you matthewskelton.net / @matthewpskelton skeltonthatcher.com HT: @Squire_Matt, @alan_parkinson

×