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
タップルSREはタップルの成長をどこまで支えられるか / tapple-SRE
Search
CyberAgent
PRO
February 22, 2019
Technology
0
3.1k
タップルSREはタップルの成長をどこまで支えられるか / tapple-SRE
サイバーエージェントの技術者(エンジニア・クリエイター)向けカンファレンス『CA BASE CAMP 2019』
タップルSREはタップルの成長をどこまで支えられるか
袴田 類
CyberAgent
PRO
February 22, 2019
Tweet
Share
More Decks by CyberAgent
See All by CyberAgent
新規開発と並走したリファクタリング戦略
cyberagentdevelopers
PRO
0
73
大規模Reactアプリのリアーキテクチャ_8万行のTanStack Query移行の奇跡
cyberagentdevelopers
PRO
1
77
CA.swift19_恋するAIアプリ開発の裏側
cyberagentdevelopers
PRO
1
37
CLのウィジェット開発について
cyberagentdevelopers
PRO
1
20
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ
cyberagentdevelopers
PRO
2
31
ABEMAの課金機能の刷新について:- StoreKit2によるiOSのアプリ内課金のリニューアル
cyberagentdevelopers
PRO
0
21
同時に複数購読可能なサブスクリプションを提供する
cyberagentdevelopers
PRO
0
21
Flutter × Rive 魅力的なアニメーション
cyberagentdevelopers
PRO
0
100
Serverpodを活用したDartのフルスタックアプリケーション開発
cyberagentdevelopers
PRO
0
130
Other Decks in Technology
See All in Technology
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
240
Azureの基本的な権限管理の勉強会
yhana
0
290
Next'24 事例セッションの紹介とクラウド資格を活用したキャリア形成について語りMuscle
yasumuusan
1
440
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
Building Dashboards as a Hobby
egmc
0
120
現代CSSフレームワークの内部実装とその仕組み
poteboy
8
3.6k
Cracking the KubeCon CfP
inductor
2
240
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
280
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
890
自己改善からチームを動かす! 「セルフエンジニアリングマネージャー」のすゝめ
shoota
6
450
ChatworkのSRE部って実は 半分くらいPlatform Engineering部かもしれない
saramune
0
160
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
Building Your Own Lightsaber
phodgson
99
5.7k
Adopting Sorbet at Scale
ufuk
68
8.6k
How to name files
jennybc
65
93k
A Tale of Four Properties
chriscoyier
151
22k
Designing with Data
zakiwarfel
96
4.8k
YesSQL, Process and Tooling at Scale
rocio
164
13k
Thoughts on Productivity
jonyablonski
58
3.8k
The Mythical Team-Month
searls
216
42k
Visualization
eitanlees
136
14k
Facilitating Awesome Meetings
lara
42
5.6k
Atom: Resistance is Futile
akmur
259
25k
Transcript
λοϓϧSRE λοϓϧͷΛ Ͳ͜·Ͱࢧ͑ΒΕΔ͔ λοϓϧͷकΓͷϛογϣϯΛ୲͏λοϓϧSREʮ҆શͱ࠷దʯͷ׆ಈ࣠ Ͱ20184݄͔Β׆ಈ։࢝͠·ͨ͠ɻ λοϓϧSREͷݱࡏͷ׆ಈ༰ͱɺࠓޙλοϓϧͷΛSREͱͯ͠ͲͷΑ ͏ʹࢧ͔͑ͯ͘ʹ͍͓ͭͯ͠·͢ɻ ϚονϯάΤʔδΣϯτɹއా ྨ !1
1. αʔϏεհ 2. λοϓϧSREͷઃཱഎܠ 3. ׆ಈ༰ 4. ՝ղܾͷํ 5. ظ՝
6. தظઓུ 7. ·ͱΊ 8. ࠷ޙʹ !2
ϓϩϑΟʔϧ • 20124݄ αΠόʔΤʔδΣϯτ৽ଔೖࣾ Ξϝʔόϐά ։ൃΤϯδχΞ ίΞγε ৽نΞϓϦ্ཱͪ͛ • 20186݄
ϚονϯάΤʔδΣϯτग़ λοϓϧੜ ։ൃΤϯδχΞ SREΤϯδχΞ !3
αʔϏεհ !4
λοϓϧੜʹ͍ͭͯ ए͍உঁ͕झຯͰܨ͕Δ࿀׆αʔϏε !5
λοϓϧੜʹ͍ͭͯ झຯͰΈͷҟੑΛ୳͢ एऀͷར༻ׂ߹͕ߴ͍ !6
ϚονϯάΞϓϦͷར༻ !7
20~30ͷएऀͷ5ਓʹ1ਓ !8 શࠃͷʙࡀͷະࠗͷஉঁʹฉ͍ͨʮϚονϯάΞϓϦʹؔ͢Δௐࠪʯ IUUQTQSUJNFTKQNBJOIUNMSEQIUNM
ϚονϯάΞϓϦʹର͢Δ ੈؒͷΠϝʔδมΘΓͭͭ͋Δ !9
λοϓϧॱௐʹ 2018ʹձһ400ສಥഁ !10
λοϓϧॱௐʹ ࡢൺͰ७རӹ2ഒҎ্ͷ !11
ϚονϯάΤʔδΣϯτͷϝϯόʔ !12
ϚονϯάΤʔδΣϯτͷϝϯόʔ ຊؾͰʮग़ձ͍ͰੈքΛม͑ΔʯͨΊʹऔΓΉ͍ϝϯόʔ͔Γ !13
·ͣɺϚʔέοτγΣΞͰ ຊҰΛࢦ͠·͢ !14
λοϓϧSREͷઃཱഎܠ !15
ຊҰΛࢦͯ͠ λοϓϧͰߦͳ͍ͬͯΔ͜ͱ !16
νʔϜ੍։ൃ • νʔϜ੍ͷ։ൃελΠϧ ՝ۚ / UXվળ / ւ֎ / CS
... • ϚονϯάࢢܹԽ ػೳͷඪ४Խ ৽ػೳͷఏڙ • ߴʹ։ൃΛਐΊ͍ͨ !17
ΤϯδχΞෆ !18
৫Λεέʔϧͤ͞Δ !19
৫Λεέʔϧͤ͞Δ ୯७ʹਓΛ૿ͤྑ͍Θ͚Ͱͳ͍ !20
৫Λεέʔϧͤ͞Δ ࣭ੜ࢈ੑΛ୲อͯ͠։ൃʹઐ೦Ͱ͖ΔڥΛ࡞Δඞཁ !21
ϩʔϧϞσϧͱͳΔνʔϜ !22
Google SRE • αΠτͷ৴པੑΛकΔ • SREDevOpsͷGoogleతͳ࣮ફ • ಠࣗͷӡ༻ϓϥΫςΟε ੜ࢈ੑͷ୲อ ࣭ͷ୲อ
... etc • ॻ੶ͰମܥతʹGoogle SREͷϓϥΫ ςΟεΛशಘՄೳ !23
λοϓϧ SRE • λοϓϧͰ৫Λεέʔϧ͍ͤͨ͞ • αʔϏεͷ࣭ੜ࢈ੑΛ୲อ͍ͨ͠ • GoogleSREͷ׆ಈ༰Ͱཁ࣮݅ݱՄೳ • 20184݄ʹSREΛλοϓϧʹઃཱ
201810݄ΑΓ2ਓମ੍ !24
׆ಈ༰ !25
ଞࣾͷSREͷ׆ಈࣄྫ !26
SREͷ׆ಈ༰༷ʑ SREͷަྲྀձ SRE LoungeͰ֤ࣾͷSREΛൃද !27
SREͷ׆ಈ༰༷ʑ • SREڥʹԠͯ͡׆ಈ༰͕ҟͳΔ ΞʔΩςΫνϟ SREͷઃཱίϯςΩετ SREͷਓһ ϝϯόʔͷಘҙ ϓϩμΫτͷஈ֊ ... etc
• Google SREʹֶͼಠࣗͷϓϥΫςΟεΛੜΈग़͢ !28
Google SREʹݻࣥ͗ͣ͢͠ɺ λοϓϧͷSREΛࢦ͢ !29
λοϓϧͷSREͷ׆ಈ༰ !30
λοϓϧSREͷ׆ಈ༰ GoogleSREͷ׆ಈ༰Λܧঝ͠ɺλοϓϧͷSREͷ׆ಈΛఆٛ !31
λοϓϧSREͷ׆ಈ༰ • λοϓϧSREͷ׆ಈ༰ଟذʹΓۀ͕ཧղ͞ΕͮΒ͍ ϏδωεαΠυͷϝϯόʔʹ׆ಈ༰Λ͑Δඞཁ ׆ಈ࣠ΛҰݴͰදݱ͢Δ͜ͱʹ !32
λοϓϧSREͷ׆ಈ༰ ׆ಈ࣠ͱͯ͠ʮ҆શͱ࠷దʯͱදݱ !33
՝ղܾͷํ !34
ݩͷ՝͕ଟ͍ !35
ظ՝ •҆શ؍ ϐʔΫଳͰͷύϑΥʔϚϯεԼ োରԠϑϩʔͷඋ ... etc •࠷ద؍ ඇޮӡ༻ ଐਓԽͨ͠ӡ༻ϑϩʔ ...
etc !36
ظ՝ • ݩ՝͔Γରॲ͍ͯ͠ΒΕͳ͍ SRE͕ෛ࠴ฦ٫νʔϜͷΑ͏ͳݟ͑ํʹ ҆શͱ࠷ద؍Ͱͷ࣮ߦλεΫ͕ݮͬͨ࣌ͷଘࡏҙ͕ٛग़ͮ͠Β͍ ݩ͔Γݟ͍ͯͯେ͖ͳෛ࠴Λ๊͔͑Ͷͳ͍ !37
தظઓུඞཁ !38
தظઓུ • ҆શ؍ ࠓޙൃੜ͢ΔϦεΫͷରࡦ • ࠷ద؍ ࣄۀͷཧঢ়ଶΛ࣮ݱ͢ΔΞʔΩςΫνϟ !39
ظͷ՝ղܾͱதظઓུ 2ͭͷࢹͰ҆શͱ࠷దͷ՝ʹ͖߹͏ !40
ظ՝ !41
ݩͷ՝͕ଟ͍ !42
ظ՝ͷఆٛ • ඞͣରԠ͖͢λεΫͱฒߦͯ͠ɺ୲อ ͖҆͢શͱ࠷దͷج४͕ඞཁ ύϑΥʔϚϯε ΤϥʔϨʔτ Մ༻ੑ ... etc !43
ਖ਼ৗͱҟৗͷڥքΛͲ͏ܾΊΔ͔ !44
SLO • SLI(Service Level Indicator) ఏڙ͢ΔαʔϏεͷ࣭Λܭଌ͢Δࢦඪ • SLO(Service Level Objective)
֤SLIʹର͢Δඪ !45
SLO • ΤϥʔόδΣοτ SLOΛຬͨ͢ൣғͰͷෆ۩߹Λڐ༰ தظઓུʹ͚Δ͜ͱ͕Մೳ • SLOʹΑΓ୲อ͖҆͢શͱ࠷దͷج४Λఆٛ Մೳ • ৫ԣஅͷඪʹ͢Δ͜ͱͰɺ҆શͱ࠷దͷج
४ͷ୲อͷ্͕֬ !46
λοϓϧͰӡ༻தͷSLO !47
λοϓϧͰӡ༻தͷSLO • APIޭ ఆٛɿɹਖ਼ৗϦΫΤετ / ૯ϦΫΤετ * 100 ඪɿ99.9%Ҏ্ •
ϝϯς ఆٛɿɹ503ΤϥʔҎ֎ / ૯ϦΫΤετ * 100 ඪɿ99.9%Ҏ্ • APIϨεϙϯελΠϜ (200msҎԼ) ఆٛɿɹ200msҎԼͷਖ਼ৗϦΫΤετ / ૯ϦΫΤετ * 100 ඪɿ95%Ҏ্ !48
λοϓϧͰӡ༻தͷSLO • DatadogͰՄࢹԽ • ΤϥʔόδΣοτΛஶ͘͠ফඅ͢Δ ߹ʹΞϥʔτ • ఆظతʹαʔόΤϯδχΞશମͰࢹ ֬ೝ !49
ಠࣗͷSLOར༻ํ๏ !50
ϦεΫείΞ • ະղܾͷϙετϞʔςϜͷ࠶ൃࢭࡦΛ SLOͰཧ • োൃੜ࣌ɺোӨڹΛ̏ஈ֊ͰධՁ Ϣʔβ͍߹ΘͤΛࢀߟʹӨڹΛධՁ • ࠶ൃࢭࡦΛোӨڹʹԠͯ͡είΞԽ •
ະ࣮ࢪͷ࠶ൃࢭࡦͷείΞͷ૯Λো ϦεΫείΞͱఆٛ !51
ϦεΫείΞ • োϦεΫείΞΛ100ҎԼʹอͭ ܦӦʹ߹ҙΛऔΓɺ৫ڞ௨ͷඪʹ 100Λ͑ͨ߹։ൃΛετοϓ • DatadogͰՄࢹԽ ఆظతʹোϦεΫείΞΛ৫શମʹڞ༗ !52
ࠓޙՃ͢ΔϦεΫείΞ !53
ϦεΫείΞ ηΩϡϦςΟʔΞηεϝϯτγʔτΛར༻ͨ͠ηΩϡϦςΟʔϦεΫείΞ !54
ϦεΫείΞ εΩϧϚοϓΛར༻ͨ͠োϦεΫείΞ !55
தظઓུ !56
தظઓུͷఆٛ ࠓޙൃੜ͢ΔϦεΫͷରࡦɺࣄۀͷཧঢ়ଶͷ࣮ݱ !57
தظઓུΛ໌ྎԽ͢Δ அࡐྉ͕ඞཁ !58
தظઓུͷ໌ྎԽ • ࠓޙൃੜ͢ΔϦεΫͷ໌ྎԽ ܦӦʹࣄۀܭըΛཁٻ ࣄۀܭըΛ્͢ΔϦεΫΛνΣοΫ !59
தظઓུͷ໌ྎԽ • ཧঢ়ଶ࣮ݱͷͨΊଟ໘తʹ՝ཧ SRE × ։ൃΤϯδχΞMTG ... ։ൃࢹ SRE ×
ٕज़ϘʔυMTG ... ٕज़ઓུࢹ SRE × ܦӦ × ٕज़ϘʔυMTG ... ࣄۀࢹ • ٞΛ௨ͯ͡։ൃνʔϜܦӦͷ՝ ཧঢ়ଶΛ͢Γ߹ΘͤΔ !60
ࣄۀͷཧঢ়ଶͷఆٛྫ !61
ཧঢ়ଶͷఆٛྫ ݕࡧΞϧΰϦζϜ = ҟੑͷදࣔॱং !62
ཧঢ়ଶͷఆٛྫ • ݕࡧΞϧΰϦζϜͷ՝ཧ ৫Λεέʔϧͤ͞Δඞཁ िҰͷϦϦʔεͰPDCAΛճͮ͠Β͍ ࣝͷܧঝ͕దʹ͞Ε͍ͯͳ͍՝ !63
ཧঢ়ଶͷఆٛྫ • ݕࡧΞϧΰϦζϜͷ՝ཧ ৫Λεέʔϧͤ͞Δඞཁ νʔϜͷݖݶҕৡͰ৫Λεέʔϧ िҰͷϦϦʔεͰPDCAΛճͮ͠Β͍ ςετڥΛ֤αʔϏεͰඋ͢Δ͜ͱͰɺ͍ͭͰ ϦϦʔεͰ͖Δঢ়ଶʹ ࣝͷܧঝ͕దʹ͞Ε͍ͯͳ͍՝ νʔϜΛݻఆࣝ͠ͷू
!64
ϚΠΫϩαʔϏεԽͷਪਐத !65
·ͱΊ !66
·ͱΊ • ҆શͱ࠷దͷ׆ಈ࣠ • ظࢹ SLOΛຬͨ͢Ұఆਫ४ͷج४Λ୲อ • தظઓུ ࣄۀܭըΛ્͢ΔϦεΫΛഉআ ࣄۀܭըΛଅਐͤ͞Δཧ૾ͷ࣮ݱ
!67
Ͳ͜·ͰλοϓϧͷΛ ࢧ͑ΒΕΔ͔ʁ !68
ࢧ͑ΔͷͰͳ͘ Ή͠ΖΛଅਐͤ͞Δ !69
࠷ޙʹ !70
ཧͱݱ࣮ͷΪϟοϓ • SREͷਓࡐෆ AWSҠઃ(2018) ւ֎ਐग़(2019) • λοϓϧSRE20182݄࣌Ͱ2ਓ Πϯϑϥ։ൃΤϯδχΞͷڠྗແ͠ʹճ Βͳ͍ !71
SREืू • λοϓϧͷϚʔέοτγΣΞΛࠃ1Ґ ʹಋ͘SREΤϯδχΞΛืू !72
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ !73