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
Retty における Signal Sciences の導入事例 / Fastly Yamag...
Search
YuyaKoda
PRO
December 08, 2021
Technology
0
4.2k
Retty における Signal Sciences の導入事例 / Fastly Yamagoya 2021
https://www.fastly.com/jp/press/press-releases/fastly-yamagoya-2021
YuyaKoda
PRO
December 08, 2021
Tweet
Share
More Decks by YuyaKoda
See All by YuyaKoda
Renovate ではじめる運用レスなライブラリ更新 / 令和最新版 他人に自慢したいヤバいCI/CD LT会 @ yabaibuki.dev #2
ponkio_o
PRO
1
180
Amazon ECS で作るスケーラブルなセルフホストランナー / GitHub Actions Meetup Tokyo #4
ponkio_o
PRO
2
690
業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
ponkio_o
PRO
43
16k
aqua で始める CI-Friendly なツール管理
ponkio_o
PRO
2
1k
set-terraform-matrix という Actions を作った / set-terraform-matrix-actions
ponkio_o
PRO
0
460
NGINX Ingress Controller を活用した Retty のサービス開発とモニタリング / NGINX ユーザー会 2022 春
ponkio_o
PRO
0
160
Amazon EKS を活用した個人開発環境の整備と自動化への取り組み / CNDT2021
ponkio_o
PRO
0
490
Terraform における秘匿情報管理 / Credentials management in Terraform
ponkio_o
PRO
0
350
Other Decks in Technology
See All in Technology
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
1k
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
150
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
430
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
AGIについてChatGPTに聞いてみた
blueb
0
130
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
500
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
320
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
330
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
250
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
140
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Music & Morning Musume
bryan
46
6.2k
Visualization
eitanlees
145
15k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Transcript
3FUUZʹ͓͚Δ4JHOBM4DJFODFTͷ ಋೖࣄྫ Yuya Koda 2021/12/08
ࣗݾհ ໊લ ా༏࠸ ͜͏ͩΏ͏ ͓ࣄ ΠϯϑϥΤϯδχΞ ͖ͳ͓ళ 4"70:ຑे൪ళ 5XJUUFS
!QPOLJP@P IUUQTVTFSSFUUZNF
͋ͳͨʹBESTͳ ͓ళ͕ݟ͔ͭΔ
"HFOEB 8"'ಋೖͷഎܠ 8"'ͷݕ౼ 4JHOBM4DJFODFTΛ༻͍ͨ1P$ͷ࣮ࢪ ͬͯΈͯײͨ͡4JHOBM4DJFODFTͷεΰ͍ͱ͜Ζ
UFSSBGPSNQSPWJEFSTJHTDJͷ׆༻ࣄྫ ·ͱΊ
8"'ಋೖͷഎܠ
ಋೖͷഎܠ ΞΫηεϩάͳͲͰ࣌ʑ؍ଌ͍ͯͨ͠ͷͷɺ݄ͷ্ޙ͔Β߈ܸͱࢥΘΕΔ ϦΫΤετཱ͕ͭΑ͏ʹ w 42-J944ΛૂͬͨϦΫΤετ w ಛʹSFUUZNFݹ͍ϖʔδଘࡏ͠ɺ͜ΕΒ͕ສશʹରࡦ͞Ε͍ͯΔͱ ݴ͑ͳ͍ঢ়گʜ w ͓ߦّͷѱ͍CPUʹΑΔେྔͷϖʔδΫϩʔϧ
w ͦΕʹ͏%#ͷෛՙ্ঢى͖͍ͯͨ🔥 → Ͱ͖Δ͚ͩ WAF ϨΠϠʔͰޚ͍ͨ͠
"848"'ͷࢼݧಋೖ ͱ͋ΔΠϯγσϯτൃੜ࣌ʹɺۓٸͰ"848"'Λಋೖ͢Δશ͘νϡʔχϯάΛͤͣʹ ಋೖͨͨ͠Ίɺ'BMTF1PTJUJWF͕େྔൃੜ͠αʔϏεʹো͕ൃੜ ٸ͗Ͱ8"'Λಋೖͨ࣌͠ͷ༷ࢠ
"848"'ͷࢼݧಋೖ ͦͷޙεςʔδϯάڥͳͲͰࢼͯ͠ΈΔɺ࣮ࡍͷӡ༻ʹͤΔͨΊʹϦΫΤετຖͷ ࡉ͔͍νϡʔχϯάܧଓతͳϧʔϧͷௐ͕ඞਢʹͳΓͦ͏ͩͬͨ😢 σϑΥϧτͷϧʔϧͰݕग़͞ΕͨϦΫΤετ
8"'ͷݕ౼
8"'ͷݕ౼ ଞࣾͷ8"'ͱൺֱͨ͠ॴɺԼهͷΑ͏ͳϙΠϯτͰ4JHOBM4DJFODFT͕Ϛονͨ͠😀 w ӡ༻ίετͷ͞ w ϖʔδຖʹਖ਼نදݱΛॻ͘Α͏ͳ͜ͱͳΔ͘ආ͚͍ͨ w ཏతʹαΠτશମΛอޢ͍ͨ͠ w ۚમతͳίετ
w 8"'ͷӡ༻ߦαʔϏεͳͲΛ͏ͱ8"'ຊମҎ֎ʹग़අ͕ʜ w ಋೖͷ͢͠͞ w μϯλΠϜͳ͠Ͱಋೖ͍ͨ͠ w ෦తʹಋೖ͍ͨ͠ → Signal Sciences Ͱ PoC Λ࣮ࢪ͢Δ͜ͱʹ
4JHOBM4DJFODFT1P$ͷ࣮ࢪ
"HFOU8"'ͱ$MPVE8"' Agent WAF Cloud WAF ྉۚ ˕ ˚ ϨΠςϯγʔ ˕
̋ ಋೖ࣌ͷखܰ͞ ˚ ˕ ӡ༻ίετ ̋ ˕ w "HFOU8"' w ࣗͨͪͰ"HFOUΛηοτΞοϓͯ͠ར༻͢ΔλΠϓ 1SPYZ.PEVMF w ॳճͷ"HFOUͷߏஙΞοϓσʔτͳͲܧଓతͳอक͕ඞཁ w $MPVE8"' w 4JHOBM4DJFODFT͕ࣾཧ͢Δ"HFOUΛ༻͢ΔλΠϓ w 4JH4DJଆͰ"HFOU͕ཧ͞Εɺಋೖ%/4ΛΓସ͑ΔͷΈ 4JHOBM4DJFODFTͷதͰେ͖͘छྨͷಋೖํ๏͕͋Δ
$MPVE8"'ͷಋೖ 0SJHJOͱͳΔΤϯυϙΠϯτΛ4JH4DJࣾʹ͑Δ 4JH4DJଆͰొ͕ඞཁͳͨΊ 4JHOBM4DJFODFTμογϡϘʔυ্Ͱূ໌ॻͷΞοϓϩʔυ αʔϏε ྫTFSWJDFSFUUZNF ͷϨίʔυΛ4JH4DJ͔ࣾΒࢦఆ͞Εͨ$/".&ʹมߋ ൺֱతϦΫΤετ͕গͳ͘ɺ%/4Γସ͑ͰӨڹൣғ͕খ͍͞αʔϏεʹ$MPVE8"' Λಋೖ
TFSWJDFSFUUZNF "QQ4FSWFS $MPVE8"' TFSWJDFSFUUZNF $/".&YYTJHTDJDMPVEXBGDPN
"HFOU8"'ͷಋೖ 1SPYZ.PEFͰಈ࡞͢Δ4JH4DJ"HFOUΛߏங 4JH4DJ"HFOUͷVQTUSFBNͱͯ͠0SJHJO "QQ4FSWFS Λࢦఆ લஈͷ/(*/9ͷVQTUSFBNΛ4JH4DJ"HFOUʹมߋ ൺֱతϦΫΤετ͕ଟ͘ɺ%/4Γସ͑ͩͱӨڹൣғ͕େ͖͍αʔϏεʹ"HFOU8"' Λಋೖ SFUUZNF 4JH4DJ"HFOU
3FWFSTF1SPYZ /(*/9 "QQ4FSWFS
"HFOUNPEFʹ͍ͭͯ w /PUCMPDLJOH ϲ݄ w ϦΫΤετΛه͢ΔͷΈͰɺ࣮ࡍͷϒϩοΫߦΘͳ͍ w #MPDLJOH िؒ
w ҰఆҎ্ѱҙͷ͋ΔϦΫΤετΛड͚ͨΒϒϩοΫ͢Δ w ϒϩοΫͨ͠ϗετͰѱҙͷͳ͍௨ৗͷϦΫΤετड͚͚Δ αʔϏεӨڹΛग़͞ͳ͍ͨΊʹϞχλϦϯά͔ͯ͠ΒϒϩοΫϞʔυʹҠߦͨ͠
4JHOBM4DJFODFTͷ͕͜͜εΰΠʂ
खܰʹಋೖͰ͖Δ "HFOU8"'$MPVE8"'ڞʹಋೖͷख͕ؒ΄ͱΜͲ͔͔Βͳ͔ͬͨ w $MPVE8"'Ͱඞཁͳ࡞ۀূ໌ॻͷΞοϓϩʔυͱ%/4ͷΓସ͑ͷΈ w ΞϓϦέʔγϣϯଆͷมߋෆཁ w "HFOU8"'ͷ߹ڥʹ߹Θ༷ͤͯʑͳܗͰΈࠐΊΔͨΊɺ෦తʹಋೖ͢Δ ͜ͱՄೳ w
3FWFSTF1SPYZ w 8FC4FSWFS.PEVMF /(*/9 "QBDIF **4 w -BOHVBHF.PEVMF +BWB /PEFKT 1ZUIPO
'BMTF1PTJUJWFͷগͳ͞ ࠷େͷݒ೦Ͱ͋ͬͨ'BMTF1PTJUJWF͕ͱʹ͔͘গͳ͍ w ϲ݄ͷ1P$ظؒதʹൃݟ͞Εͨ'BMTF1PTJUJWFͳΜͱ݅ w ͔͠༧Ίઃఆͨ͠ڐՄϧʔϧͳͲͳ͘ɺͨͩ௨͚ͨͩ͠ͷঢ়ଶ w 'BMTF/FHBUJWF͕ଟ͍͔ͱݴΘΕΔͱͦΜͳ͜ͱͳ͘ɺ͔ͬ͠Γݕ͞Ε͍ͯΔ w ʮͷϢʔβ͕ຊ൪ڥͰϒϩοΫϞʔυΛ༻͍ͯ͠Δʯͷೲಘ
0'$6450.&34*/'6--#-0$,*/(.0%&*/130%6$5*0/
ӡ༻ίετͷ͞ 8"'ͷӡ༻ߦͳͲΛར༻ͤͣͱࣗࣾͰेʹཧͰ͖Δ w ʮϖʔδ͕૿͑Δͨͼʹਖ਼نදݱΛݟ͢ʯͳͲͷ࡞ۀ͕جຊతʹඞཁͳ͍ w ϓϦηοτతͳ5FNQMBUFE3VMFT༻ҙ͞Ε͓ͯΓɺྫ͑ʮϩάΠϯͷࣦഊʯͳͲ Λ؆୯ʹઃఆϞχλϦϯάͰ͖Δ -PHJO'BJMVSFͷ5FNQMBUFE3VMFTͷը໘
͔Γ͍͢μογϡϘʔυͱઃఆը໘ ͘͢͝γϯϓϧͳ6*Ͱײతʹૢ࡞͍͢͠ w ײతͳ6*Ͱʮ͋Ε͕ݟ͍ͨʯͱࢥͬͨใʹ͙͢ʹḷΓண͚Δ w ϧʔϧʹ͍ͭͯ༧Ί༻ҙ͞ΕͨϑΟʔϧυΛຒΊΔͱ࡞Ͱ͖Δ w ਖ਼نදݱར༻Մೳ w ಠࣗͷϦετΛ࡞ͯ͠*TJOMJTU*TOPUJOMJTUΛࢦఆͨ͠ΓͰ͖Δ
4JUF3VMFTͷ࡞ը໘
-JTUΛ༻ͨ͠3VMFͷઃఆྫ ྫ͑ɺ༧Ίάϩʔόϧ*1ΞυϨεϦετΛ࡞͓͍ͯͯ͠ɺ*TJOMJTUΛࢦఆ͢Δ͜ͱͰ ΦϑΟε͔ΒͷΞΫηεΛࣝผͭͭ͠ɺϒϩοΫ͠ͳ͍ϧʔϧΛ؆୯ʹઃఆͰ͖Δ
5FSSBGPSN1SPWJEFSͷ׆༻ࣄྫ
ެࣜͷ5FSSBGPSN1SPWJEFS ެࣜͰ5FSSBGPSN1SPWJEFS͕༻ҙ͞Ε͍ͯΔͨΊઃఆͷίʔυཧ͕Ͱ͖Δ w 4JH4DJͷ΄ͱΜͲͷઃఆΛ5FSSBGPSNͰهड़͢Δ͜ͱ͕Ͱ͖Δ w Ұ෦ରԠ͍ͯ͠ͳ͍ͷ͋Δ ࠓޙʹظ IUUQTHJUIVCDPNTJHOBMTDJFODFTUFSSBGPSNQSPWJEFSTJHTDJ
UFSSBGPSNQSPWJEFSTJHTDJͷ׆༻ࣄྫ ฐࣾͰରԠ͍ͯ͠ͳ͍ϦιʔεҎ֎ͯ͢5FSSBGPSNͰཧ͢ΔΑ͏ʹ͠ɺ13࡞Ͱ $*͔ΒUFSBSGPSNQMBOΛ࣮ߦ͠ɺ̼FSHFͰUFSSBGPSNBQQMZ͢ΔΑ͏ʹ͍ͯ͠·͢ 8"'ΛϒϩοΫϞʔυʹมߋ͢Δ13Λग़͍ͯ͠Δ༷ࢠ
·ͱΊ
ಋೖͯ͠ΈͯͲ͏͔ͩͬͨ w શମΛ௨ͯ͠ w 'BMTF1PTJUJWF͕ͱʹ͔͘গͳ͍ w ਖ਼نදݱͷௐΈ͍ͨͳ͕ͭجຊ͍Βͳ͍ w 'BMTF/FHBUJWFগͳ͘ɺͪΌΜͱ߈ܸΛݕͯ͘͠ΕΔ w
$MPVE8"' w ಋೖ͕؆୯Ͱอकඞཁͳ͘ӡ༻ָ͕ w τϥϑΟοΫྔʹΑͬͯίετ͕ωοΫʹͳΔ͜ͱ w "HFOU8"' w ߏஙඞཁͳͷͷɺͦ͜·Ͱେ͖͘ӡ༻ʹखؒऔΒΕͳ͍ҹ w ಋೖλΠϓʹ༷ʑͳબࢶ͕͋Γɺࣗࣾʹ͋ͬͨͷΛ͑Δͷ"HFOU8"' ͷ͍͍ͱ͜Ζ
͋Γ͕ͱ͏͍͟͝·ͨ͠