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
760
Entwicklung verteilter Systeme (The Architecture Gathering 2015)
owehrens
1
120
Entwicklung verteilter Systeme - Herausforderungen nicht nur für die Architektur, BedCon 2015
owehrens
0
2.3k
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
人間性を捧げる生成AI時代の技術選定
yo4raw
1
520
名単体テスト 禁断の傀儡(モック)
iwamot
PRO
1
280
Pythonデータ分析実践試験 出題傾向や学習のポイントとテクニカルハイライト
terapyon
1
160
インフラからSREへ
mirakui
13
4.4k
クラウドネイティブ環境の脅威モデリング
kyohmizu
2
420
Software Architecture in an AI-Driven World
atty303
42
16k
ユーザーコミュニティが海外スタートアップのDevRelを補完する瞬間
nagauta
1
190
自動化の第一歩 -インフラ環境構築の自動化について-
smt7174
1
130
水耕栽培に全部賭けろ
mutsumix
0
110
kernelvm-brain-net
raspython3
0
610
Cursorをチョッパヤインタビューライターにチューニングする方法 / how to tuning cursor for interview write
shuzon
2
250
DynamoDB のデータを QuickSight で可視化する際につまづいたこと/stumbling-blocks-when-visualising-dynamodb-with-quicksight
emiki
0
160
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
RailsConf 2023
tenderlove
30
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Into the Great Unknown - MozCon
thekraken
38
1.8k
How STYLIGHT went responsive
nonsquared
100
5.5k
We Have a Design System, Now What?
morganepeng
52
7.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Building an army of robots
kneath
305
45k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
430
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