Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
www.techarchday.fiwww.techarchday.fi
Why 50 productions
deploys per day is essential
Oscar Renalias
Senior Technology Architect
v10
@oscarrenalias
github.com/oscarrenalias
github.com/Accenture
www.linkedin.com/oscarrenalias
www.slideshare.net/oscarrenalias
2009 2014 2015
50+ deploys per day10 deploys per day
Deploys to production
every 11.6 seconds
Requirements
Design &
Build
QA &
Test
Operate
QA &
Test
Operate Best Guess
Design &
Build
Design &
Build
QA &
Test
Operate Best Guess
Feedback
Experiments
QA &
Test
Operate Best Guess
Design &
Build
1 YEAR6 MONTHS1 MONTH2 WEEKS1 WEEKS1 DAY1 HOURMINUTES
Run over
200 concurrent experiments
on any given day
http://www.exp-platform.com/Pages/ControlledExperimentsAtLargeScale.aspx
THIS MANY EXPERIMENTS
Our objective:
50 deployments a day
with no service impact
Requirements
Design &
Build
QA &
Test
Operate
Continuous
Improvement
Requirements
Design &
Build
QA &
Test
Operate
Continuous
Improvement
SAY CONTINUOUS IMPROVEMENT
ONE MORE TIME
Continuous Delivery
Automation
Architecture
Culture
Value Stream
Idea Value
Release
Ideas Values
Release
Ideas Values
Release
Ideas Values
Value Released
Time
Guessed Well
Release
Ideas Values
Value Released
Time
Guessed Well
Guessed Badly
Value Released
Time
Value Stream
Idea Value
Value Stream
Idea Value
Value Stream
Idea Value
Rapid Feedback
Optimise
Release
Ideas Value
“Hotfixes”
Ideas Value
Overhead
Release
Requirements
QA &
Test
Operate
Design &
Build
Continuous
Integration
CI – what good looks like…
Changes constantly pushed to version control
Fixing a broken build is always the priority
Nobody goes home on a broken build
Requirements
29
Design &
Build
Operate
`Continuous
Test
QA &
Test
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
TestSecurity Test
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
TestSecurity Test
Effort and schedule
Test Phase
Comprehensive
Fast
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
TestSecurity Test
Effort and schedule
Test Phase
Pre-commit1 min
Component1 hour
Acceptance4-8 hours
Commit10 mins
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
TestSecurity Test
Effort and schedule
Test Phase
Stop the assembly line!
What about tools?
THEY WANTED MORE AGILITY,
SO WE SOLD THEM $2M IN DEVOPS TOOLS
Continuous Delivery Principles
Each check-in is a candidate production release
The same processes and tools in ALL environments
A failure at any stage stops the production line
It’s not about the tools!
Continuous Delivery
Automation
Architecture
Culture
I CAN HAZ CONTINUOUS DELIVERY?
Fail-fast
Microservices
Metrics and
Logs
Independently deployable and scalable
components
Failure is unavoidable. Deal with it.
Proactive monitoring
Continuous Delivery
Automation
Architecture
Culture
RELEASE TIME!
Oscar’s unscientific observations of release
failures
Human failures
ELIMINATE ALL HUMANS
Pets vs Cattle
Build Static Analysis ST Regression Performance
TestSecurity Test Deployment
Test & QA
Automation
Infrastructure as code
Test, test, test
Eliminate the human factor
Continuous Delivery
Automation
Architecture
Culture
WORKED FINE IN DEV
OPS PROBLEM NOW
Smooth Collaboration Fully Embedded Infrastructure-as-a-Service
DevOps as a Service Separate DevOps Team
DevOps Culture: Which one is right
for you?
Source: http://www.devopstopologies.com
FIRED YOUR EXISTING TEAM AND
REPLACED THEM WITH A DEVOPS TOOL?
THAT MUST BE GOING WELL
Organisation and Culture
Align to business priorities
Quality is everybody’s responsibility
Define your own DevOps Culture
People over processes and tools
http://bit.ly/AccentureDevOpsPlatform