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
280
How not to lose your mind with too many microservices - BedCon 2016
owehrens
1
710
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
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
5
210
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
290
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
19
18k
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
17
4.8k
生成AIのガバナンスの全体像と現実解
fnifni
1
190
5分でわかるDuckDB
chanyou0311
10
3.2k
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
1
510
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
880
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
760
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
MLOps の現場から
asei
7
650
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
88
5.7k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Become a Pro
speakerdeck
PRO
26
5k
Being A Developer After 40
akosma
87
590k
Side Projects
sachag
452
42k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
RailsConf 2023
tenderlove
29
940
GraphQLとの向き合い方2022年版
quramy
44
13k
KATA
mclloyd
29
14k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
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