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
Canary Deployments
Search
Yoshiki Nakagawa
September 28, 2016
Technology
0
540
Canary Deployments
Yoshiki Nakagawa
September 28, 2016
Tweet
Share
More Decks by Yoshiki Nakagawa
See All by Yoshiki Nakagawa
Amazon Bedrock で作る未来の開発サイクルと オペレーション戦略 / AWS Summit Japan 2025
yyoshiki41
0
890
MCP Documentation Server @AI Coding Meetup #1
yyoshiki41
2
3.9k
Go API クライアントの実装 〜Go Conference に載せれなかったTIPS〜
yyoshiki41
0
700
マルチテナントのアプリケーション実装 〜実践編〜
yyoshiki41
5
2.8k
Tests API
yyoshiki41
0
62
go-gmail-drafts
yyoshiki41
0
780
Graceful Upgrade for Go App
yyoshiki41
0
110
Other Decks in Technology
See All in Technology
現地速報!Microsoft Ignite 2025 M365 Copilotアップデートレポート
kasada
2
1.6k
JJUG CCC 2025 Fall バッチ性能!!劇的ビフォーアフター
hayashiyuu1
1
410
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
140
クラウドネイティブ時代の 開発プロセス再設計 〜速さと品質を両立するには〜
moritamasami
0
110
持続可能なアクセシビリティ開発
azukiazusa1
6
320
"'TSのAPI型安全”の対価は誰が払う?不公平なスキーマ駆動に終止符を打つハイブリッド戦略
hal_spidernight
0
120
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
AS59105におけるFreeBSD EtherIPの運用と課題
x86taka
0
270
AI時代の戦略的アーキテクチャ 〜Adaptable AI をアーキテクチャで実現する〜 / Enabling Adaptable AI Through Strategic Architecture
bitkey
PRO
15
9.6k
pmconf 2025 大阪「生成AI時代に未来を切り開くためのプロダクト戦略:圧倒的生産性を実現するためのプロダクトサイクロン」 / The Product Cyclone for Outstanding Productivity
yamamuteki
3
2.4k
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
780
自然言語でAPI作業を片付ける!「Postman Agent Mode」
nagix
0
130
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
GitHub's CSS Performance
jonrohan
1032
470k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Balancing Empowerment & Direction
lara
5
760
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Into the Great Unknown - MozCon
thekraken
40
2.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Facilitating Awesome Meetings
lara
57
6.6k
Transcript
Canary Deployments ! Move Fast, Fail Fast (and Small) Sep
/ 26 / 2016 1
AboutMe @yyoshiki41 Yoshiki Nakagawa Infrastructure Engineer, pairs Division Tech »
Golang » Middleware, AWS 2
What is the canary server ? By 4028mdk09 (Own work)
[CC BY-SA 3.0], via Wikimedia Commons 3
Canary Server tl;dr σϓϩΠϓϩϏδϣχϯάΛ͍͖ͳΓ ϓϩμΫγϣϯڥͷશମͰͳ͘ɺઌ ߦͯ͠Ұ෦ʹରͯ͠ߦ͍ɺ ͜Ε͕దԠ͞ΕͨͷΛʮΧφϦΞαʔ όʯͱݺͿɻ Ұ෦ͷΫϥελʹΑΔݕূͰɺࣦഊ࣌ ͷμϝʔδΛগͳ͘͢Δߟ͑ํɻ
ϑΟʔυόοΫΛ͍ͪૣ͘ड͚औΕΔɻ 4
߭ͰͷಟΨεݕʹɺΧφϦΞ͕ ΘΕͨ͜ͱʹ༝དྷ͢Δɻ ͍ΘΏΔ߭ͷΧφϦΞɺ߭ʹ͓ ͍ͯ͠͠ൃੜ͢ΔϝλϯҰࢎԽ ૉͱ͍ͬͨଉΨεಟΨεૣظൃ ݟͷͨΊͷܯใͱͯ͠༻͞Εͨɻຊ छͭͶʹ͍͑ͣͬͯ͞ΔͷͰɺҟৗൃ ੜʹઌۦ͚·ͣ໐͖͕ࢭΉɻͭ· ΓةݥͷΛͱࣖͰ֬ೝͰ͖Δॴ ͕ॏๅ͞ΕɺಟΨεݕʹ༻͍ΒΕ
ͨɻ wikipedia ΑΓ 5
Use Cases 6
Application » มߋͨ͠ΞϓϦέʔγϣϯίʔυΛຊ൪σϓϩΠͯ͠ݕূ͍ͨ͠ » ৽ػೳͷఆ͍ͯ͠ͳ͍όάΛ࠷খݶʹ͍͗ͨ / ෛՙΛݕূ͍ͨ͠ Infra » ৽͍͠ϛυϧΣΞΛࢼ͍ͨ͠
» ϛυϧΣΞͷϓϩϏδϣχϯάมߋલޙͷมԽΛݕূ͍ͨ͠ 7
Use Cases in pairs Ansible commands! $ ansible-playbook -i hosts/pairs-jp/prod
--limit web-canary playbook_pairs/delivery.yml --extra-vars="pkg_dir=v160101010101-10f29c9" That's all! 8
Use Cases in Netflix σϓϩΠαΠΫϧʹΧφϦΞΫϥελͷσϓϩΠؚ͕·Ε͓ͯΓɺ ϨϙʔςΟϯά(Canary analysis report) => શମެ։͢Δ͔൱͔ͷδϟ
οδ (Canary Score) ·Ͱ͕ࣗಈԽ͞Ε͍ͯ·͢ɻ ඦͱ͍͏Α͏ͳنΛӡ༻͍ͯ͘͠͏͑Ͱɺ શࢮઈରʹආ͚ͳ͚ΕͳΒͳ͍͜ͱΛߟ͑ΔͱࣗવͳྲྀΕɻ 9
Development & Deployment Flow ެࣜϒϩά ʮDeploying the Netflix APIʯ 10
Containers Containerͱͷ૬ੑ͕ྑ͍ͷͰɺ Container as a serviceɺCI/CDαʔ ϏεʹΈࠐ·Ε͍ͯΔͷଟ͍ɻ e.g.) Kubernetes 11
Caution ޓΛऔΕ͍ͯͳ͍ͷɺΧφϦΞαʔόͷσϓϩΠ͕ग़དྷͳ͍ɻ e.g.) ৽͍͠APIϦΫΤετΛ͛ΔΫϥΠΞϯτଆͷίʔυؚΉ ! 12
Others ຊ൪ڥ(ಉ)ͰͷݕূΛߦ͍͍ͨ߹ɺ ΧφϦΞαʔόͰͳ͘γϟυʔϓϩΩγΛ༻͍Δख๏ϝδϟʔɻ e.g.) cookpad/Kage 13
Move Fast, Fail Fast (and Small) ߭ (ຊ൪ڥ) ʹɺةݥ͕͍ͬͺ͍Ͱ͢ɻ શ໓Λආ͚ΔҝʹɺΧφϦΞͷॿ͚ΛआΓ·͠ΐ͏
! (ͪΖΜɺΧφϦΞࢮͳͤͳ͍͜ͱ͕ϕετͰ͕͢ɻ) 14