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.7k
全世界で成長し続けるサービスのインフラと開発の裏側 / 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
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
850
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
4
330
約10年間MIXIのインフラを 支えてきたPagerDutyの活用事例 / PagerDuty on Tour 2024
isaoshimizu
6
1k
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
1.7k
家族アルバム みてねで直面してきた技術的負債 / MIXI KAG 2024
isaoshimizu
18
8.9k
今年1年のEKS運用振り返り/3-shake SRE Tech Talk
isaoshimizu
2
340
ポストモーテムの基礎知識と最新事例 / Fundamentals of Postmortem
isaoshimizu
11
2.8k
全世界1,800万人が利用する「家族アルバム みてね」におけるNew Relic活用法 / FutureStack Tokyo 2023
isaoshimizu
1
520
『家族アルバム みてね』で計測しているSLIの事例 / SLI as measured in FamilyAlbum
isaoshimizu
3
740
Other Decks in Technology
See All in Technology
パブリッククラウドのプロダクトマネジメントとアーキテクト
tagomoris
3
600
SIEMによるセキュリティログの可視化と分析を通じた信頼性向上プロセスと実践
coconala_engineer
1
2.6k
re:Invent Recap (January 2025)
scalefactory
0
340
ココナラのセキュリティ組織の体制・役割・今後目指す世界
coconala_engineer
0
210
脅威モデリングをやってみた
ledsue
0
100
Agentic AI時代のプロダクトマネジメントことはじめ〜仮説検証編〜
masakazu178
0
290
大学教員が押さえておくべき生成 AI の基礎と活用例〜より効率的な教育のために〜
soh9834
1
180
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
120k
もし今からGraphQLを採用するなら
kazukihayase
7
3.1k
サーバーレスで楽しよう!お気軽に始められる3つのポイント / Have fun with Serverless!
_kensh
2
140
さいきょうのアーキテクチャを生み出すセンスメイキング
jgeem
0
140
Enhancing SRE Using AI
yoshiiryo1
1
240
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Building an army of robots
kneath
302
45k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Faster Mobile Websites
deanohume
305
30k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
KATA
mclloyd
29
14k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
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 ΈͯͶ ࠾༻ ݕࡧ ͞·͟·ͳϙδγϣϯͰืूதͰ͢ʂ