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
Isao Shimizu
February 07, 2017
Technology
6
2.9k
大規模になったサービスでやるべき基本的なこと
2017年2月7日
【DMM GAMES主催!】「複雑・大規模webサービスを支える技術勉強会」
Isao Shimizu
February 07, 2017
Tweet
Share
More Decks by Isao Shimizu
See All by Isao Shimizu
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
240
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
990
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
5
1.6k
約10年間MIXIのインフラを 支えてきたPagerDutyの活用事例 / PagerDuty on Tour 2024
isaoshimizu
6
1.2k
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
2
1.8k
家族アルバム みてねで直面してきた技術的負債 / MIXI KAG 2024
isaoshimizu
18
9.1k
今年1年のEKS運用振り返り/3-shake SRE Tech Talk
isaoshimizu
2
390
ポストモーテムの基礎知識と最新事例 / Fundamentals of Postmortem
isaoshimizu
12
3.1k
全世界1,800万人が利用する「家族アルバム みてね」におけるNew Relic活用法 / FutureStack Tokyo 2023
isaoshimizu
1
590
Other Decks in Technology
See All in Technology
プロジェクトマネジメントは不確実性との対話だ
hisashiwatanabe
0
180
自治体職員がガバクラの AWS 閉域ネットワークを理解するのにやって良かった個人検証環境
takeda_h
2
360
生成AIによるソフトウェア開発の収束地点 - Hack Fes 2025
vaaaaanquish
35
16k
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
5
560
なごミュ@SPAJAM2025 第二回予選
1901drama
0
110
ウォンテッドリーのアラート設計と Datadog 移行での知見
donkomura
0
240
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
2
20k
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
410
datadog-distribution-of-opentelemetry-collector-intro
tetsuya28
0
190
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
AIと描く、未来のBacklog 〜プロジェクト管理の次の10年を想像し、創造するセッション〜
hrm_o25
0
110
九州の人に知ってもらいたいGISスポット / gis spot in kyushu 2025
sakaik
0
220
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Side Projects
sachag
455
43k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Docker and Python
trallard
45
3.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Designing for Performance
lara
610
69k
How GitHub (no longer) Works
holman
314
140k
Agile that works and the tools we love
rasmusluckow
329
21k
Gamification - CAS2011
davidbonilla
81
5.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Transcript
େنʹͳͬͨαʔϏεͰΔ͖جຊతͳ͜ͱ ήʔϜ։ൃ෦ SREάϧʔϓ ਗ਼ਫ ܄ @isaoshimizu 2017.2.7 ʲDMM GAMESओ࠵ʂʳʮෳࡶɾେنwebαʔϏεΛࢧ͑Δٕज़ษڧձʯ XFLAG
STUDIO
About me • ਗ਼ਫ ܄ @isaoshimizu • 2011.8-2014.3 SNS mixiͷӡ༻
• XFLAG ελδΦ • 2014.4-2016.6 αʔόʔΤϯδχΞ • 2016.7- SRE ओʹࠃ͚ϞϯελʔετϥΠΫΛࢧ͑Δ͓ࣄ • ଞʹϞϯετελδΞϜɺϒϥφΠDASHͳͲ • ͖ͳͷ • LinuxɺMySQLɺnginxɺMemcachedͳͲͷϛυϧΣΞɺGoɺΫϥϑτϏʔϧ 2
ۙͷൃදࢿྉ • 2016.3.1 ϞϯετΛࢧ͑ΔΠϯϑϥͷࠓͱ͜Ε͔Β https://speakerdeck.com/isaoshimizu/monsutowozhi-eruinhurafalsejin- tokorekara • 2017.1.30 SREάϧʔϓ͕Ͱ͖ͯ͜ͷ͖ؒͬͯͨ͜ͱ https://speakerdeck.com/isaoshimizu/sregurupugadekitekofalseban-nian-
jian-yatutekitakoto 3
αʔϏεͷن͕େ͖͘ͳΔͱ͍͏͜ͱ
αʔϏεͷن͕େ͖͘ͳΔͱ͍͏͜ͱ • ΞΫηε͕૿͑Δ • ෛՙͱͷઓ͍͕࢝·Δ • αʔό͕૿͑Δ • ؔΘΔਓ૿͑Δ 5
ෛՙΛՄࢹԽ͢Δ
ࢹɾϞχλϦϯά • ʮͳΜͱͳ͘ෛՙߴͦ͏ʯͱ͍͏ঢ়ଶͱͯةݥ • ศརͳπʔϧ͕૿͖͍͑ͯͯΔͷͰͪΌΜͱ׆༻͢Δ • Nagios, CloudForecast, Cacti, Ganglia,
Munin, Sensu, Zabbix, Kurado, Prometheus • Mackerel, Datadog, CloudWatch, NewRelic, PagerDuty, Pingdom • Fluentd+Elasticsearch+KibanaͰϩά͔ΒάϥϑΛੜ͢ΔͷޮՌత • άϥϑຖ֬ೝ͢ΔɻཧղͰ͖ͳ͍άϥϑੜɾදࣔͯ͠ҙຯ͕ͳ͍ɻ • ຖ݄ෛՙঢ়گΛαϚϥΠζ͓ͯ͘͠ͱৼΓฦΓࠓޙͷରࡦํ͕࡞Γ͍͢ • ݟ͑ͳ͍ͷɺଌΕͳ͍ͷϦεΫ • αʔϏε࿈ಈͷاըΠϕϯτૣΊʹڞ༗ͯ͠උ͑Δ 7
εέʔϧΞοϓ͔εέʔϧΞτ͖͔͢
εέʔϧΞοϓ or εέʔϧΞτ • εέʔϧΞοϓ • ੑೳΛ্͛ͯෛՙରࡦ • εέʔϧͰ͖Δ্ݶ͕ܾ·ͬͯ͠·͏ɻ͞ΒͳΔෛՙ૿ͷରԠݫ͍͠ɻ •
PCI-ExpressͳioMemoryNVMe SSDΛͬͯμϝͳ࣌μϝɻ • εέʔϧΞτ • LBԼͷΞϓϦέʔγϣϯαʔό૿͢͜ͱͰCPUϦιʔεΛෛՙࢄ • DBͷଓͱΞΫηε͕૿͑ΔͷͰཁҙ • DBʹ͓͍ͯɺεέʔϧΞτͰ͖Δͱɺதظతͳෛՙରࡦͱͯ͠༗ޮ • Ұ࣌తͳෛՙ૿ͷରࡦͰ͋ΕεέʔϧΞοϓޮՌత 9
τϥϑΟοΫͷ૿Ճ
τϥϑΟοΫͷ૿Ճ • Ϋϥυͷ߹ • ΠϯελϯελΠϓʹΑ্ͬͯݶ͕ҟͳΔʢϕϯνϚʔΫͱ͓ͬͯ͘ͱ҆৺ʣ • ࣗࣾDCΛͬͯΔ߹ • NICͱεΠονͷଳҬ্ݶʢαʔόʔ͕ͲͷϥοΫʹ͋Δ͔Λҙࣝʣ •
ճઢͷੑʢํܥ͕མͪͯڐ༰Ͱ͖ΔଳҬઃܭʣ • NICͷੑ • Bonding: ίωΫγϣϯ୯ҐͰࢄ͞ΕΔͷͰNICx2Ͱ2ഒͷଳҬͱݶΒͳ͍ • TCPͷ࠶ૹճͷࢹ֮Խ • ಛʹΫϥυͰϨΠςϯγଳҬͷมԽ͕͋ΔͷͰཁҙ 11
αʔόʔ/Πϯελϯεͷ૿Ճ
αʔόʔ/Πϯελϯεͷ૿Ճ • σϓϩΠɺϓϩϏδϣχϯάͷޮԽɺࣗಈԽ • Capistrano, AWS CodeDeploy, Stretcher + Consul
• Chef, Ansible, Puppet, Itamae • ϕʔεͱͳΔΠϝʔδʢAMIͳͲʣߏஙͷࣗಈԽ • Packerศར • ʹґଘ͠ͳ͍ΦϖϨʔγϣϯ͕ཧܥ 13
σʔλϕʔε ΫΤϦͷ૿Ճ
σʔλϕʔε ΫΤϦͷ૿Ճ • ϘτϧωοΫREAD͔WRITE͔ • σʔλϕʔεɺςʔϒϧͷ୯ҐͰαʔόΛׂ • γϟʔσΟϯάʢIDϋογϡͷ༨Ͱׂʣ • ΩϟογϡʢMemcached,
RedisͳͲʣͷ׆༻ • ετϨʔδͷIOݶքͷݟۃΊʢΧλϩάεϖοΫΛ৴༻ͤͣܭଌ ͢Δʣ • tmp table, file sortͳͲ͕ൃੜ͍ͯ͠ͳ͍͔ • Dirty PagewaitͷൃੜසΛάϥϑ͔ΒΔ • όοϑΝϓʔϧར༻ͷঢ়گ 15
σʔλϕʔε αΠζͷ૿Ճ
σʔλϕʔε αΠζͷ૿Ճ • ҰᷓΕͯ͠·͏ͱରॲ͕ࠔ • ςʔϒϧͷσʔλɺΠϯσοΫεαΠζ • όοϑΝʔϓʔϧͷΩϟύγςΟ • ϝϞϦΛ૿ͯ͠ϓʔϧαΠζΛ͛Δͱ͍͏ख
• όΠφϦϩάͷ૿Ճɻexpire_logs_daysͷௐʢMySQLͷ߹ʣɻ • AUTO INCREMENTͷ্ݶʹҙʢint21ԯɺbigint922ژʣ • intͩͱςʔϒϧʹΑͬͯ͋ͬͱ͍͏ؒʹୡͯ͠͠·͏ͷͰҙ • ᮢΛઃఆͯ͠ࢹ͓ͯ͘͠ͱ҆৺ 17
ਓһͷ૿Ճ
ਓһͷ૿Ճ • ΞΧϯτ • ΫϥυͷΞΧϯτɺLinuxϢʔβʔΞΧϯτɺGitHubͷΞΧϯτ • AWSͷ߹ɺCloudTrailΛͬͨࠪϩά • LDAPͳͲͰϩάΠϯϢʔβʔɺϗετͷ੍ݶʢηΩϡϦςΟͷ୲อʣ •
ϓϩδΣΫτ৽ͨʹδϣΠϯˍൈ͚ΔϝϯόʔͷରԠʢνΣοΫϦετͷςϯϓϨʔτʣ • Ξϥʔτ • ൪੍ɺΤεΧϨʔγϣϯํ๏ͳͲͷཱ֬ɺPagerDutyͷ׆༻ • ϊϋखॱͷڞ༗ • Wikiͷ׆༻ʢྫ: GitHub Wiki, Qiita Team, Crowiʣ • ߏஙোൃੜ࣌ͷखॱɺϧʔϧΛυΩϡϝϯτԽʢΠϯγσϯτൃੜ࣌ʹྫྷ੩ʹରॲͰ͖ΔΑ͏ʹʣ • 4 eyesͰͷ࡞ۀ֬ೝͯ͠ࣄނࢭʢྫ: DNSߋ৽ɺTerminateɺService StopͳͲʣ • ChatOpsͰ࡞ۀͰ͖Δ͜ͱΛ૿͢ 19
·ͱΊ
·ͱΊ • نʹ͔͔ΘΒͣجຊΛ͔ͬ͠Γͱ • ى͖͍ͯΔ͜ͱΛਖ਼͘͠Ѳ͢Δ͜ͱɺΠϝʔδͰ͖Δ͜ͱ • نʹൺྫͯ͠࡞ۀྔ͕૿͑ͳ͍Α͏ʹ͢Δ͜ͱ • ਓ͕૿͑ͨͱ͖ʹ࡞ۀෛՙ͕ࢄ͞ΕΔΑ͏ʹϊϋखॱΛల։͢Δ͜ͱ •
େن͡Όͳͯͬͨ͘΄͏͕͍͍͜ͱଟ͍ • ؒืूத https://xflag.com/recruit/ 21
Thank you!