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
toilを解消した話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
AsumaYwY
May 20, 2022
Technology
700
0
Share
toilを解消した話
JAWS-UG SRE支部 #3 のLTスライドです。
https://jawsug-sre.connpass.com/event/244615/
AsumaYwY
May 20, 2022
Other Decks in Technology
See All in Technology
関西に縁あるMicrosoft MVPsが語るCopilotの未来
kasada
0
1.1k
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
740
EventBridge Connection
_kensh
2
260
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
230
タクシーアプリ『GO』の実践的データ活用
mot_techtalk
2
130
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
360
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
310
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
190
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
550
Mastering Ruby Box
tagomoris
3
150
Featured
See All Featured
AI: The stuff that nobody shows you
jnunemaker
PRO
8
690
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
190
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
WCS-LA-2024
lcolladotor
0
620
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
The agentic SEO stack - context over prompts
schlessera
0
790
Odyssey Design
rkendrick25
PRO
2
680
The Curse of the Amulet
leimatthew05
1
13k
Transcript
ϚΠΫϩαʔϏεͷϦϦʔεʹ ·ͭΘΔUPJMΛղফͨ͠ Ճ౻ ༡അ גࣜձࣾଜ૯߹ݚڀॴ JAWS-UG SREࢧ෦ #3
ࣗݾհ • 2020 ଜ૯߹ݚڀॴೖࣾ • AWSͳͲͷΫϥυΛ༻͍ͨΠϯϑ ϥ։ൃӡ༻ɾอक • SRE׆ಈɿʙ1 1
Ճ౻ ༡അ Kato Asuma ϨϏϡΞʔͱͯ͠ڠྗ @AsumaYwY
എܠ ൃੜͨ͠UPJM UPJMͷղফʹ͚ͯ ·ͱΊ 2
എܠᶃίϯϓϥΠΞϯεʹؔ͢Δ४ڌ • ελʔτΞοϓͷ͓٬༷͚ʹΫϨδοτΧʔυαʔϏεΛఏڙ • PCIDSS(※)ͱݺΕΔΧʔυใηΩϡϦςΟͷࠃࡍ౷Ұج४ʹ४ڌ͢Δඞཁ͕͋Δ 3 ʲ1$*%44ཁ݅ʳ ͯ͢ͷγεςϜίϯϙʔωϯτͱιϑτΣΞʹɺ ϕϯμఏڙͷηΩϡϦςΟύον͕Πϯετʔϧ͞Εɺطͷ੬ऑੑ͔Βอޢ͞Ε͍ͯΔɻ ॏཁͳηΩϡϦςΟύονɺϦϦʔεޙ
Χ݄ҎʹΠϯετʔϧ͢Δɻ ※Payment Card Industry Data Security Standard
എܠᶄҰ෦ͷίϯϙʔωϯτͰ੬ऑੑͷରԠ͕සൟʹൃੜ • ECS / FargateΛओ࣠ʹͨ͠ϓϥοτϑΥʔϜ • ϩάϧʔλͱͯ͠fluent-bitΛར༻ 4 サービスプラットフォーム マイクロサービス別
各API API Gateway NLB API NLB API API ALB 決済系API 返済系API 申込系API 通知系API Aurora ECS ⾮同期処理 API Gateway スマホアプリ 外部接続システム (返済機能) 管理者Web アプリ コンテナ fluent-bit コンテナ 約1ヶ⽉に1度 脆弱性が発⾒ 12個のマイクロサービス群 各ECS/Fargateタスクの中⾝
എܠᶅڥߏʹΑΔ$*$%ϑϩʔ 5 • ֤ϚΠΫϩαʔϏεຖʹCI/CDΛܦͯɺproductionڥʹϦϦʔε͞ΕΔ Pull Requestに対する レビュー実施
'MVFOUCJUͷ੬ऑੑରԠ͕5PJMʹͳ͍ͬͯΔ 6 ϲ݄ʹ̍ճҎ্ ൃݟ͞ΕΔ੬ऑੑ ΞϓϦʹ ؔ࿈͕ͳ͍ 13ϨϏϡʔෛՙ αʔϏεʹ ൺྫͨ͠ෛՙ૿େ Toil
UPJMͷղফʹ͚ͯطଘͷ੬ऑੑରԠϑϩʔ 7 Fluent-bitίϯςφ੬ऑੑमਖ਼ ECRpushͱࣄલͷಈ࡞֬ೝ (commit IDΛؚΜͩλά໊) 12ϦϙδτϦ º 3ϒϥϯνͰ ECSఆٛͷมߋ
(fluent-bitλάमਖ਼) PRͱϨϏϡʔ º αʔϏε ECSαʔϏεͷσϓϩΠ タグ指定を変更することで、 レビュー負荷を軽減
UPJMͷղফʹ͚࣮ͯࢪͨ͠ࢪࡦ 1. Fluent-bitίϯςφͷlatestλάӡ༻ 2. Slack + AWS Chatbot + LambdaʹΑΔ
ECSαʔϏεҰׅϦσϓϩΠ 8
UPJMͷղফᶃ 'MVFOUCJUίϯςφͷMBUFTUλάӡ༻Λ࠾༻ ͨͩ͠ɺMBUFTUλάͷӡ༻ҎԼͷཧ༝͔ΒΞϯνύλʔϯͱ͞Ε͍ͯΔ • ιʔείʔυͱͷτϨʔαϏϦςΟ • ՔಇதͷΠϝʔδͷόʔδϣϯ͕Θ͔Βͳ͍ • ϩʔϧόοΫ͕Ͱ͖ͳ͍ 9
UPJMͷղফᶃ 'MVFOUCJUίϯςφͷMBUFTUλάӡ༻Λ࠾༻ 10 • ιʔείʔυͱͷτϨʔαϏϦςΟ ⇨ࣗͨͪͷཧ͢ΔFluent-bitͷιʔείʔυͳͲ͔Β֬ೝՄೳ • ՔಇதͷΠϝʔδͷόʔδϣϯ͕Θ͔Βͳ͍ ⇨ECSͰՔಇதͷλεΫͷϋογϡΛ֬ೝͯ͠ECRͰಥ߹Մೳ •
ϩʔϧόοΫ͕Ͱ͖ͳ͍ ⇨λάͷ͚ସ͑ͰରԠՄೳ Fluent-bitコンテナイメージは設定をカスタマイズしたものを ⾃分たちのイメージとして管理・利⽤している
UPJMͷղফᶄ&$4αʔϏεҰׅϦσϓϩΠ 11 ① ② ③ ɾChatOpsΛϕʔεʹSlack͔Β3ڥͷLambdaΛىಈ ɾ12αʔϏεΛҰׅͰϦσϓϩΠ͢Δ͜ͱͰɺ੬ऑੑ͕ରॲ͞Εͨfluent-bitΛө
·ͱΊ 12 ɾUPJMΛೝࣝ͠ɺࣗಈԽ͕ՄೳͳΑ͏ʹ γεςϜϓϩηεΛվળ͢ΔͨΊͷΧϧνϟʔେ ɾ·͍͠ઃܭͱӡ༻ෛՙͷόϥϯεΛऔΔ