Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Provisioning from Development to Production, Be...
Search
Oliver Wehrens
April 08, 2013
Technology
0
2.9k
Provisioning from Development to Production, BedCon 2013
Berlin Expert Days Talk April 2013
Oliver Wehrens
April 08, 2013
Tweet
Share
More Decks by Oliver Wehrens
See All by Oliver Wehrens
Service Discovery For Machines And Humans - OOP conference 2017
owehrens
0
10k
How not to lose your mind with too many microservices - Architecture Gathering 2016
owehrens
3
270
How not to lose your mind with too many microservices - BedCon 2016
owehrens
1
700
Entwicklung verteilter Systeme (The Architecture Gathering 2015)
owehrens
1
110
Entwicklung verteilter Systeme - Herausforderungen nicht nur für die Architektur, BedCon 2015
owehrens
0
2.2k
Wider den Monolith - Am Ende wird alles gut. WJAX 2014.
owehrens
1
3.6k
Getting Faster, Continuous Lifecycle 2013
owehrens
2
5.1k
Other Decks in Technology
See All in Technology
Gradle: The Build System That Loves To Hate You
aurimas
2
180
大規模データ基盤チームのオンプレTiDB運用への挑戦 / dpu-tidb
cyberagentdevelopers
PRO
1
120
Microsoft Intune アプリのトラブルシューティング
sophiakunii
1
170
【技術書典17】OpenFOAM(自宅で極める流体解析)2次元円柱まわりの流れ
kamakiri1225
0
250
いろんなものと両立する Kaggleの向き合い方
go5paopao
1
640
利きプロセススケジューラ
sat
PRO
4
1.7k
株式会社ドクターズプライム 会社紹介資料 - エンジニア向け
drsprime
0
180
Fargateを使った研修の話
takesection
0
160
福岡新卒エンジニアの会
teba_eleven
1
140
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
1
210
10分でわかるfreeeのQA
freee
1
3.4k
フロントエンド メタフレームワーク 選定の際に考えたこと
yuppeeng
0
450
Featured
See All Featured
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
How GitHub (no longer) Works
holman
310
140k
The Pragmatic Product Professional
lauravandoore
31
6.3k
We Have a Design System, Now What?
morganepeng
50
7.2k
Designing for humans not robots
tammielis
249
25k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.6k
Building an army of robots
kneath
302
42k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
228
52k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
800
How STYLIGHT went responsive
nonsquared
95
5.2k
Transcript
PROVISIONING FROM DEVELOPMENT TO PRODUCTION
ANDRE VON DEETZEN @VDANDRE OLIVER WEHRENS @OWEHRENS
@BERLIN
“FASTER TIME TO MARKET”
4-6 MEANTIME BETWEEN DELIVERIES IN WEEKS
150 DEV / QA / OPS
>100 SOURCE REPOSITORIES
1 RELEASE
“FASTER TIME TO MARKET”
3 AREAS TO CHANGE
WORKFLOW DEPLOYMENT ARCHITECTURE
ARCHITECTURE
MANY SMALL SERVICES
STATELESS SERVICES
INDEPENDENT DEPLOYABLE
STABLE INTERFACES
DEPLOYMENT PIPELINE
Stages & Version Stage Version DEV Development Testing Release Candidate
Stable Certified Release
Tests Unit- + Componenttests Component - Integrationtests Smoke- tests DEV
Testing Stable Way to production
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DataCenter
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DataCenter
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DataCenter Contract with Ops
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DataCenter Contract with Ops
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DEV-NET DataCenter Same Binary across all stages!
YUM Repo Stable YUM Repo Testing YUM Repo DEV YUM
Repo Stable (Rechenzentrum) DEV-NET DataCenter Same Binary across all stages!
CONFIGURATION MANAGED BY PUPPET
VCS CI Unit Tests
Dev Dev Test with Mocks
Dev Dev Test with Mocks Release Candidate Testing SmokeTests
Dev Dev Test with Mocks QA Release Candidate SmokeTests Certified
Release Prod Certified Release SmokeTests
fully automated Stages Repos Certified Release Prod VCS CI Dev
Release Candidate Certified Release Dev Testing Test with Mocks SmokeTests SmokeTests Unit Tests Pull
PROVISIONING
LIFECYCLE KVM Kickstart & RPM Puppet $$$
DISASTER RECOVERY BUILD IN
BLUE - GREEN DEPLOYMENT
HOW TO TEST LOCALLY?
Developer Operating Systems
None
Everything can be tested locally with vagrant (this means operating
system like in production, configuration management, deployment, building packages, needed network interfaces, ...) http://www.vagrantup.com
WHAT CHANGED IN OUR WORKFLOW?
TEAM IS RESPONSIBLE
EVERY COMMIT GOES TO PRODUCTION
DEPLOY ≠ FEATURE RELEASE
ROLL FORWARD
AUTOMATE ALL THE THINGS
IF IT HURTS DO IT MORE OFTEN (EXCEPT MEETINGS)
TEST SETUP
VISIBILITY
NEXT STEPS
DB DEPLOYMENT
COMPONENT PUPPET WITH HIERA
SAME KICKSTART IN DEV & PROD
FEEDBACK: LIVE DATA IN DEV WITH GRAPHITE
MEASURE, MEASURE, MEASURE
SELF HEALING
LESSONS LEARNED
#1 CLOSE TO PRODUCTION AS EARLY AS POSSIBLE
#2 EVERYTHING CAN BE AUTOMATED
#3 MANAGEMENT BUY IN
#4 SELF-SERVICE INFRASTRUCTURE FOR TEAMS
#5 RESISTANCE WILL RISE
#6 IT’S WORTH THE EFFORT
~ 30 MIN TO CR
#7 FEEDBACK IS NEVER FAST ENOUGH
QUESTIONS