Upload
matthew-skelton
View
3.815
Download
1
Tags:
Embed Size (px)
DESCRIPTION
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. Slides from Unicom DevOps Summit, 26th June 2014, London
Citation preview
How to choose tools for DevOps
Matthew Skelton, Skelton Thatcher Consulting
Unicom DevOps Summit, 26 June 2014, London, UK
#unidevops
Collaboration
Learning
Singleton tools
Conway’s Law
Matthew Skelton•15 years building & operating software systems
•Cybernetics + Neuroscience• control engineering• psychology• ‘network’ interactions
@matthewpskelton
Help orgs to adopt and sustain good engineering practices
Interim CTO/Head of X, tech strategy, architecture, workshops, delivery
DevOpsOngoing, highly effective
collaboration between Development and Operations*
*also QA/Testing, IT Service Desk, Programme Management,
Commercial, Marketing, etc.
Not DevOps“Automation”
“Build & Release”
“Infrastructure Development”
“System Administration”
Collaboration
1. Version Control
2. Deployment Pipeline
Challenges were:•Limited Git skills in Service team
•Manual deployments
•‘Snowflake’ servers
•No CI
•Risks: security, automation, etc
http://bit.ly/thetrainline-weekly-deploy
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
Results•Security: happy
•Service team: relieved (& happy)
•Developers: won over (& happy)
•Business: surprised (& happy)
3. Log Aggregation
LogStash•ElasticSearch+ LogStash+ Kibana•ELK
•In Production, Pre-Prod, Test
•On developer machines!!!
http://rashidkpc.github.io/Kibana/images/screenshots/searchss.png
Collaboration & tool choice
Value collaboration as a key criterion
Orthogonal to main purpose (?)
“How does [the use of] this tool help people to collaborate?”
Learning
Learning & tool choice
Bring people with you
Appreciate current skills
Prefer achievable gains now
Avoid fear of too-scary tools
Singleton tools
http://www.walpapershddownload.com/highland-cattle-wallpapers/
Singleton toolBreaks feedback (learning) loop
from Production
Makes CI/CD more difficult
Underestimates value of collaboration and learning
Conway’s Law
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
?
DevOps Topologies
DevOps Topologies
DevOps Topologies
DevOps Topologies
Conway & Tool Choice
See the organisation as a system
Separate tools for separate teams
Shared tools for collaborative teams
http://bit.ly/DevOpsTopologies
Conway’s Law•Allan Kelly - @allankellynet
•https://vimeo.com/channels/londoncd
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!)
Further readingHighOps Operability eBook
bit.ly/OperabilityEbookBuild Quality In
buildqualityin.com
Thank youmatthewskelton.net / @matthewpskelton
skeltonthatcher.com
HT: @Squire_Matt, @alan_parkinson