Upload
alexander-meijers
View
491
Download
1
Embed Size (px)
Citation preview
DevOpsAn introduction to DevOps
Alexander Meijers| Lead ArchitectWednesday, September 30th 2015
“A software development method that emphasizes communication,
collaboration, integration, automation, and measurement of cooperation between
software developers and other IT professionals”DEV OPS
Source is Wikipedia
DevOps – Working togetherImprove technologic and process integration between development and operations
• Have a common goal• Working together• Optimization of team performance
Development
Technology Operations
Quality Assurance
DevOps
DevOps – Deployment lifecyclesImprove deployment frequency and have faster development and deployment lifecycles
• Leads to faster time to market• Leads to lower failure rate of new released• Leads to shortened lead time between fixes• Leads to faster mean time to recovery (MTTR)
DevOps - Automation• DevOps approach aims to maximize
• predictability• efficiency• Security• maintainability of operational processes
• By investing in automation and critical tool selection• Standardize development environments• Use release management• More flexibility in managing and driving automation
• No or less manually work at the command line
DevOps – application-centric networking• Success is determined by the
end user’s experience with an application• Measuring metrics• Application responsiveness• Application uptime• …
• Requires different level of instrumentation within the supporting infrastructure
DevOps? – Look at the A-Team• Working together• Strive for the same goal• Stick together no matter
what• Share intel• Analyze their results• They learn from it• They always win and nobody
dies!
Lifecycle of DevOps
People Process Products
DEV OPS
Plan1 Monitor +
Learn
Release
Develop + Test2
Development
Production
4
3
DevOps process
Thanks to Donovan Brown for the amazing graphics!
It starts with an idea – and a plan how to turn this idea into reality …
Manage work
Develop + Test
1
PlanProject starts
PlanTrack progress
Thanks to Donovan Brown for the amazing graphics!
Write Code
Unit Testing
2
Build
Version Control
Build Verification
Release
Once the iteration starts, developers turn great ideas into features …
Develop + Test
Thanks to Donovan Brown for the amazing graphics!
CloudLoad
TestingIntegration testing
environment
Automated functional testing
environment
3
Pre-production
environment
Stagingenvironme
nt
Monitor + Learn
When all tests pass, the build is deployed to testing environments for each stage in the release process
Release
Thanks to Donovan Brown for the amazing graphics!
Learn and understand how users use your app, how it reacts and quickly fix issues and bugs
Monitor + Learn
4
Monitor
Feedback
Plan the next iteration
Thanks to Donovan Brown for the amazing graphics!
DevOps practices• Infrastructure as Code • Continuous integration • Automated testing• Application Performance Monitoring / Management• Continuous Deployment / Delivery• Release Management• Configuration Management
Doing one of these practices doesn’t mean you are doing DevOps!Source: http://www.itproguy.com/devops-practices
DevOps solutions @ Microsoft
DevOps journey – Where to start?Asses where you are
• Gather information about MTTR, MTTD, rates of deployment
• Microsoft’s DevOps Self assessment*
Challenge people
• Address people on collaboration between dev and ops
• Thinks out of the box instead of in organization structure and processes like ITIL
Determine your tools
• Choose the practices you need
• Define the tools that are suited to your case
*Microsoft’s DevOps Self Assessment: http://devopsassessment.azurewebsites.net MTTR=Mean Time To ResolveMTTD=Mean Time To Detect
Questions?