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
全世界で成長し続けるサービスのインフラと開発の裏側 / MIXI TECH CONFERE...
Search
Isao Shimizu
March 03, 2023
Technology
1
1.9k
全世界で成長し続けるサービスのインフラと開発の裏側 / MIXI TECH CONFERENCE 2023
MIXI TECH CONFERENCE 2023
2023年3月3日(金)
#mixitechcon
Isao Shimizu
March 03, 2023
Tweet
Share
More Decks by Isao Shimizu
See All by Isao Shimizu
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
230
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
960
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
5
510
約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
9k
今年1年のEKS運用振り返り/3-shake SRE Tech Talk
isaoshimizu
2
380
ポストモーテムの基礎知識と最新事例 / Fundamentals of Postmortem
isaoshimizu
11
3.1k
全世界1,800万人が利用する「家族アルバム みてね」におけるNew Relic活用法 / FutureStack Tokyo 2023
isaoshimizu
1
580
Other Decks in Technology
See All in Technology
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
210
OpenTelemetryセマンティック規約の恩恵とMackerel APMにおける活用例 / SRE NEXT 2025
mackerelio
2
1.3k
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
3
150
Operating Operator
shhnjk
1
640
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
120
Lufthansa ®️ USA Contact Numbers: Complete 2025 Support Guide
lufthanahelpsupport
0
230
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
1
240
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
290
CDK Vibe Coding Fes
tomoki10
1
460
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
530
Getting to Know Your Legacy (System) with AI-Driven Software Archeology (WeAreDevelopers World Congress 2025)
feststelltaste
1
180
SREのためのeBPF活用ステップアップガイド
egmc
1
790
Featured
See All Featured
Making Projects Easy
brettharned
116
6.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Raft: Consensus for Rubyists
vanstee
140
7k
YesSQL, Process and Tooling at Scale
rocio
173
14k
How to Ace a Technical Interview
jacobian
278
23k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Statistics for Hackers
jakevdp
799
220k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
BBQ
matthewcrist
89
9.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Transcript
©MIXI .*9*5&$)$0/'&3&/$& શੈքͰ͠ଓ͚ΔαʔϏεͷΠϯϑϥͱ։ൃͷཪଆ 7BOUBHFελδΦ ΈͯͶࣄۀ෦ 43&άϧʔϓ ਗ਼ਫ ܄
©MIXI "CPVU.F ਗ਼ਫ ܄ !JTBPTIJNJ[V • ʙ גࣜձࣾϛΫγΟʢݱ.*9*ʣ • ʙ
4/4ʮNJYJʯӡ༻ΤϯδχΞ • ʙ ϞϯελʔετϥΠΫ 43& • ʙ ՈΞϧόϜ ΈͯͶ 43& • ʙ 43&άϧʔϓ Ϛωʔδϟʔ िࣾձਓਧָஂͰͷ׆ಈʢָஂɺτϩϯϘʔϯɺͨ·ʹࢦشऀʣɻ ΩϟϯϓͱΫϥϑτϏʔϧ͕͖ɻ 2
©MIXI ՈΞϧόϜ ΈͯͶ 3
©MIXI ՈΞϧόϜ ΈͯͶ 4 ύύɾϚϚ͕ࡱͬͨࢠͲͷࣸਅಈըΛɺ ੰͳͲটͨ͠Ո͚ͩʹ؆୯ʹڞ༗Ͱ͖Δࣸਅɾ ಈըڞ༗ΞϓϦ ϑΥτϒοΫ ࣸਅϓϦϯτ ͷྫ
©MIXI ՈΞϧόϜ ΈͯͶ 5 ΈͯͶΈ·Γ(14 ΈͯͶग़ுࡱӨ ΈͯͶլঢ় ΈͯͶίʔϧυΫλʔ
©MIXI ՈΞϧόϜ ΈͯͶ • ݄ϦϦʔε • ݱࡏݴޠɾͷࠃͱҬͰα ʔϏεΛఏڙ • ւ֎Ͱʮ'BNJMZ"MCVNʯͱ͍͏
໊শͰల։த • ݄ʹར༻ऀ͕ ສਓ˞ Λಥഁ • ຊࠃͰϚϚύύͷͱͳ Δˋͷํ˞ ͕͝ར༻ 6 ˞J04ɾ"OESPJEä ΞϓϦొऀɺϒϥβ൛ొऀͷ߹ܭ ˞ʮΈͯͶʯొ࣌ʹೖྗ͞Ε͓ͨࢠ͞·ͷੜͱްੜ࿑ಇলൃදʮਓޱಈଶ౷ܭʯ͔Βࢉग़ɻ݄࣌Ͱˋ
©MIXI γεςϜߏ 7
©MIXI ΈͯͶΛࢧ͑ΔΫϥυ 8 AWS EKS / EC2 / S3 /
Aurora ElastiCache / SQS / SNS など Google Cloud BigQuery など େ͕"84Ͱߏ͞Ε͍ͯΔ
©MIXI "84ͷߏʢུ֓ਤʣ 9 Amazon EKS Amazon EC2 Amazon S3 Amazon
Aurora Amazon ElastiCache Amazon CloudFront Application Load Balancer Amazon DynamoDB
©MIXI γεςϜߏ • "84ΞΧϯτڥ͝ͱʹશʹׂ • "84ͷϦιʔε5FSSBGPSNʹΑͬͯཧ • "-#ɺ4ͷલ໘ʹ$MPVE'SPOUΛஔ͖ɺωοτϫʔΫܦ࿏ͷ࠷దԽͱΩϟογϡར༻ • &,4ΫϥελʔʹҰΞοϓσʔτ͢Δӡ༻ʢ৽چΫϥελʔೖΕସ͑ʣ
• ,VCFSOFUFTͷϦιʔε"SHP$%ͱ)FMN$IBSUʹΑͬͯཧ • &$ׂҎ্͕εϙοτΠϯελϯεʢΦϯσϚϯυ͘͝Θ͔ͣʣ • &$্Ͱ3BJMT"QQMJDBUJPOɺ4JEFLJR8PSLFS͕ಈ࡞ • "84-PBE#BMBODFS$POUSPMMFSͱ5BSHFU(SPVQ#JOEJOHʹΑͬͯ"-#͔Β1PE·Ͱ ͷϧʔςΟϯάΛίϯτϩʔϧ • "VSPSB(MPCBM%BUBCBTFΛར༻ʢৄࡉޙड़ʣ 10
©MIXI ϚϧνϦʔδϣϯߏ 11
©MIXI ϚϧνϦʔδϣϯߏ 12 "84 BQOPSUIFBTU "84 VTFBTU Ϣʔβʔ͔Β͍ۙϦʔδϣϯʹΞΫηε͢Δ͜ͱͰ ϨεϙϯελΠϜΛ͘͢Δ͜ͱ͕Ͱ͖Δ
©MIXI ϚϧνϦʔδϣϯߏʢσʔλϕʔεʣ 13 ap-northeast-1 us-east-1 Amazon EKS Amazon EC2 Amazon
S3 Amazon Aurora Global Database Amazon Aurora Global Database Amazon EKS Amazon EC2 ϨΠςϯγʢฏۉ NTʣͰಉظ͞ΕΔ ಡΈऔΓΞΫηεͷΈରԠ ॻ͖ࠐΈɾಡΈऔΓΞΫηεରԠ
©MIXI ϚϧνϦʔδϣϯߏʹ͓͚Δҙ • ΈͯͶͰϢʔβʔମݧͷ্Λతͱͨ͠ϚϧνϦʔδϣϯ ◦ ͍ΘΏΔ#$1ରࡦͰͳ͍ • ֤ϦʔδϣϯͰಉ༷ͷࢹΛ͓͜ͳ͏ඞཁ͕͋Δ ◦ *B$ʹΑͬͯखؒ͋·Γ͔͔Βͳ͍
• Ϧʔδϣϯ";ʹΑͬͯఏڙ͞Εͳ͍αʔϏεɺΠϯελϯελ Πϓ͕͋Δ • &$ͷΩϟύγςΟঢ়گϦʔδϣϯɺ";ʹΑͬͯେ͖͘มΘΔ • ϦʔδϣϯؒͰωοτϫʔΫো͕͋Δͱσʔλϕʔεͷಉظʹ େ͖ͳԆ͕ى͖Δ 14
©MIXI αʔόʔΞϓϦέʔγϣϯͷ ։ൃڥ 15
©MIXI αʔόʔΞϓϦέʔγϣϯͷ։ൃڥ 16 Πϯλʔωοτ ։ൃऀ͝ͱʹ༻ҙ ͞Εͨڥ 開発者 44) ͱͯγϯϓϧʹॻ͘ͱ͜Μͳײ͡ ͜͜Ͱ։ൃ
©MIXI αʔόʔΞϓϦέʔγϣϯͷ։ൃڥ 17 Πϯλʔωοτ ,VCFSOFUFT "͞Μͷ ։ൃڥ1PE #͞Μͷ ։ൃڥ1PE $͞Μͷ
։ൃڥ1PE &͞Μͷ ։ൃڥ1PE %͞Μͷ ։ൃڥ1PE Aさん Bさん Cさん Dさん Eさん 開発チーム
©MIXI ։ൃڥͷ࡞Γํ 18 εςοϓ̍ εςοϓ εςοϓ :".-ϑΝΠϧΛ (JU)VCʹϓογϡ ˞:".-ͷத44) ͷެ։伴
"SHP$%Ͱ4ZODૢ࡞Λ ͯ͠։ൃڥ͕ىಈ ˞ेඵޙʹڥ͕࡞ ͞ΕΔ 44)͢Δ ։ൃऀࣗͰ࡞ɾআΛࣗ༝ʹߦ͏͜ͱ͕Մೳ
©MIXI खݩͷ.BD1$ ։ൃڥͷϩάΠϯपΓͷηΩϡϦςΟ 19 ,VCFSOFUFTΫϥελ ։ൃڥ 1PE ίϯςφ sshd kubectl
exec netcat 22番ポート Πϯλʔωοτ ίϯςφ ConfigMap SSH公開鍵 ίϯςφ ίϯςφ ProxyCommand .ssh/config ssh 44)ͷϙʔτΛΠϯλʔωοτʹެ։͢Δඞཁͳ͍ ։ൃऀ ίϯςφ "84ೝূ
©MIXI ։ൃڥ͕৽͍͠ߏʹͳͬͯ • Ҏલݸਓ͝ͱͷ&$ʹ44)ͯ͠%PDLFSΛར༻͍ͯͨ͠ ◦ 44)ͷ伴ཧɺ5FSSBGPSNͷద༻ͱߏஙͷεςοϓ͕ଟ͔ͬͨ ▪ :".-ͷՃɺ"SHP$%ͷཧը໘͔Βͷద༻ͱ؆୯ʹ ◦ खॱ͕Θ͔ΓͮΒ͘43&ϝϯόʔͷαϙʔτ͕ඞཁʹͳͬͨΓ
▪ ୭Ͱ؆୯ʹߏஙɾআͰ͖ΔΑ͏ʹ ◦ ൪ϙʔτͷΠϯλʔωοτެ։ʢެ։伴ೝূͱ͍͑ةͳ͍ʣ ▪ ϙʔτެ։ͳ͠Ͱɺ"84ͷೝূʢ440ʣͱެ։伴ೝূͷΈ߹Θͤʹ ▪ 74$PEF3FNPUF%FWFMPQNFOUʹରԠ ◦ ϩά͕ཷ·Γ͗ͨ͢Γɺݕࡧͮ͠Β͔ͬͨΓ ▪ (SBGBOB-PLJͰݕࡧ͘͢͠ 20
©MIXI ΦϒβʔόϏϦςΟͷ 21
©MIXI ΦϒβʔόϏϦςΟͳͥඞཁʁ • γεςϜͰԿ͕ى͖͍ͯΔͷ͔ΛѲ͢ΔͨΊ • ,VCFSOFUFTͳͲίϯςφͷΦʔέετϨʔγϣϯ͕ར༻͞ΕΔ ͜ͱ͕૿͑ͨ݁ՌɺγεςϜ෦͕ෳࡶʹͳΓɺ֤ίϯϙʔωϯ τΛ؍ଌՄೳͳঢ়ଶʹ͢Δඞཁ͕͋Δ • ϝτϦΫεɺϩάɺτϨʔεͳͲͷใଟ͋͘ΓɺͷݪҼ
Λௐࠪ͢ΔͨΊʹͦΕΒΛత֬ʹूܭ͠ɺՄࢹԽ͢ΔΈ͕ ٻΊΒΕΔ 22
©MIXI ΦϒβʔόϏϦςΟͷ࣮ݱ 23 ϞόΠϧΞϓϦ New Relic Mobile Firebase Crashlytics αʔόʔΞϓϦ
New Relic APM New Relic Browser ֤छϩά Grafana Loki Amazon Athena Google BigQuery ֤छϝτϦΫε Prometheus / Amazon Managed Service for Prometheus Amazon CloudWatch Grafana
©MIXI ΦϒβʔόϏϦςΟͷશମ૾ 24 Kubernetes Prometheus New Relic Rails newrelic_rpm Grafana
Node Exporter Amazon CloudWatch Amazon Managed Service for Prometheus Grafana Loki Promtail Ϣʔβʔͷ New Relic Mobile ϞχλϦϯάڥ Fluent Bit Amazon Kinesis Firehose Amazon S3 Amazon Athena GCS BigQuery ETLॲཧ σʔλͷྲྀΕ
©MIXI 43&Λ࣮ફ͢Δ্Ͱ ΦϒβʔόϏϦςΟͱͯେࣄ 25
©MIXI ·ͱΊ 26
©MIXI ·ͱΊ • શੈքͰ ສਓҎ্ͷϢʔβʔʹར༻͞ΕΔαʔϏεͷγε ςϜߏ͕ࢀߟʹͳΕ͍Ͱ͢ɻ • "VSPSB(MPCBM%BUBCBTFͷ͓͔͛ͰϚϧνϦʔδϣϯߏΛ࡞ Δ͜ͱ͕Ͱ͖ɺੈքதͷϢʔβʔମݧΛվળͰ͖·ͨ͠ɻ •
,VCFSOFUFTΫϥελ্ͷ։ൃڥηΩϡΞͰѻ͍͍͢ڥ ʹͳΓ·ͨ͠ɻ • ΦϒβʔόϏϦςΟࠓ·ͰࢼߦࡨޡΛ܁Γฦ͠ɺ43&͚ͩͰͳ ͘։ൃऀશମͰར༻Ͱ͖ΔڥΛ࡞Δ͜ͱ͕Ͱ͖·ͨ͠ɻ 27
©MIXI 8&"3&)*3*/( 28 ΈͯͶ ࠾༻ ݕࡧ ͞·͟·ͳϙδγϣϯͰืूதͰ͢ʂ