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
ゼロから創る横断SREチーム 挑戦と進化の軌跡
Search
adachin0817
December 18, 2024
Technology
2
150
ゼロから創る横断SREチーム 挑戦と進化の軌跡
https://srest.connpass.com/event/335931/
渋谷でSRE大忘年会のスライドです
adachin0817
December 18, 2024
Tweet
Share
More Decks by adachin0817
See All by adachin0817
入社1ヶ月でここまでやった!Findy Toolsインフラ支援の最適化
rvirus0817
11
7.5k
メンティー同士で輪読会を始めたら学びしかなかった
rvirus0817
1
1k
MENTAを5年やってみて:メンタリングで意識していること
rvirus0817
0
470
Lancersをコンテナへ本番移行する取り組み
rvirus0817
1
1.8k
~CircleCIでTerraformリリースのサーバーレス化~ インフラの独自リリースを継続的リリースへ
rvirus0817
0
3.7k
Terraform v0.12.29 → v1.0.5にバージョンアップする上で気をつけること
rvirus0817
0
4.1k
MENTAをAWSに移行して振り返る(ECS/Fargate + Laravel編)
rvirus0817
3
8.7k
ECS/Fargateの活用事例(CakePHP編)
rvirus0817
1
4.1k
ECS/Fargateの活用事例 (Ruby on Rails編)
rvirus0817
3
2.9k
Other Decks in Technology
See All in Technology
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
220
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
680
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
380
Amazon VPC Lattice 最新アップデート紹介 - PrivateLink も似たようなアップデートあったけど違いとは
bigmuramura
0
170
WernerVogelsのKeynoteで語られた6つの教訓とOps
hatahata021
2
290
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
240
AIのコンプラは何故しんどい?
shujisado
1
180
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
190
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
280
Kubernetes環境のオブザーバビリティの次の一歩をOpenTelemetryで実現すると何がどうなるの? - CloudNative Days Winter 2024
katzchang
0
130
AWS re:Invent 2024 re:Cap CloudFront編
yoshimi0227
0
330
tokyo_re_Growth2024_yoshi
yoshi22
0
210
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Being A Developer After 40
akosma
87
590k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Making the Leap to Tech Lead
cromwellryan
133
9k
Why Our Code Smells
bkeepers
PRO
335
57k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.2k
Writing Fast Ruby
sferik
628
61k
Scaling GitHub
holman
458
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Transcript
θϩ͔ΒΔԣஅSREνʔϜ ~ઓͱਐԽͷي~ ʮ2024/12/18 ौ୩ͰSREେձiʯ ϑΝΠϯσΟגࣜձࣾ ϓϩμΫτ։ൃ෦/SRE ҆ୡ ྋ(@adachin0817)
ࣗݾհ
3 ࣗݾհ ҆ୡ ྋ/ @adachin0817 ɾϑΝΠϯσΟ(ג) / ϓϩμΫτ։ൃ෦/SRE ɾBlog: blog.adachin.me/wiki.adachin.me
ɾTechBull(ٕज़ίϛϡχςΟ) techbull.cloud ɹɾʮSRE/ۦ͚ग़͠ΤϯδχΞͷϝϯλϦϯά ྦྷܭ300໊↑ʯ ɾ͔ͭͯOSS൛VulsͷίϯτϦϏϡʔλʔΠϕϯτओ࠵ͳͲ ɾ89ੜ·Εɺ౦ژཱ۠ग़Ͱ࡛ۄݝय़෦ࢢ͕ݩ ɾ࠺ͱϑϨϯνϒϧυοάͷࣂ͍ओͰ͋Δ
ձࣾհ
5
ͪͳΈʹ
srestͷॴײϒϩάॻ͍͍ͯΔͷͰࢀߟʹʂ
͋Ε͔Βܦͪ·ͨ͠ ৼΓฦΓ·͢ʂ✊
ԣஅSREνʔϜൃ
ԣஅSREνʔϜ্ཱͪ͛ʹ͍ͭͯ • ڈ·ͰόοΫΤϯυνʔϜ͕ΠϯϑϥΛ୲͍ͯͨ͠(~2023) ◦ αʔϏεͷ֦େʹ͍ɺόοΫΤϯυνʔϜͷϦιʔε͕ෆ ◦ SREతͳվળ͕ेʹߦ͑ͳ͍ঢ়گ͕ଓ͍͍ͯͨͨΊɺԣஅSREνʔϜ͕ൃ ◦ ݩʑόοΫΤϯυͰΠϯϑϥ୲͍ͯͨ͠ϝϯόʔEmbedded SREͱͯ͠ࢀՃ
• ԣஅSREνʔϜݱࡏ4໊Ͱ׆ಈ(2024~) ◦ ϦʔμʔɺγχΞ໊̎ɺδϡχΞ1໊🎉 ◦ Embedded SRE4໊ ◦ GitHubͷΧϯόϯํࣜͰλεΫཧ͓ͯ͠Γɺேձ30Ͱ݁ ◦ Findy Team+ͷ׆༻ 10
ԣஅSREνʔϜͷҐஔ͚ͮͱϛογϣϯ • SREͷଘࡏҙٛ ◦ SREಓΛ࡞ΔͨΊʹଘࡏ͢Δ(։ൃͷεϐʔυͱ҆શੑΛཱ྆) ◦ ϦεΫΛड͚ೖΕɺཧ͢Δ(োͷϦεΫΛ࠷খݶʹ͑ͭͭɺޮతͳӡ༻Λࢦ͢) ◦ SLOΛܭଌ͢Δ(৴པੑͷόϥϯεΛऔΔͨΊͷج४Λࡦఆ) ◦
τΠϧͷݮͱࣗಈԽ(Ձͷߴ͍ۀʹूதͰ͖ΔڥΛఏڙ) ◦ ϓϩμΫτͷࢧԉ(։ൃεϐʔυͱ৴པੑͷόϥϯεΛอͭͨΊʹٕज़ࢧԉ) ◦ ηΩϡϦςΟͷՄࢹԽͱڧԽ(ࡏతͳϦεΫΛൃݟ͠ɺγεςϜΛΑΓ҆શͳঢ়ଶʹอͭ) • ظϛογϣϯ ◦ ʮϑΝΠϯσΟͷࣄۀΛࢧ͑ΔͨΊʹɺSRE৫ͷ͋Γํͷཱ֬ʯ • தظϛογϣϯ ◦ ʮࣾһશһ͕ࣄۀʹूதͰ͖ΔΑ͏ͳΈΛߏங͠ɺ҆શʹఏڙʯ 11
ԣஅSREνʔϜ͕ҙ͍ࣝͯ͠Δ͜ͱ • ։ൃνʔϜͱͷ৴པؔͷߏங ◦ Ͱ͖ͨͯͷνʔϜΦʔϓϯͳίϛϡχέʔγϣϯ͕ॏཁ ◦ ෆ҆Λڞ༗͍ؔ͢͠ੑΛங͖ɺ৴པੑձ͔Β࢝ΊΔ͜ͱ • Embedded SREͱͷڠಇ
◦ Embedded SREͱີʹ࿈ܞ͠ɺݱͰͷ՝ײΛٵ্͍͛Δ • จԽͷৢͱνʔϜͷҰମײ ◦ ຖि༵ۚʹৼΓฦΓձΛߦ͍ɺKibelaͰશΤϯδχΞʹڞ༗ͱೝΛ্ ◦ νʔϜͷՌ՝ղܾʹɺ࣭ͷߴ͍ίϛϡχέʔγϣϯ͕ॏཁ ◦ εϐʔυײΛॏࢹͭͭ͠ɺཱࣗͨ͠νʔϜͷҭΛࢦ͢ 12
Findy ToolsΠϯϑϥվળ
Findy ToolsΠϯϑϥվળ • Aurora ϚΠφʔόʔδϣϯΞοϓ ◦ 8.0.mysql_aurora.3.07.0ʹόʔδϣϯΞοϓ • ΦϒβʔόϏϦςΟपΓڧԽ ◦
Πϯϑϥ/ΞϓϦέʔγϣϯϦιʔεͯ͢ΛϞχλϦϯά ◦ SLOͰ99%Ҏ্Λҡ࣋ ◦ ִिͰͷৼΓฦΓͷ࣮ࢪʹΑͬͯSLI/SLOͷվળ͕Ͱ͖ͯ ͍Δ • ։ൃڥͷվળ ◦ JustfileԽΛਪਐ͠ɺগͣͭ͠શϓϩμΫτಋೖ༧ఆ ◦ ࠷ۙDocker for Mac͕ߴԽ͞Ε͖ͯͨ ◦ ϨεϙϯεؚΊͯݕূ༧ఆ • CloudFrontಋೖ ◦ ϨεϙϯελΠϜ͕20ഒߴԽʹʂ 14
શڥͷTerraform importԽ
શڥͷTerraform importԽ • ࠓ·ͰશʹIaC͞Ε͍ͯͳ͍ঢ়ଶͩͬͨ ◦ Πϯϑϥ͕શʹίʔυཧ͞Ε͓ͯΒͣɺखಈઃఆ͕ଟ͔ͬͨ ◦ ͯ͢ͷϦιʔεΛίʔυԽ͠ɺҰݩཧΛ࣮ݱ ◦ ߹ੑ͕อͨΕɺকདྷมߋ֦ு͕༰қʹͳͬͨ
• Terraform Cloudͷ׆༻ ◦ S3Ͱཧ͍ͯͨ͠tfstateΛTerraform CloudʹҠߦ ◦ ՝ ◦ ৽نߏங࣌ʹطଘઃఆΛ͍·Θ͍ͯ͠ΔͨΊɺ͕͔͔Δ ◦ ൚༻ੑ͕ͳ͍ͨΊɺڞ௨ԽΛਐΊΔ͘moduleԽΛݕ౼ 16
ʮFindy Team+ʯΦϒβʔόϏϦςΟपΓڧԽ
ʮFindy Team+ʯΦϒβʔόϏϦςΟपΓڧԽ • DatadogΞϥʔτͷ୨Է͠ ◦ खಈͰઃఆ͞ΕͨΞϥʔτ͕ଟ͋ΓɺඞཁੑΛEmbeddedͱձͯ͠ਫ਼ࠪ ◦ ͯ͢ͷΞϥʔτΛTerraformͰཧ ◦ ͖͍͠ΛςϯϓϨʔτԽ͠ɺଞϓϩδΣΫτͷద༻Λ༰қʹͨ͠
◦ Database Monitoringͷಋೖ • SLOͷࡦఆ ◦ Findy ToolsͷࣄྫΛࢀߟʹਐΊͭͭɺ࠶ࡦఆ ◦ APIϨεϙϯελΠϜόονॲཧঢ়گΛ৽ͨʹSLIͱͯ͠ΈࠐΜͩ ◦ SLOͷ໌֬ԽʹΑΓɺؔऀؒͰͷ߹ҙܗ͕εϜʔζʹ 18
ʮFindy FreelanceʯΦϒβʔόϏϦςΟपΓڧԽ
ʮFindy FreelanceʯΦϒβʔόϏϦςΟपΓڧԽ • DatadogΞϥʔτͷ୨Է͠ ◦ ΞϥʔτपΓTerraformԽ͍ͯ͠Δঢ়گ ◦ EmbeddedͱΞϥʔτपΓͷ୨Է͠Λ࢝Ίͨ ◦ Anormaly
DetectʹΑΓɺΞϥʔτͷස͕ ଟ͔ͬͨͨΊطଘʹͨ͠ • SLI/SLOৼΓฦΓձ ◦ SLI/SLOطʹࡦఆ͞Ε͍͕ͯͨɺਁಁ͠ ͍ͯͳ͔ͬͨ ◦ ִिͰৼΓฦΓΛߦ͏ 20
AWSηΩϡϦςΟपΓ্
AWSηΩϡϦςΟपΓ্ • Shisho Cloudͷಋೖ ◦ ϚϧνΫϥυͷҰݩཧ ◦ ηΩϡϦςΟઐ͕ࣝͳͯ͘ରԠՄೳ ◦ ϦεΫͷଈ࣌ՄࢹԽ
◦ ຊޠରԠͷஸೡͳϨϙʔτ ◦ ಋೖͷ༰қ͞ͱݕग़݁Ռͷ͞ ◦ ेʹ४උ͞ΕͯΔϚωʔδυϙϦγʔ ◦ ΧελϚΠζੑͷߴ͞ ◦ Ձ֨ͷ҆͞ 22
Amazon Security Lakeͷ࣮
Amazon Security Lakeͷ࣮ • Amazon Security Lakeͷݕূ ◦ AWS OrganizationsͰӡ༻͍ͯ͠ΔͨΊɺࠪप
ΓͰԿ͕ى͖͍ͯΔ͔ෆ໌ ◦ CloudTrailɺWAFɺVPC Flow Logɺ Route53(DNS Query)Λର ◦ Security Lake݄ສԁఔ ◦ Security LakeͰ؆୯ʹҰݩཧΛ࣮͢Δ͜ͱ ͕Մೳ ◦ Amazon Managed GrafanaͰμογϡϘʔυԽ ◦ ࠓޙSQLͷ݁Ռ͔ΒBedrockͰੳ༧ఆʂ 24
WordPressΛShifterʹҠߦ
WordPressΛShifterʹҠߦ • ShifterҠߦݕূ ◦ ࠓ·ͰAmazon LightsailͰෳαΠτΛӡ༻͍ͯͨ͠ ◦ όʔδϣϯཧͱAWSͰӡ༻ͨ͘͠ͳ͍ͨΊɺShifterʹҠߦݕূΛ࢝Ίͨ • ։ൃڥͷߏங
◦ ιʔυίʔυϦϙδτϦԽͱDocker(Nginx,php-fpm,MySQL)Ͱཧ ◦ ެࣜPHP8.1Ͱಈ࡞͍ͯ͠Δ༷ • Ҡߦํ๏ ◦ All-in-One WP MigrationͰ؆୯Ҡߦ͕Մೳ • ςʔϚσϓϩΠ ◦ Shifter Github Plugin/Theme Installer 26
·ͱΊ/དྷظΔ͜ͱ
·ͱΊ • ࠓظৼΓฦΓ ◦ ײͰ༷ʑͳνϟϨϯδ͕Ͱ͖ͨ(ΈΜͳͷ͓͔͛Ͱ͢ʂ) ◦ ԣஅSREνʔϜͷࡏΓํΛਁಁ͢Δ͜ͱ͕Ͱ͖ɺେ͖ͳҰาΛ౿Έग़ͤͨ ◦ ٯʹ৭Μͳͱ͜ΖʹಥͬࠐΈա͗ͯλεΫͷྔ͕૿͑ͯ͠·ͬͨ(Δ͔͠ͳ͍) ◦
ϕετϓϥΫςΟεΛࡧ͍ͯ͠ΔͷͰɺ՝ͩΒ͚ • དྷظΔ͜ͱ ◦ ηΩϡϦςΟڧԽ ◦ ج൫Ͱ͖͕ͨɺWAFίϯςφपΓରԠ͍ͯ͘͠ ◦ AWSίετݮ ◦ ARMԽɺReserved InstanceɺFargate Spot ◦ ·ͩ·ͩΔ͜ͱ͕ͨ͘͞Μ͋Γ·͢ 28
গ͠ͰϑΝΠϯσΟͰಇ͘͜ͱʹ͝ڵຯ͋Εɺؾܰʹ͝࿈བྷ͍ͩ͘͞ʂ Ͳ͕͜దਖ਼͔Θ͔Βͳ͍ͱ͍͏ํؚΊͯɺΦʔϓϯϙδγϣϯ(ॻྨબߟ໘ஊ࣌ʹϙδγϣϯ͢Γ߹Θͤ)ΧδϡΞϧ໘ஊͷਃࠐΈΛߦ͍ͬͯ·͢ʂ 29 ※ืूঢ়گʹΑͬͯมಈ͠·͢ ։ൃνʔϜɾσβΠφʔ • CTOީิ • EM •
ϑϩϯτΤϯυ • ػցֶशΤϯδχΞ • όοΫΤϯυ •σʔλΤϯδχΞ • SRE • UIσβΠφʔ Findy Career • ࣄۀ෦ީิ • ϚʔέςΟϯά • ࣄΞγελϯτ • PdM • ΧελϚʔαΫηε ◦ Ϧʔμʔީิ / ϝϯόʔ • ϢʔβʔαΫηε ◦ Ϧʔμʔީิ / ϝϯόʔ Findy Team+ • ৽نࣄۀ։ൃ • ηʔϧε • ΧελϚʔαΫηε • PdM ւ֎ਪਐ • ্ཱͪ͛ϝϯόʔ ◦ ϢʔβʔରԠ ◦ اըରԠ ࣾࣨ • ࣾࣨީิ • ࠾༻৫ਓࣄϦʔμʔ • ใ୲ ίʔϙϨʔτଞ • CFOީิ • ܦӦاը • ๏ • ্४උ୲ • ࣄۀاը • ܦཧ ืूதͷϙδγϣϯ
γχΞSREΛେืूதʂ🥹 ڵຯ͋Δํʂͥͻͱ͓͠·͠ΐ͏ʂʂ🤝 \ ಛ ʹ ʂ/
ࠂʂ
None
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ