Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU...
Transcript of Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU...
![Page 1: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/1.jpg)
Accenture Architecture Services
Why 50 production deploys per day is essential Martin Croker
Markos Rendell
![Page 2: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/2.jpg)
Martin Croker Managing Director, Accenture Technology Architecture
Responsible for DevOps capability at Accenture.
@martincroker
Markos Rendell Accenture - Senior Technology Architect
@markosrendell
http://markosrendell.wordpress.com
![Page 3: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/3.jpg)
3
https://www.youtube.com/watch?v=LdOe18KhtT4
![Page 4: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/4.jpg)
4
https://speakerdeck.com/mrtazz/deploy-collaborate-and-listen
2014
50+ deploys per day
![Page 5: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/5.jpg)
5
DEPLOYS TO
PRODUCTION EVERY
11.6 SECONDS
https://www.youtube.com/watch?v=dxk8b9rSKOo
![Page 6: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/6.jpg)
6
Why?
![Page 7: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/7.jpg)
7
Requirements
Design &
Build
QA &
Test
Operate
![Page 8: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/8.jpg)
8
Design &
Build
QA &
Test
Operate Best Guess
![Page 9: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/9.jpg)
9
Design &
Build
QA &
Test
Operate Best Guess
Feedback
Experiments
![Page 10: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/10.jpg)
10
Design &
Build QA & Test
Operate Best Guess
1 YEAR…
Seconds
![Page 11: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/11.jpg)
11
"The greater danger for most of
us lies not in setting our aim too
high and falling short; but in
setting our aim too low, and
achieving our mark.“
- Michelangelo
![Page 12: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/12.jpg)
12
What should we aim for?
To be able to perform 50 deploys per day with no service impact
![Page 13: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/13.jpg)
13
"The greater danger for most of
us lies not in setting our aim too
high and falling short; but in
setting our aim to low, and
achieving our mark.“
- Michelangelo
"A goal is not always meant to be reached, it often serves simply as something to aim at.“ - Bruce Lee
![Page 14: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/14.jpg)
Requirements
14
Design &
Build
QA &
Test
Operate
Continuous
Improvement
![Page 15: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/15.jpg)
Requirements
15
Design &
Build
QA &
Test
Operate
Continuous
Improvement
![Page 16: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/16.jpg)
16
How?
![Page 17: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/17.jpg)
17
DevOps-centric
Architecture
Continuous Delivery
Software Defined
Platform
Culture
![Page 18: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/18.jpg)
18
Continuous Delivery
Anti-Fragile Design
Infrastructure as Code
Organisation & Culture
![Page 19: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/19.jpg)
19
Value Stream
Idea Value
![Page 20: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/20.jpg)
20
Release
Ideas Values
![Page 21: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/21.jpg)
21
Release
Ideas Values
![Page 22: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/22.jpg)
22
Release
Ideas Values
![Page 23: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/23.jpg)
23
Value Released
Time
Guessed Well
![Page 24: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/24.jpg)
24
Value Released
Time
Guessed Well
Guessed Badly
![Page 25: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/25.jpg)
25
Value Released
Time
Value Stream
Idea Value
Value Stream
Idea Value
Value Stream
Idea Value
Rapid Feedback
Optimise
![Page 26: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/26.jpg)
26
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
Test Security Test
![Page 27: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/27.jpg)
27
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
Test Security Test
Effort and schedule
Test Phase
Comprehensive
Fast
![Page 28: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/28.jpg)
28
Pipeline! Pipeline! Pipeline!
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Build Static Analysis ST Regression
Performance
Test Security Test
Effort and schedule
Test Phase
Pre-commit 1 min
Component 1 hour
Acceptance 4-8 hours
Commit 10 mins
![Page 29: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/29.jpg)
29
“Quality comes not
from inspection, but
from improvement of
the production
process..“
- Dr W. Edward Deming
![Page 30: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/30.jpg)
30
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
![Page 31: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/31.jpg)
31
Continuous Delivery
Anti-Fragile Design
Infrastructure as Code
Organisation & Culture
![Page 32: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/32.jpg)
32
Probability
Impact
Conventional patterns
Anti-fragile design
![Page 33: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/33.jpg)
33
Anti-fragile design
Graceful degradation
Reduce time to recover
Assume failure is unavoidable
Measure the impact & cost
![Page 34: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/34.jpg)
34
Continuous Delivery
Anti-Fragile Design
Infrastructure as Code
Organisation & Culture
![Page 35: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/35.jpg)
35
![Page 36: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/36.jpg)
36
Pets Cattle
Vs.
![Page 37: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/37.jpg)
37
Continuous Delivery
Anti-Fragile Design
Infrastructure as Code
Organisation & Culture
![Page 38: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/38.jpg)
38
Organisation and Culture
Align to business outcomes
Continuously learning
Quality is everybody’s responsibility
Done, Done, Done
![Page 39: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/39.jpg)
39
Let’s make
it real
![Page 40: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/40.jpg)
![Page 41: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/41.jpg)
Private subnet
Tools security groups
AWS region EU (Ireland)
Availability Zone
Internet
Jenkins
Sonar Confluence
LDAP
Gerrit
Shipyard
Selenium
ELK Jira Chef
Server
Public subnet
Public security group
Nginx
Private subnet
Application security groups
Chef Node
Tomcat
AWS cloud
CloudInit
CloudInit
CloudInit CloudInit CloudInit
CloudInit CloudInit CloudInit AMI
Amazon S3
AWS Cloud
AWS
CloudFormation
CF template json
Accenture DevOps Platform
![Page 42: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/42.jpg)
Accenture DevOps Platform
Private subnet
Tools security groups
AWS region EU (Ireland)
Availability Zone
Internet
Jenkins
Sonar Confluence
LDAP
Gerrit
Shipyard
Selenium
ELK Jira Chef
Server
Public subnet
Public security group
Nginx
Private subnet
Application security groups
Chef Node
Tomcat
AWS cloud
AMI
Amazon S3
AWS Cloud
AWS
CloudFormation
CF template json
![Page 43: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/43.jpg)
43
Continuous
Integration
Delivery
Automation
Repeatable Delivery
Defined Environment
Configuration Management
Continuous Delivery
Continuous Deployment
![Page 44: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/44.jpg)
44
https://en.wikipedia.org/wiki/Fractal @ksbittner
![Page 45: Accenture Architecture Services Why 50 production deploys per … · 2015-07-08 · AWS region EU (Ireland) Availability Zone Internet Jenkins Sonar Confluence LDAP Gerrit Shipyard](https://reader033.fdocuments.net/reader033/viewer/2022053019/5f245edb44f71c68f149ca4a/html5/thumbnails/45.jpg)
45
@martincroker
@markosrendell