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
Getting Faster, Continuous Lifecycle 2013
Search
Oliver Wehrens
November 11, 2013
Technology
2
5.1k
Getting Faster, Continuous Lifecycle 2013
How we got from a release every six month to daily releases.
Oliver Wehrens
November 11, 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
730
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
Provisioning from Development to Production, BedCon 2013
owehrens
0
2.9k
Other Decks in Technology
See All in Technology
ユーザーストーリーマッピングから始めるアジャイルチームと並走するQA / Starting QA with User Story Mapping
katawara
0
200
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
320
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
270
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
540
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
190
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
730
OpenID BizDay#17 KYC WG活動報告(法人) / 20250219-BizDay17-KYC-legalidentity
oidfj
0
240
表現を育てる
kiyou77
1
210
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
RSNA2024振り返り
nanachi
0
570
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
130
現場で役立つAPIデザイン
nagix
33
12k
Featured
See All Featured
Designing Experiences People Love
moore
140
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Faster Mobile Websites
deanohume
306
31k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Navigating Team Friction
lara
183
15k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Statistics for Hackers
jakevdp
797
220k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Music & Morning Musume
bryan
46
6.3k
Transcript
getting faster How we got from a release every six
month TO daily releases Continuos Lifecycle 11.11.2013
AndrÉ von deetzen @vdandre Oliver Wehrens @owehrens
Migration what’s next Status Agenda one stack Lessons learned
Status How we started
150 DEV / QA / OPS
> 100 SOURCE REPOSITORIES
1 RELEASE EVERY SIX MONTH
1 TEAM TO RELEASE & DELIVER
1 DEPLOYMENT IN PRODUCTION
Technology stack PHP JAVA RUBY LINUX puppet tomcat C++ C
SQL perl python jboss httpd
development & production different installer other os bare metal vs
virtualisation different puppet versions other ways of monitoring
Wait whaT? How did we GET here? Features, Features, Features
faster, faster, faster (not really) solved the scaling problem upfront
Transition What did we do?
Time to market Analysis 6 Months 2 Weeks daily
Squeeze The existing
Automate as much as we can
From 6 to 3 Months
scrum no more waterfall
From 3 to 1 Month
optimize agile + automation
From 1 Month to 2 weeks
Still a monolith
Still nightly deployments
New Functionality?
We can do better!
One Stack (with variations)
new platform simplify unify loosely coupled daytime deployment disaster recovery
!
Three areas to change
Architecture (many) small services stateless independently deployable stable interfaces
Deployment MAKE RPM NOT WAR PUPPET with HIERA automatic vm
setup
Workflow staging build chain empower teaMs infrastructure
create virtual machine install yum, rpm, centos reboot smoketest lifecycle
configure puppet operate €€€
technology stack JVM Tomcat Centos 6 YUM & RPM Puppet
3 REST
deployment pipeline development release candidate certified release reference production
started with one new service and one team
Approach became very popular
existing services ? anti corruption Layer refactoring rewrite (better not
do it)
> 200 Deployments STAGED TO PRE-PRODUCTION ON OUR BEST DAY
IN 2013
2014 What’s next?
Automate all the things! Puppet for network components Automate firewalls
Increase visibility Infrastructure self service evaluate container based approach instead of VMs
lessons learned
Same environment & Tools Everywhere is essential
don’t get too fast, we could not deploy every delivery
had not enough Capacity for VMs in Development
Rewrite = Long time no roi
Spreading Knowledge can’t be fast enough
need to recreate any Machine automatically
Questions ? And yes, we’re hiring too! come talk to
us.
Thanks for your attention!