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
3 surprises when Continuously Deploying infrastructure
Search
Lindsay Holmwood
April 16, 2015
Technology
0
110
3 surprises when Continuously Deploying infrastructure
Lindsay Holmwood
April 16, 2015
Tweet
Share
More Decks by Lindsay Holmwood
See All by Lindsay Holmwood
Your API ain't as secure as you think
auxesis
0
110
Footguns and factorisation: how to make users of your cryptographic library successful
auxesis
0
1.3k
Levelling up database security by thinking in APIs
auxesis
0
110
How to thwart your devops transformation with counterinsurgency doctrine
auxesis
1
67
Microservices are an antipattern
auxesis
0
170
Mirrors, networks, and boundaries
auxesis
0
81
Managing remotely, while remotely managing
auxesis
13
4k
Testing Conway’s Law in open source communities
auxesis
6
480
Building and scaling effective distributed teams
auxesis
4
190
Other Decks in Technology
See All in Technology
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
110
JAWS-UG Bedrock Claude Night
yamahiro
3
540
本当のAWS基礎
toru_kubota
0
490
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
1.9k
マルチアカウント環境への発見的統制の導入
ch1aki
1
1.3k
開発パフォーマンスを最大化するための開発体制
ham0215
2
190
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
260
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
290
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
490
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
190
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
610
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
68
8.6k
RailsConf 2023
tenderlove
4
540
How to name files
jennybc
65
93k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
The Cost Of JavaScript in 2023
addyosmani
16
3.8k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Design by the Numbers
sachag
274
18k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Transcript
3 surprises when Continuously Deploying infrastructure
What is Continuously Deployed infrastructure?
code change CI running infrastructure
Fast feedback is key
Get iteration time down
< 5 minutes
Track cycle time (min, max, median, 95e)
Get CI close to the action
Eliminate latency
Chunk your changes
Change one, Test one
Make it work Make it right Make it fast
Make it work Make it fast Make it right
1. Validate idea 2. Pay off technical debt
Consider eliminating gates
idea production
Staging slows feedback
1. Extra tasks every change 2. Less changes pushed into
production 3. Lingering state 4. Higher costs
BUT it can provide high quality feedback
1. Your changes must apply faster 2. 80% coverage is
good enough
Don’t start with a staging environment
Find other ways to detect errors
Think fast and slow
Fast tests
Smoke tests
< 10 seconds
Change one, Test one
1. Change app 2. Change DB 3. Change proxy 4.
Test app 5. Test DB 6. Test proxy 4. Test app 5. Test DB 6. Test proxy
1. Change app 2. Test app 3. Change DB 4.
Test DB 5. Change proxy 6. Test proxy fail early 1. Change app 2. Test app 3. Change DB 4. Test DB 5. Change proxy 6. Test proxy
Make feedback visual
None
Slow tests
Full stack Integration tests
Things you should test
Flow of data
Example: - Change DNS record - Check record after TTL
Simulated client interactions
Example (AP): - Write data to store - Query each
node has data within n seconds
Hook into monitoring
Example: - CI runs slow tests - Monitoring queries CI
Ship monitoring with code
Expose discoverable endpoints
Biggest surprise?
Actually possible
Push all changes through CI
More visibility
Faster to change Faster to fix
Thank you! Questions?