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
720
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
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
55k
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
30分でわかる「リスクから学ぶKubernetesコンテナセキュリティ」/30min-k8s-container-sec
mochizuki875
3
450
Azureの開発で辛いところ
re3turn
0
240
EMConf JP の楽しみ方 / How to enjoy EMConf JP
pauli
2
150
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
1
16k
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
300
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
170
AWSサービスアップデート 2024/12 Part3
nrinetcom
PRO
0
150
When Windows Meets Kubernetes…
pichuang
0
310
新卒1年目、はじめてのアプリケーションサーバー【IBM WebSphere Liberty】
ktgrryt
0
140
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
460
Featured
See All Featured
The Language of Interfaces
destraynor
155
24k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Faster Mobile Websites
deanohume
305
30k
Navigating Team Friction
lara
183
15k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
Building Adaptive Systems
keathley
38
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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!