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
成長し続けるインフラの安定運用事情
Search
Ryosuke Suto
April 23, 2015
Technology
19
5.2k
成長し続けるインフラの 安定運用事情
Ryosuke Suto
April 23, 2015
Tweet
Share
More Decks by Ryosuke Suto
See All by Ryosuke Suto
横断的なSRE推進と成熟度評価
strsk8
9
8.1k
GKEを利用したサービスの運用
strsk8
1
640
パブリック/プライベートクラウドでつかうKubernetes
strsk8
1
2.4k
GKE@AbemaTV
strsk8
12
9.4k
re:Invent2015参加レポ
strsk8
0
300
ソーシャルゲームDBの危機回避
strsk8
10
14k
Other Decks in Technology
See All in Technology
ライブサービスゲームQAのパフォーマンス検証による品質改善の取り組み
gree_tech
PRO
0
340
人と組織に偏重したEMへのアンチテーゼ──なぜ、EMに設計力が必要なのか/An antithesis to the overemphasis of people and organizations in EM
dskst
7
790
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
330
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
200
制約理論(ToC)入門
recruitengineers
PRO
8
3.5k
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
370
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
340
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
380
コスト削減の基本の「キ」~ コスト消費3大リソースへの対策 ~
smt7174
2
290
Lessons from CVE-2025-22869: Memory Debugging and OSS Vulnerability Reporting
vvatanabe
2
110
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
2
480
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
210
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
Building an army of robots
kneath
306
46k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
185
54k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
3ZPTVLF4VUP ͠ଓ͚ΔΠϯϑϥͷ ҆ఆӡ༻ࣄ
ࣗݾհ ɾਢ౻ྋհʢ͢ͱ͏Γΐ͏͚͢ʣ!TUSTL ɾגࣜձࣾαΠόʔΤʔδΣϯτ ɾ"NFCBιʔγϟϧήʔϜઐͷΠϯϑϥ ΤϯδχΞ ɾਓͰαʔϏεΛ୲
ΞδΣϯμ ɾϘʔΠϑϨϯυʢԾʣͷΠϯϑϥߏ ɾιʔγϟϧήʔϜͷΠϯϑϥʹٻΊΒΕ Δཁ݅ ɾཁ݅ΛΫϦΞ͠ɺ҆ఆӡ༻͢ΔͨΊʹߦ ͍ͬͯΔ͜ͱ
ϘʔΠϑϨϯυʢԾʣ*4Կ
None
ϘʔΠϑϨϯυʢԾʣͱʁ ɾΠέϝϯͷ͕ฉ͚ΔֶԂ࿀ѪήʔϜ ɾձһສਓಥഁʂ ɾ߽՚༏͕ਓҎ্ࢀՃʂ ɾ͍ΖΜͳΠέϝϯʢΧʔυʣͱग़ձͬͯ ɾ͖ͳΧϨΛࣗຫͨ͠Γ ɾѪΛҭΜͩΓ͢ΔήʔϜͰ͢
ϘʔΠϑϨϯυʢԾʣͷ Πϯϑϥߏ
Web Application Server Cache Server Voice Server Game Database Game
Event Database オンプレミス Internet プライベートクラウド 音声データ を保存 mysql-master-ha(MHA) で冗長化 スタンバイ状態の2台 が参照用スレーブ
ϘʔΠϑϨϯυʢԾʣߏ ɾ ɾϓϥΠϕʔτΫϥυͱΦϯϓϨϛεͷϋΠϒ Ϧου ɾ͕8FCΞϓϦέʔγϣϯαʔό ɾσʔλϕʔε.)"GPS.Z42-ͰԽ ɾࢀরΫΤϦ-#Λܦ༝͠εϨʔϒʹ ɾ1$*FܕϑϥογϡετϨʔδΛࡌ ɾΞΫηεͷଟ͍Πϕϯτ༻ςʔϒϧΛׂ
ͳͥϓϥΠϕʔτΫϥυʁ ɾԾԽʹΑͬͯߴੑೳαʔόͷϦιʔε ΛޮΑ͘ར༻Ͱ͖Δ ɾີ͕ߴ͘ͳΔͨΊσʔληϯλʔޮ ྑ͘ར༻Ͱ͖Δʢిݯҙʣ ɾίετϝϦοτ͕͋Δ ɾ͍͍ͨͱ͖ʹ͙͑͢Δ
ͳͥΦϯϓϨϛεʁ ɾ*0͕ϘτϧωοΫʹͳΓ͕ͪͳ෦Ծ ԽͷΦʔόʔϔου͕େ͖͘ύϑΥʔ Ϛϯε͕ྼΔ ɾ1$*FܕϑϥογϡετϨʔδͳͲɺϋʔ υΣΞʹཔ͖ͬͯͨ෦ΛΧόʔͰ͖ͳ ͍
ϋΠϒϦου͚ͩ͡Όͳ͍ ɾֶԂ࿀ѪήʔϜͯ͢ΦϯϓϨϛεͰ ऑ ɾԾۭؒϓϦϯηεότϧήʔϜ͢ ͯ"84ͰΦʔόʔ ɾͯ͢ϓϥΠϕʔτΫϥυͷαʔϏε ͋Γ ɾલޙʁͷΠϯϑϥΛӡ༻
ڊେͳΠϯϑϥʂ
ιʔγϟϧήʔϜʹ ٻΊΒΕΔγεςϜཁ݅
ιʔγϟϧήʔϜͷಛ ɾʑΠϕϯτΛӡ༻͍ͯ͠ΔͨΊෛՙͷ ঢ়ଶʑมԽ͢Δ ɾαʔϏεఀࢭ͕࣌ؒͦͷ··ػձଛࣦʹ ͭͳ͕Δ ɾߦΓഇΓ͕ܹ͍͠ʢݫ͍͠ੈքʣ ɾωΠςΟϒԽɺϦονԽʹΑͬͯϦΞϧ λΠϜੑॏཁʹͳ͖͍ͬͯͯΔ
ٻΊΒΕΔཁ݅ ɾΩϟύͷѲɺεέʔϥϏϦςΟલఏ ɾʑͷมԽʹର͠ૉૣ͘εέʔϧͰ͖Δ ɾಥൃతͳোʹର͠ૉૣ͘ղܾͰ͖Δ ɾૉૣ্ཱͪ͛͘ૉૣ͘Ή͜ͱ͕Ͱ͖Δ ɾϨεϙϯεৗʹૉૣ͘
ٻΊΒΕ͍ͯΔͷ͞
ڊେͰಈతͳΠϯϑϥʂ
ཁ݅ΛΫϦΞ͢ΔͨΊʹ ɾΒͳͯ͘ྑ͍෦ΛΒͳ͍ ɾखΛಈ͔͞ͳͯ͘ྑ͍ͱ͜ΖΛࣗಈԽ͢Δ ɾ࡞ۀࣗମΛޮԽ͢Δ ɾ࡞ۀͷ࠶ݱੑΛߴ͘͢Δ
ཁ݅ΛΫϦΞ͢Δ ʹ҆ఆӡ༻ʹͭͳ͕Δ
҆ఆӡ༻͢ΔͨΊʹ ͖ͯͨ͜͠ͱ
αʔόߏங࣌
αʔόߏங࣌ʹى͖ͨ ɾߏங࡞ۀʹ͕͔͔࣌ؒΔ ɾ৽نͰߏஙͨ͠ϚγϯͱطʹαʔϏεΠ ϯ͍ͯ͠ΔϚγϯͰઃఆ͕ҧ͏ ɾ৽نߏங͕લऀͩͬͨͨΊखॱ͕Θ͔ Βͳ͍ʢ୳ͯ͠ݟ͔ͭΒͳ͍ʣ
ࣄҊᶃ ʮࠓ$.ଧͭ͜ͱʹͳͬͨͷͰαʔό૿ڧ ͓ئ͍͠·͢ʂʯ ʮྃղͰ͢ʂͪͳΈʹ͍͔ͭΒͰ͔͢Ͷʁʯ ʮि໌͚͔Βͷ༧ఆͰ͢ʔʯ ʮΘɺΘ͔Γ·ͨ͠ʢ͑ʯ
None
ϓϩϏδϣχϯάπʔϧͷಋೖ ɾ*OGSBTUSVDUVSFBT$PEF ɾ$IFG "OTJCMFΛར༻ ɾαʔόͷঢ়ଶΛίʔυԽͯ͠(JUIVCͰཧ ɾίϚϯυҰൃͰԿճͷ࣮ߦͰಉ͡ঢ় ଶʹऩଋ͢Δͱ͍͏؍ʢႈੑʣ ɾίʔυԽ͞Ε͍ͯΔͷͰ୭͕࣮ߦͯ͠ಉ ͡
$IFG ɾαʔόͷঢ়ଶΛهड़ ɾIUUQEͷΠϯετʔϧɺࣗಈىಈઃఆɺىಈ
"OTJCMF ɾಉ͡ॲཧΛ"OTJCMFͰॻ͍ͨ߹ ɾIUUQEͷΠϯετʔϧɺࣗಈىಈઃఆɺىಈ
ಋೖཧ༝ ɾ$IFGࣝऀ͕͍ͨͨΊN @@ N ɾ$IFGશαʔϏεڞ௨Ͱ͑ΔΑ͏ʹ ཧ͞Ε͍ͯͯศརͳɺෳࡶͳͷͰܰ ʹ͑Δπʔϧ͕ཉ͔ͬͨ͠ ɾ"OTJCMFΫϥΠΞϯτʹΠϯετʔϧ͕ ඞཁͳ͘ɺֶशίετDIFG΄ͲͰͳ
͔ͬͨͨΊ
ಋೖͯ͠Έͨ݁Ռ ɾQSPT ɾߏங͕ѹతʹָʹͳͬͨ ɾઃఆ͕ҧ͏ͱ͍ͬͨࣄҊ͕ݮͬͨ ɾίʔυΛڞ༗ֶͯ͠ΔจԽ͕ੜ·Εͨ ɾDPOT ɾϓϩϏδϣχϯάπʔϧࣗମͷ༷ʹϋ ϚΔ͜ͱ͕͋Δɾɾɾ
αʔόߏஙҎ֎Ͱ ɾ5FSSBGPSN 1BDLFS 3PBEXPSLFS ɾओʹ"84Ͱͷར༻ ɾ"84ͷωοτϫʔΫॳظߏஙΛίʔυԽ ɾશͯͷαʔόͰڞ௨ͷॳظઃఆΛߦͬͨ ".*Λ࡞ ɾ%/4ϨίʔυΛίʔυԽͯ͠ཧ
ɾৄ͘͠8FCͰ
ࢹઃఆ࣌
ࢹઃఆ࣌ʹى͖ͨ ɾ૿ઃͨ͠αʔό܊ͷઃఆΛՃ͚ͨ͠Ͳ* 1͕Χϒͬͯ࿙Ε͕ൃੜ͍ͯͨ͠ ɾ૿ઃͨ͠ϚγϯΛࢹʹՃͨ͠ͷʹ ࢹ͖߲͕͢ࢹ͞Ε͍ͯͳ͔ͬͨ
ࣄҊᶄ ʮࢹઃఆ͓ئ͍͠·͢ʔʯ ʮྃղͰ͢ʂʯ ʙ࣌ྲྀΕʙ ʮ͋Εɺ͜ͳ͍ͩೖΕͨϚγϯ͚ͩϦιʔ εݟΕͳ͍Ͱ͢Ͷʯ ʮ͔ɺ֬ೝ͠·͢ʢ͑ʯ
None
ࢹઃఆʙ։࢝ΛࣗಈԽ ɾࢹαʔόͰͷखಈઃఆΛΊΔ ɾࢹରͷηοτΞοϓྃ࣌ʹࢹΛ ։࢝͢Δ ɾ;BCCJY 4FOTV .BDLFSFMΛར༻ ɾϓϩϏδϣχϯάπʔϧͰߏஙͨ࣌͠ ͰࢹରʹͳΔ
;BCCJY
;BCCJY ɾ;BCCJYΤʔδΣϯτΛࢹରʹΠϯε τʔϧͯ͠ϗετͱͯ͠ొ͢Δͱ;BCCJ Yαʔόʔ͕ϗετͱ௨৴͠ࢹΛߦ͏ ɾࢹͷߏ͕׳Εͳ͍ͱΘ͔Γʹ͍͘ ɾϝτϦΫεऔಘࢮ׆ࢹ͍͍ͩͨͳ ΜͰͰ͖Δ ɾ6*͕Θ͔ΓͮΒ͍
;BCCJYͰࣗಈԽ ɾ;BCCJY"1*Λར༻ͯ͠ϗετΛՃ ɾϓϩϏδϣχϯάπʔϧͱ࿈ܞ͠ɺ࣮ߦ ࣌ʹࣗΛϗετՃ͢ΔͨΊͷϦΫΤ ετΛૹ৴ ɾ֤ϛυϧΣΞͷࢹ߲ʢςϯϓϨ ʔτʣϛυϧΣΞͷϨγϐʹඥͮ͘ IUUQXXX[BCCJYDPNKQJNH[BCDPOGQSFTFOUBUJPOT DZCFSBHFOUQEG
4FOTV
4FOTV ɾ4FOTV$MJFOUΛࢹରʹΠϯετʔϧ ͯ͠ઃఆΛ͢Δͱࣗಈతʹ4FOTF4FSWFS ʹೝࣝ͞ΕΔ ɾ4FOTV4FSWFSͱ4FOTV$MJFOUͷ௨৴ 3BCCJU.2Λհͯ͠ߦΘΕΔ ɾ8FC6*ͷπʔϧෳ͋ͬͯΈ͕͔Ε Δ
4FOTVͰࣗಈԽ ɾ4FOTF$MJFOUͷઃఆʹར༻͢Δ3BCCJU.2 ͷ*1Λࢦఆͯ͠ىಈ͢Δ ɾϓϩϏδϣχϯάπʔϧͱ࿈ܞͯ͠ɺ࣮ ߦ࣌ʹىಈ IUUQTIJSPBLJTDPNCMPH&# "&"&#&#&&" &TFOTV&"# &#&#&&'
.BDLFSFM
.BDLFSFMͷ߹ ɾࢹܕ4BB4 ɾ༗ྉ ɾࢹରΛ3PMFͰཧ͠ɺࢹΛߦ͏ ɾϝτϦΫε3PMF͝ͱʹݟΔ͜ͱ͕Ͱ͖Δ ɾ4BB4ͳͷͰࢹαʔόΛཱͯΔඞཁ͕ͳ͍
.BDLFSFMͰࣗಈԽ ɾొͨ͠ΞΧϯτͰऔಘͨ͠τʔΫϯ ΛΫϥΠΞϯτͷઃఆʹࢦఆͯ͠ىಈ ɾϓϩϏδϣχϯάπʔϧͱ࿈ܞͯ͠ɺ࣮ ߦ࣌ʹىಈ
ಋೖཧ༝ ɾ;BCCJY 4FOTVࣝऀ͕͍ͨͨΊN @@ N ɾ.BDLFSFMࢹαʔόͷӡ༻ίετΛল ྗԽ͔ͨͬͨ͠ͷͰݕূಋೖதɻϝτϦ Ϋεݟ͍͢ɻ
ಋೖͯ͠Έͨ݁Ռ ɾࢹ࿙Ε͕ͳ͘ͳͬͨ ɾઃఆ࿙Εͳ͘ͳͬͨ ɾ͍͍͜ͱ͔͠ͳ͍
Ξϥʔτൃੜ࣌
Ξϥʔτൃੜ࣌ʹى͖ͨ ɾΞϥʔτ͕໐͚ͬͨͲɺαʔϏεʹӨڹ ͋Δͷ͔Ͳ͏͔Θ͔Βͳ͍ ɾαʔϏεӨڹͷͳ͍Ξϥʔτ͕ଟ͗ͯ͢ Α͘Θ͔Βͳ͍
ࣄҊᶅ ʮͳΜ͔Ξϥʔτདྷ·ͨ͠Ͷʯ ʮήʔϜී௨ʹϓϨΠͰ͖ͯ·͢ʯ ʮॏ͍ͱ͔ಛʹͳ͍͔ͳʔʯ ʮͱɺಛʹͳͦ͞͏Ͱ͢Ͷʜʢ͑ʯ
Ξϥʔτͷਫ਼ࠪ ɾͻͱͭͻͱͭཧ͢Δ ɾ͖͍͠ม͑ͨ΄͏͕ྑ͍ͷม͑Δ ɾग़͞ͳͯ͘ͳͦ͞͏ͳΒग़͞ͳ͍ ɾΞϥʔτͷϨϕϧΛదʹௐ͢Δ ɾඞཁͳࢹ߲Λਫ਼ࠪ͢Δ ɾಓͳ׆ಈ͕҆ఆԽʹͭͳ͕Δ
ଐਓੑ
ଐਓੑ ɾݟΔγεςϜ͕ଟ͍ͨΊશһ͕શγε ςϜɺϦεΫΛѲ͢Δͷ͕ࠔ ɾਓͱࣄΛ͍ͯ͠ΔҎ্ɺภΓΛࣦ͘͢ ͜ͱݫ͍͠ ɾͱ͍͑Ͱ͖Δ͜ͱ͋Δ
ࣄҊᶆ ʮ͓͔ͭΕ͞·Ͱ͢ʔʯ ʮ͓͔ͭΕ͞·Ͱ͢ʔʯ ʮઌͷ%#ෛՙͷ݅ͯԿ͔Θ͔Γ·ͨ͠ʁʯ ʮʜ͋ʔ͍͍ɺ͋ͷ݅Ͱ͢Ͷʔʢʣʯ
ଐਓੑΛݮΒͨ͢Ίʹ ɾ࡞ۀͷίʔυԽɺࣗಈԽ ɾ5SFMMPΛͬͨλεΫڞ༗ͷΈ ɾேձͰͷΞϥʔτνΣοΫɺϦεΫڞ༗ ɾ͙͢νϟοτɺ͙͢͢ ɾ$POqVFODFʢࣾ8JLJʣʹͱʹ͔͘ॻ͘ ɾॏཁͳλεΫϓϩδΣΫτʹͯ͠શһ ͰΔ
ͬͯΈͨ݁Ռ ɾ୭͔͕खΛͤͳ͍ͱ͖ʹଞͷਓ͕ରԠ Ͱ͖ΔʢͰ͖ͯͳ͍ͱ͜Ζ͋Δʣ ɾ୭͔͕ٸʹٳΜͰͦ͜·ͰࠔΒͳ͍ ɾϝϯόʔશһ͕શମͷλεΫͱॏཁΛ ѲͰ͖ΔΑ͏ʹͳ͖͍ͬͯͯΔ ɾ͔͠͠·ͩ·ͩͰ͖ͯͳ͍͜ͱଟ͍
ݱࡏͱ͜Ε͔Βͷ՝
ݱࡏ ɾ҆ఆӡ༻Ͱ͖͖͍ͯͯΔ ɾΠϯϑϥ͕ىҼ͢ΔαʔϏεఀࢭ΄΅ ͳ͘ͳͬͨʢͨ·ʹʜʣ ɾதʹى͜͞ΕΔ͜ͱ΄΅ͳ͍ 㵺Т㵺 ţźō
͜Ε͔Βͷ՝ ɾෛՙϨΠςϯγͱͷઓ͍ଓ͍͍ͯΔ ɾ"84ͷίετҙࣝΛڧ͍ͨ͘͠ ɾΦʔτεέʔϦϯά͕Ͱ͖͍ͯͳ͍ ɾ·ͩ·ͩεϐʔυ͕Γͳ͍ ɾεΩϧɺφϨοδͷภΓ·ͩ·ͩվળத
·ͱΊ ɾ։ൃεϐʔυΛ্͛Ε҆ఆӡ༻ʹͭͳ͕Δ͠ ɺ҆ఆӡ༻͠Α͏ͱࢥͬͨΒ։ൃεϐʔυ্͕ ͕Δͱݴ͑Δ ɾن͕େ͖͘ͳͬͨͱ͖ʹΓํΛม͑ΔͷͰ ͳ͘ɺن͕େ͖͘ͳͬͨͱ͖ʹεέʔϧͰ ͖ΔΓํΛৗʹߟ͍͑ͨ ɾҙࣝΛ࣋ͬͯɺಓʹͰ͖Δ͜ͱΛ૿͠ ͍ͯ͘
͋Γ͕ͱ͏͍͟͝·ͨ͠