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
スクラムチームのDevOpsを支えるPlatform Engineering @ 実践DevO...
Search
SimSta
November 15, 2024
0
99
スクラムチームのDevOpsを支えるPlatform Engineering @ 実践DevOps! 〜KAGとkubellの取り組み〜
SimSta
November 15, 2024
Tweet
Share
More Decks by SimSta
See All by SimSta
AWS Media Servicesを使ってAmazon IVSとYouTubeへの同時配信を試してみた @ JAWS-UG千葉支部 x Media-JAWS
shimagaji
1
61
AWSアップデートまとめ #しむそく をFun Done Learnで振り返る @ JAWS-UG Tokyo
shimagaji
2
240
Amazon Q DeveloperでMCP Serverを使ってKnowledge Baseを呼び出してみた @ JAWS-UG 彩の国埼玉支部#1
shimagaji
1
320
KAG社内のPlatform Engineeringをちょっとだけ紹介します @ Sapporo Engineer Base
shimagaji
0
35
日本からre:Inventを支えた活動報告&ミニre:Cap @ JAWS-UG Sapporo
shimagaji
0
85
Step FunctionsとInfrastructure Composerで挑むローコード × Platform Engineering @ JAWS-UG 青森
shimagaji
1
300
日本からre:Inventを支える技術 @ re:Invent2024 北海道組 事前勉強会
shimagaji
0
110
KDDI CCoEからKAG Platform Engineeringへ受け継がれたもの、変わったもの @ CCoE実践者コミュニティ北海道
shimagaji
0
100
インナーソースはじめました @ NES Tech Brewery
shimagaji
4
220
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
40
1.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
970
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Side Projects
sachag
455
42k
Adopting Sorbet at Scale
ufuk
77
9.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Building Adaptive Systems
keathley
43
2.7k
Navigating Team Friction
lara
187
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Transcript
εΫϥϜνʔϜͷ%FW0QTΛࢧ͑Δ 1MBUGPSN&OHJOFFSJOH 4JN4UB !TIJNBHBKJ ࣮ફ%FW0QTʂʙ,"(ͱLVCFMMͷऔΓΈʙ LLEFWPQT
ˡϗϫΠτγϚϦεͷΞϧλ
ࣗݾհ ɹ࡛ۄɹʢʙେֶͷ్த·Ͱʣ ˠࡳຈɹʢʙେֶɾʣ ˠਆಸʢʙେֶӃʙब৬ͯ͘͠Β͍ʣ ˠࡳຈɹʢʙͪΐͬͱɺݱࡏʣ ͖ͳ"84αʔϏεɿ4UFQ'VODUJPOT 4JN4UBʢΦϯϥΠϯͷ͕ͨ͢ʣ ,%%*ΞδϟΠϧ։ൃηϯλʔגࣜձࣾ ϓϥοτϑΥʔϜΤϯδχΞϦϯά෦ !TIJNBHBKJ
5XJUUFS 4FSWFSMFTT ͝ΧάΧά
ϗϫΠτγϚϦεͱ Β͍ͯ͠·͢🐿 ˢେνϧλϦε 5XJUUFSΞΧϯτ͋ΔΑ !BMUB@XIJUFDIJQ
աڈͷొஃࢿྉΞοϓͯ͠·͢ʢࠓͷࢿྉʂʣ IUUQTTQFBLFSEFDLDPNTIJNBHBKJ
ݸਓϒϩάΛӡ༻͍ͯ͠·͢͠·͕͡ ͠Ήͦ͘ "84ΞοϓσʔτΛ ຖिߋ৽ʂ ͦͷଞ ΫϥυΨδΣοτ γϚϦεͷͳͲ
͠Ήͦ͘3BEJP "84ͷΞοϓσʔτΛαΫοͱΩϟονΞοϓ !͠Ήͦ͘ ຖिਫ༵ʙ ৴தʂ
None
"HFOEB • 1MBUGPSN&OHJOFFSJOHͷ֓ཁ • ,"(ͷ1MBUGPSN&OHJOFFSJOHͱ ࢧԉπʔϧ܈ʮLBHUPPMTʯ • Πϯφʔιʔεͷ׆༻ •
·ͱΊ
1MBUGPSN&OHJOFFSJOHͷ֓ཁ
1MBUGPSN&OHJOFFSJOHʢ1'&ʣͱʁ ϓϥοτϑΥʔϜɾΤϯδχΞϦϯάͱԿ͔ʁ(BSUOFS IUUQTXXXHBSUOFSDPKQKBBSUJDMFTXIBUJTQMBUGPSNFOHJOFFSJOH ҎԼΛຬͨ͢ϓϥοτϑΥʔϜΛ ߏங͢ΔΞϓϩʔνΛࢦ͢ ඪɿ ɾ։ൃऀͷੜ࢈ੑ্ ɾϏδωεՁͷग़ తɿ
ɾ։ൃऀͷೝෛՙΛܰݮ ɾ։ൃऀͷΤΫεϖϦΤϯε্ खஈɿ ɾηϧϑαʔϏεػೳͷॆ࣮ ɾΠϯϑϥӡ༻ͷࣗಈԽ
ΞδϟΠϧ%FW0QTͱ1MBUGPSN&OHJOFFSJOH ϓϥοτϑΥʔϜΤϯδχΞϦϯάͱ IUUQTMFBSONJDSPTPGUDPNKBKQQMBUGPSNFOHJOFFSJOHXIBUJTQMBUGPSNFOHJOFFSJOH 4%-$ ιϑτΣΞ։ൃͷ ϑΣʔζΛࣔ͢ࢦ ΞδϟΠϧ։ൃ খ͍͞αΠΫϧͰͷ ։ൃͷ࣮ફʹΑΔ ૉૣ͍Ձఏڙ
%FW0QT ܧଓతͳσϦόϦʔΛ࣮ݱ͢ΔͨΊͷ ։ൃख๏ͱӡ༻ͷࣗಈԽɾޮԽ 1MBUGPSN&OHJOFFSJOH ։ൃηΩϡϦςΟɾΨόφϯεΛ ڥඋ*B$ɺࣗಈԽͳͲͰࢧԉ "HJMF4%-$4LZSPDLFUJOH:PVS1SPKFDUXJUI"HJMF1SJODJQMFT IUUQTNMTEFWDPNCMPHBHJMFTEMD
ιϑτΣΞ։ൃΛւಓཱྀߦʹྫ͑Δͱʜ 4%-$ త·Ͱͷਤ %FW0QT ަ௨खஈʢΓʣ ΞδϟΠϧ։ൃ ͍ΖΜͳܦ༝ͰඞཁͳͷΛඋ ΥʔλʔϑΥʔϧ։ൃ ୯Ұͷަ௨खஈͰత·Ͱ௨ 1MBUGPSN&OHJOFFSJOH
ަ௨Πϯϑϥ ʢࠃಓɺߴɺۭ࿏ɺߤ࿏ʣ ࡳຈˠവؗߦ͘ͷʹ ͔ͭͯమಓͰ͔͔͕࣌ؒͬͨ ࣨའ͔Βߤ࿏ΛඋͰ͖Ε େ෯ʹ͕࣌ؒॖͰ͖Δ͔͠Εͳ͍ খḺˠߦ͘ͷʹ ߴɺѴɺ۴࿏ͳͲΛܦ༝ͯ͠ ඞཁͳͷΛἧ͍͑ͯ͘ͷ͕ΞδϟΠϧ Γʢెาɺഅɺඈߦધʣ͕%FW0QT ಓͷ։͕1MBUGPSN&OHJOFFSJOH $PQZSJHIU4PVHPV4IPVLFO$0 -UE"MM3JHIUT3FTFSWFE
,"(ͷ1MBUGPSN&OHJOFFSJOHͱ ࢧԉπʔϧ܈ʮLBHUPPMTʯ
,"(1'&νʔϜͷ͓ࣄ • ࣾڞ௨(JU)VC&OUFSQSJTF4FSWFSʢ()&4ʣͷཧ • ()&4ࣗࣾΫϥυڥͷίετ࠷దԽ • ࣗࣾΫϥυڥ*E1ͷӡ༻ɺཧ • ࣗࣾΫϥυڥͱ֤Ҋ݅ڥͷηΩϡϦςΟվળ
ˠ4FDVSJUZ)VC(VBSE%VUZͷಋೖɺཧͳͲ • ֤εΫϥϜνʔϜͷώΞϦϯάɺࢧԉϝχϡʔ࡞ • ͦͷଞ ։ൃऀڥͷҰ෦Πϯϑϥཧ෦తͳ$$P&Λ୲͍ͳ͕Β গͣͭ͠1MBUGPSN&OHJOFFSJOHΛ࣮ફ
ηϧϑαʔϏεܕͷϓϥοτϑΥʔϜ 1MBUGPSN&OHJOFFSJOHPO4FSWFSMFTT IUUQTTQFBLFSEFDLDPN@LFOTIQMBUGPSNFOHJOFFSJOHPOTFSWFSMFTT • "84ͷ߹ɺҎԼͷ͕ͭީิʹͳΓಘΔ • "NB[PO$PEF$BUBMZTU • "844FSWJDF$BUBMPH •
#BDLTUBHF • (JU)VCͳͲͷίʔυϦϙδτϦͰఏڙՄೳ ˠ,"(Ͱࣾͷ(JU)VC&OUFSQSJTF0SHBOJ[BUJPOΛ׆༻
(JU)VC&OUFSQSJTFͷඋʹΑΔ൫ݻΊ ϙʔλϧϦϙδτϦͷ࡞ ϦϙδτϦͷ࡞ϧʔϧ੍ఆ 5FBNTʹΑΔݖݶཧ
ηϧϑαʔϏεπʔϧ܈ʮLBHUPPMTʯ w1MBUGPSN&OHJOFFSJOHͱͯ͠ͷࢧԉπʔϧΛఏڙ͍ͨ͠ͱ͍͏ϞνϕʔγϣϯͰ։࢝ w·ͣݩʑͷ1'&෦ʹΑΔۀʢΠϯϑϥ$$P&دΓʣʹؔ࿈͢ΔͷΛఆ wηΩϡϦςΟɺΨόφϯεܥ wίετͷݮ w(JU)VC&OUFSQSJTFͷར༻ิॿ LBHUPPMT w ϓϥοτϑΥʔϜνʔϜ͕ఏڙ͢ΔࢧԉπʔϧʢϦϙδτϦʣ܈ w
*B$ɺίʔυεχϖοτͳͲศརͳπʔϧɺηΩϡϦςΟ্࣮ࢪͯ͠ཉ͍͠ͷΛల։༧ఆ
LBHUPPMTͷհ • (VBSE%VUZ4VNNBSJ[FS • (VBSE%VUZͷݕग़݁ՌΛ#FESPDLͰ͔Γ͔ͯ͘͢͠Β௨ • 4FDVSJUZ)VCʹू͞Εͨ(VBSE%VUZݕग़݁ՌʹରԠ • $PEF#VJME3VOOFS •
()&ͷ4FMGIPTUFE3VOOFSΛϚωʔδυͰల։ • 71$ͷ࡞͔Β(JU)VC"QQTܦ༝Ͱͷଓ·ͰΨΠυ͖Ͱ࡞ • /"54DIFEVMFS • /"5(BUFXBZΛ༵ͱ࣌ؒͰ࡞আ͠ɺίετΛݮ • TBNQMFTFDVSJUZIVCOPUJGJDBUJPOT • 4FDVSJUZ)VC͔Βͷ௨Λ4MBDLૹ৴͢ΔͨΊͷ5FSSBGPSNίʔυ
ྫɿ(VBSE%VUZ4VNNBSJ[FS (VBSE%VUZ͔Βͷ௨Λ ͦͷ··4/4Ͱૹ৴͢Δͱ ͚ͬ͜͏ೝෛՙߴ͍ͷͰ શ෦#FESPDLʹ͛ͯ ͍͍ײ͡ʹͯ͠௨
ྫɿ(VBSE%VUZ4VNNBSJ[FSͷߏ *B$ʹ*OGSBTUSVDUVSF$PNQPTFSɺΞϓϦέʔγϣϯʹ4UFQ'VODUJPOTΛར༻ͯ͠ ϩʔίʔυ͔ͭ(6*Ͱͷࢹ֮ԽʹΑΔೝෛՙͷܰݮΛ࣮ݱ AWS Cloud GuardDuty Step Functions Bedrock SNS
Invoke Execute EventBridge User Threats E-Mail Publish Slack Security Hub ᶃ(VBSE%VUZͷΠϕϯτΛर͏ ᶄ4FDVSJUZ)VCʹू͞ΕͨΠϕϯτΛर͏ ͷͲͪΒ͔Λબͯ͠σϓϩΠՄೳ
Πϯφʔιʔεͷ׆༻
,"(ͷ৫ͱ1MBUGPSN&OHJOFFSJOHతͳ՝ • ,"(ͷ৫ܗଶ • ࣄۀձࣾͱҟͳΓɺ֤Ҋ֤݅νʔϜͰγεςϜ͕ҟͳΔ • "84͚ͩͰͳ͘(PPHMF$MPVE"[VSFͷҊ݅ͦͦ͜͜ • ਤʢཱྀߦઌʣަ௨खஈʢࣗಈंɺమಓɺඈߦػɺધʣ͕όϥόϥ
ˠಓ࿏͚ͩͰͳ͘ઢ࿏ۭ࿏ɺߤ࿏උ͠ͳ͚ΕͳΒͳ͍ • ϓϥοτϑΥʔϜνʔϜͷݶք • ΧόʔͰ͖Δٕज़ྖҬ͕ݶΒΕͯ͠·͏ ˠʮࢧԉͰ͖ΔͷʯͱʮٻΊΒΕ͍ͯΔͷʯͷΞϯϚον • πʔϧ૿ՃʹΑΔϝϯςφϯεվળ͕Ͱ͖Δ࿑ྗͷෆ • ಓ࿏Ҏ֎Λ։Ͱ͖ΔϦιʔεϊϋ͕Γͳ͍ • ޮՌతʹ֤νʔϜΛࢧԉͰ͖Δ͔ͱ͍͏ෆ҆ɾɾɾ
ͦΜͳͱ͖ʹग़ձͬͨͷ͕ ͪ͜Β
IUUQTZPVUVCF/0I@J'-:D TJ@,NF.TX#RER1(
None
ɹͦ͏ͩɺ ɹΠϯφʔιʔεɺ ɹΖ͏ɻ
Πϯφʔιʔεͱʁ ΠϯφʔιʔεͰ࢝ΊΔ৫Φʔϓϯιʔε։ൃೖ IUUQTTQFBLFSEFDLDPNZVIBUUPSJOOFSTPVSDFMFBSOJOHQBUIKBQBOFTF ҰݴͰද͢ͱʮࣾΦʔϓϯιʔεʯ
LBHUPPMTͷํมߋ LBHUPPMT w ϓϥοτϑΥʔϜνʔϜ͕ఏڙ͢ΔࢧԉπʔϧʢϦϙδτϦʣ܈ w *B$ɺίʔυεχϖοτͳͲศརͳπʔϧɺηΩϡϦςΟ্࣮ࢪͯ͠ཉ͍͠ͷΛల։༧ఆ w $0/53*#65*/(NEΛઃ͚ɺ։ൃऀ͔ΒͷίϯτϦϏϡʔγϣϯΛΦʔϓϯʹड͚ೖΕ
LBHJTNͷՃ ͲͪΒΠϯφʔιʔεʢࣾΦʔϓϯιʔεʣͷҐஔ͚ ཧӡ༻ͷओମ͕ϓϥοτϑΥʔϜνʔϜ͔༗ࢤ͔ͷҧ͍ LBHUPPMT w ϓϥοτϑΥʔϜνʔϜ͕ఏڙ͢ΔࢧԉπʔϧʢϦϙδτϦʣ܈ w *B$ɺίʔυεχϖοτͳͲศརͳπʔϧɺηΩϡϦςΟ্࣮ࢪͯ͠ཉ͍͠ͷΛల։༧ఆ w $0/53*#65*/(NEΛઃ͚ɺ։ൃऀ͔ΒͷίϯτϦϏϡʔγϣϯΛΦʔϓϯʹड͚ೖΕ
LBHJTN w ֤νʔϜϧʔϧͳͲɺࣾͷ͋ΒΏΔॴ͔Βఏڙӡ༻͞ΕΔϓϩμΫτ w ϦϙδτϦͷ࡞ϧʔϧʹଇΕ୭Ͱఏڙ0, w ֤ϦϙδτϦͷϧʔϧʹै͑୭ͰίϯτϦϏϡʔτ0, ಠஅͰউखʹ໊͚·ͨ͠
LBHJTNͷJTNͬͯͳʹʁ JOOFSTPVSDFNBO
1MBUGPSN&OHJOFFSJOHºΠϯφʔιʔεͷޮՌ • Φʔϓϯͳڥͷߏங • πʔϧφϨοδΛࣾશମͰڞ༗ɺੵ • ʮंྠͷ࠶ൃ໌ʯͷࢭɺαΠϩԽͷղফ • ίϥϘϨʔγϣϯจԽͷৢ •
ࣗൃతͳϑΟʔυόοΫͱίϯτϦϏϡʔγϣϯͷଅਐ • νʔϜؒɺνʔϜͱ1'&νʔϜؒͷίϛϡχέʔγϣϯڧԽ ˠ֤νʔϜͷʮधཁʯΛΑΓѲͰ͖ΔΑ͏ʹͳΔ • ϓϩμΫτͱ৫ͷվળ • πʔϧͷ࣭։ൃੜ࢈ੑͷ্
,"(1MBUGPSN&OHJOFFSJOHͷ՝ • Πϯφʔιʔεʮ1'&νʔϜͷෛ୲ܰݮʯΛҙຯ͠ͳ͍ • ϝϯςφϯεͷͨΊʹ֤ఏڙπʔϧΛཧղ͢Δඞཁ͕͋Δ • ։ൃνʔϜ͕ٻΊ͍ͯΔͷΛΈऔΓɺఏڙ͢ΔΊΔ • ʮࣗൃతͳࢀՃʯΛଅ͢ڥͮ͘Γ͕ٻΊΒΕΔ •
πʔϧͷఏڙίϯτϦϏϡʔγϣϯ͋͘·Ͱળҙʢ༗ࢤʣ • ͍͔ʹଟ͘ͷϝϯόʔʹಈػ͚Λ༩͑ɺר͖ࠐΊΔ͔͕ॏཁ ˠҰछͷࣾίϛϡχςΟΛ1'&νʔϜ͕ӡӦ͢ΔΑ͏ͳߏਤ • ޮՌͷଌఆΛߦ͏ͨΊͷࢦඪ୳͠ • ΠϯφʔιʔεͷҙٛӨڹΛఆྔతʹଌΔʢ4UBSͳͲʁʣ
ԿΑΓֶΜͰ࣮ફ͖͢ʂ νʔϜτϙϩδʔ Πϯφʔιʔεύλʔϯ ίϛϡχςΟ ͦͷଞ༷ʑͳ ઌਓͷ࣮ફྫ͋Γ
·ͱΊ
·ͱΊ • 1MBUGPSN&OHJOFFSJOHͷऔΓΈΛଅਐ্͍ͯ͘͠Ͱɺ ΠϯφʔιʔεʹײԽ͞Εɺཱ྆ͤ͞ΔܗͰൃ ˠʮLBHUPPMTʯͱʮLBHJTNʯ • 1MBUGPSN&OHJOFFSJOHͱΠϯφʔιʔεͱͷΈ߹ΘͤʹΑΓɺ
αΠϩԽͷղফंྠͷ࠶ൃ໌ͷ੍͕ظͰ͖Δ • Πϯφʔιʔε׆ಈ1'&͕ӡӦ͢ΔίϛϡχςΟ ˠଟ͘ͷਓΛר͖ࠐΈͳ͕ΒɺࣗൃతͳจԽΛৢ͢Δ • ઌਓͷφϨοδͱίϛϡχςΟ͔Βֶͼɺ࣮ફ͢Δʂ
5IBOLZPVʂ