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.6k
全世界で成長し続けるサービスのインフラと開発の裏側 / 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
640
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
4
240
約10年間MIXIのインフラを 支えてきたPagerDutyの活用事例 / PagerDuty on Tour 2024
isaoshimizu
6
950
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
1.6k
家族アルバム みてねで直面してきた技術的負債 / MIXI KAG 2024
isaoshimizu
18
8.8k
今年1年のEKS運用振り返り/3-shake SRE Tech Talk
isaoshimizu
2
320
ポストモーテムの基礎知識と最新事例 / Fundamentals of Postmortem
isaoshimizu
11
2.7k
全世界1,800万人が利用する「家族アルバム みてね」におけるNew Relic活用法 / FutureStack Tokyo 2023
isaoshimizu
1
450
『家族アルバム みてね』で計測しているSLIの事例 / SLI as measured in FamilyAlbum
isaoshimizu
3
720
Other Decks in Technology
See All in Technology
Engineer Career Talk
lycorp_recruit_jp
0
190
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
AGIについてChatGPTに聞いてみた
blueb
0
130
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
230
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
780
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
330
Storybook との上手な向き合い方を考える
re_taro
5
1.3k
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
180
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Statistics for Hackers
jakevdp
796
220k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
380
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Faster Mobile Websites
deanohume
305
30k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Done Done
chrislema
181
16k
Site-Speed That Sticks
csswizardry
0
34
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
For a Future-Friendly Web
brad_frost
175
9.4k
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 ΈͯͶ ࠾༻ ݕࡧ ͞·͟·ͳϙδγϣϯͰืूதͰ͢ʂ