Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
20210628_JAWSUG-container-19-final.pdf
iselegant
June 28, 2021
Technology
2
2.3k
20210628_JAWSUG-container-19-final.pdf
iselegant
June 28, 2021
Tweet
Share
More Decks by iselegant
See All by iselegant
コンテナ・サーバレスがもたらす世界と開発者がAWS上で取り組むべきこと / Containers and Serverless Technology for Developers
iselegant
9
12k
SRE on AWSのことはじめ / SRE on AWS
iselegant
8
3k
AWSにおけるアプリチームとインフラチームのコワーク設計 / Co-working Design about App and Infra on AWS
iselegant
5
3.9k
why-aws.pdf
iselegant
18
13k
「そのコンテナ、安全ですか?」〜AWS x DevSecOpsで実践するコンテナセキュリティ〜 / Is that container safe?
iselegant
16
4k
Bastion ~ AWS Fargateで実現するサーバーレスな踏み台設計 / Bastion using AWS Fargate
iselegant
16
12k
Copilotによるお手軽3分ECSクッキング / The Cooking of AWS Copilot
iselegant
9
1.5k
金融系サービスで ECS/Fargateを設計するということ
iselegant
23
11k
金融サービス向けに理想のCI/CDを追い求めたお話
iselegant
25
30k
Other Decks in Technology
See All in Technology
雑な攻撃からELBを守る一工夫 +おまけ / Know-how to protect servers from miscellaneous attacks
hiroga
0
520
Implementing Kubernetes operators in Java with Micronaut - TechWeek Java Summit 2022
alvarosanchez
0
120
20220622_FinJAWS_あのときにAWSがあったらこうできた
taketakekaho
0
110
【SAP知らない人向け】SAP on AWS 個人学習メモ/sap-on-aws-study
emiki
3
2k
RDRA + JavaによるレジャーSaaSプロダクトの要件定義と実装のシームレスな接続
jjebejj
PRO
3
710
ソフトウェアライセンス 2022 / Software License 2022
cybozuinsideout
PRO
1
1.1k
What's new in Vision
satotakeshi
0
210
Modern Android dependency injection
hugovisser
1
130
Introduction to MLOps
asei
2
320
JAWS-UG re:Habilitaion 報告 / JAWS-UG OITA rehabilitation
hiranofumio
0
130
Azure Arc Virtual MachineとAzure Arc Resource Bridge / VM provisioning through Azure portal on Azure Stack HCI (preview)
sashizaki
0
140
JJUG2022_spring_Keycloak (Red Hat Single Sign-on)
tinoue
0
200
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
11
4.7k
Ruby is Unlike a Banana
tanoku
91
9.2k
Done Done
chrislema
174
14k
How STYLIGHT went responsive
nonsquared
85
3.9k
We Have a Design System, Now What?
morganepeng
35
3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
655
120k
The MySQL Ecosystem @ GitHub 2015
samlambert
238
11k
Navigating Team Friction
lara
175
11k
Producing Creativity
orderedlist
PRO
334
37k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
100
5.9k
How GitHub Uses GitHub to Build GitHub
holman
465
280k
The Mythical Team-Month
searls
209
39k
Transcript
JAWS-UG コンテナ支部 #19 新井 雅也 ✕ 濱田考治 ΞϓϦέʔγϣϯ։ൃऀ๋͙৽͍͠ίϯςφϫʔΫϩʔυͷܗ App Runner
Copilot
App Runner Copilot ຊͷςʔϚͱΰʔϧ ɾ͜ΕΒαʔϏεͷಛΛΔ ɾͲͷΑ͏ͳϢʔεέʔεʹϚον͢Δ͔ϙΠϯτΛཧղ͢Δ
৽Ҫ խ JTFMFHBOU גࣜձࣾଜ૯߹ݚڀॴ ϑϧελοΫσΟϕϩούʔ "1/"NCBTTBEPS "1/"--"84$FSUJGJDBUJPO&OHJOFFS ᖛా ߟ࣏ ϋϚίʔ
Ϋϥεϝιουגࣜձࣾ ."% .PEFSO"QQMJDBUJPO%FWFMPQNFOU νʔϜϚωʔδϟʔ "1/"NCBTTBEPS NTZ IBNBLP ϓϨθϯ ୲ σϞ ୲
Е σϞͷ४උɺ͓ئ͍͠·͢ ʼϋϚίʔ͞Μ
App Runner Copilot ຊͷςʔϚ վΊͯ
App Runner Copilot ຊͷςʔϚ ·ͣ ͪ͜Β͔Β
Copilot ຊͷςʔϚ ɾ"84্ʹίϯςφΛσϓϩΠ ͢ΔͨΊͷίϚϯυϥΠϯπʔϧ ɾΞϓϦ։ൃʹϑΥʔΧε͍ͨ͠ Ϣʔβ͚ͷπʔϧ
Copilot ຊͷςʔϚ ɾ"84্ʹίϯςφΛσϓϩΠ ͢ΔͨΊͷίϚϯυϥΠϯπʔϧ ɾΞϓϦ։ൃʹϑΥʔΧε͍ͨ͠ Ϣʔβ͚ͷπʔϧ
"84ͰϚωʔδυͳίϯςφαʔϏε
Amazon ECS AWS Fargate (コントロールプレーン) (データプレーン) "84ͰϚωʔδυͳίϯςφαʔϏε
Amazon ECS AWS Fargate (コントロールプレーン) (データプレーン) "84ͰϚωʔδυͳίϯςφαʔϏε ϓϩμΫγϣϯϨσΟͳίϯςφڥߏங ׂͱΠϯϑϥ໘ͷ४උ͕ଟ͍
&$4Y'BSHBUFͰ ඞཁͳΠϯϑϥ࡞ۀΛ ݟ͍͖ͯ·͢ɻ
ҎԼΛલఏͱ͠·͢ɻ ίϯςφΞϓϦ͕४උࡁΈ "84ΞΧϯτௐୡࡁΈ σϓϩΠ͢Δͷ 8FCΞϓϦ
71$ͷ࡞ 4UFQ
TVCOFUͷ࡞ 4UFQ Ϛϧν ";ߏΛΉલఏͱͯ͠ɺ 1VCMJDTVCOFUͱ 1SJWBUFTVCOFUΛ ͦΕͧΕͭͣͭ࡞ɻ
Πϯλʔωοτ(8ͱ ϧʔτςʔϒϧͷ࡞ 4UFQ 1VCMJD4VCOFUͷσϑΥϧτϧʔτΛ Πϯλʔωοτ(8ʹ͘Α͏ʹ͢Δɻ
"-#ͷ࡞ 4UFQ -#ɺϦεφʔɺλʔήοτάϧʔϓ࡞ɻ λʔήοτάϧʔϓͷͿΒԼ͛ઌͳ͠ɻ "-#༻ηΩϡϦςΟάϧʔϓΛ࡞ɻ
&$3ͷ࡞ 4UFQ ࡞ͨ͠ίϯςφΞϓϦΛ &$3ʹϓογϡɻ
$MPVE8BUDI -PH(SPVQͷ࡞ 4UFQ ίϯςφͷϩάग़ྗઌͱͯ͠༻ҙɻ
&$4Ϧιʔε࡞ 4UFQ ϋϚΓͲ͜Ζ͕Ұ൪ଟ͍࡞ۀɻ ؔ࿈ *".ϩʔϧɺ&$4Ϋϥελʔɺ &$4λεΫఆٛɺ&$4αʔϏεΛ࡞ɻ
ΞϓϦσϓϩΠ🚀 4UFQ 'BSHBUF্ʹల։͞Εͨ ίϯςφ8FCΞϓϦͷಈ࡞֬ೝΛߦ͏ɻ
71$ͷ ࡞ 4VCOFUͷ ࡞ *(8ͱϧʔτ ςʔϒϧ࡞ "-#ͷ ࡞ &$3ͷ ࡞
$8-PHTͷ ࡞ &$4ͷ ࡞ ΞϓϦ σϓϩΠ Step.1 Step.2 Step.3 Step.4 Step.5 Step.6 Step.7 Step.8 ߏஙϑϩʔΛ͓͞Β͍ͯ͠ΈΔͱɾɾɾ
71$ͷ ࡞ 4VCOFUͷ ࡞ *(8ͱϧʔτ ςʔϒϧ࡞ "-#ͷ ࡞ &$3ͷ ࡞
$8-PHTͷ ࡞ &$4ͷ ࡞ ΞϓϦ σϓϩΠ Step.1 Step.2 Step.3 Step.4 Step.5 Step.6 Step.7 Step.8 ߏஙϑϩʔΛ͓͞Β͍ͯ͠ΈΔͱɾɾɾ ɾϦεφʔͷ࡞ ɾλʔήοτάϧʔϓͷ࡞ ɾ"$.ʹΑΔূ໌ॻൃߦ FUD ɾ&$4λεΫఆٛͷ࡞ ɾ&$4Ϋϥελʔͷ࡞ ɾ&$4αʔϏεͷ࡞
71$ͷ ࡞ 4VCOFUͷ ࡞ *(8ͱϧʔτ ςʔϒϧ࡞ "-#ͷ ࡞ &$3ͷ ࡞
$8-PHTͷ ࡞ &$4ͷ ࡞ ΞϓϦ σϓϩΠ Step.1 Step.2 Step.3 Step.4 Step.5 Step.6 Step.7 Step.8 ߏஙϑϩʔΛ͓͞Β͍ͯ͠ΈΔͱɾɾɾ ɾϦεφʔͷ࡞ ɾλʔήοτάϧʔϓͷ࡞ ɾ"$.ʹΑΔূ໌ॻൃߦ FUD ɾ&$4λεΫఆٛͷ࡞ ɾ&$4Ϋϥελʔͷ࡞ ɾ&$4αʔϏεͷ࡞ ͦΕͳΓʹ"84Ϧιʔε४උ͕ ඞཁͱͳͬͯ͠·͏ ɾΠϯϑϥεΩϧηοτ ɾߏஙͷϦʔυλΠϜ ɾϓϩμΫγϣϯϨσΟΛҙࣝͨ͠ઃܭ
Е ։ൃऀ ϏδωεʹՁΛͨΒ͢Ξ ϓϦέʔγϣϯ։ൃʹूத͠ ͯɺ͙͢ʹσϓϩΠ͍ͨ͠ɻ
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ $-*ϕʔεͰ͍͔ͭ͘ ͷ࣭ʹ͑Δ ϚχϡϑΣετʹͯ ΞʔΩςΫνϟΛఆٛ 3FGIUUQTBXTHJUIVCJPDPQJMPUDMJEPDTHFUUJOHTUBSUFEGJSTUBQQUVUPSJBM
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ $MPVE'PSNBUJPO͕ ཪͰՔಇͯ͠ ϦιʔεΛ࡞
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ ίϯςφͷσϓϩΠ·Ͱ Ұؾ௨؏Ͱ࣮ߦ͞ΕΔ $MPVE'PSNBUJPO͕ ཪͰՔಇͯ͠ ϦιʔεΛ࡞
Copilot $PQJMPU·ͱΊ ɾ "84্ʹίϯςφΛσϓϩΠ ͢ΔͨΊͷίϚϯυϥΠϯπʔϧ ɾΞϓϦ։ൃʹϑΥʔΧε͍ͨ͠ Ϣʔβ͚ͷπʔϧ
App Runner Copilot ຊͷςʔϚ ࣍ʹͪ͜Β ࠶ܝ
App Runner ຊͷςʔϚ ɾେنͳຊ൪ΣϒΞϓϦ։ൃΛ ༰қʹ͢ΔϑϧϚωʔδυܕαʔϏε ɾίϯςφ PSιʔείʔυ͔Βɺ ։ൃऀ͕؆୯͔ͭਝʹσϓϩΠ
App Runner ຊͷςʔϚ ɾେنͳຊ൪ΣϒΞϓϦ։ൃΛ ༰қʹ͢ΔϑϧϚωʔδυܕαʔϏε ɾίϯςφ PSιʔείʔυ͔Βɺ ։ൃऀ͕؆୯͔ͭਝʹσϓϩΠ Е ։ൃऀ
ʮϑϧʯϚωʔδυܕʁʁʁ
ͨͱ͑$PQJMPU͔ΒϦιʔε͕࡞ΒΕͨͱͯ͠ɺ ΠϯϑϥϦιʔεͱཧ͕ͳ͘ͳΔΘ͚Ͱͳ͍
ͨͱ͑$PQJMPU͔ΒϦιʔε͕࡞ΒΕͨͱͯ͠ɺ ΠϯϑϥϦιʔεͱཧ͕ͳ͘ͳΔΘ͚Ͱͳ͍ 負荷分散、オートスケール、 セキュリティ、ドメイン管理、 証明書、モニタリング、 ロギング、CI/CD、etc・・・
ͨͱ͑$PQJMPU͔ΒϦιʔε͕࡞ΒΕͨͱͯ͠ɺ ΠϯϑϥϦιʔεͱཧ͕ͳ͘ͳΔΘ͚Ͱͳ͍ "84Ϧιʔεͷӡ༻Ҏલͱͯ͠Δ ɾͬͱγϯϓϧʹѻ͍͍ͨϢʔεέʔεʹ͔ͳ͍ ɾͦͦϦιʔεͷଘࡏΛؾʹͨ͘͠ͳ͍ ɾΦʔτεέʔϧɺ$*$%ɺ5-4ূ໌ॻൃߦΦϓγϣϯ
"QQ3VOOFSʹΑΓ େͷΠϯϑϥϦιʔε͕நԽ͞ΕΔ
"QQ3VOOFSʹΑΓ େͷΠϯϑϥϦιʔε͕நԽ͞ΕΔ
"QQ3VOOFSʹΑΓ େͷΠϯϑϥϦιʔε͕நԽ͞ΕΔ
"QQ3VOOFSʹΑΓ େͷΠϯϑϥϦιʔε͕நԽ͞ΕΔ ಉ࣮࣌ߦ ࠷େ࠷খαΠζ ϔϧενΣοΫઃఆ $*$%ઃఆͱͯ͠ ίϯςφϕʔε PSίʔυϕʔε͕ બՄೳ
"QQ3VOOFSʹΑΓ େͷΠϯϑϥϦιʔε͕நԽ͞ΕΔ αʔϏεར༻γϯϓϧ
App Runner "QQ3VOOFS·ͱΊ ɾେنͳຊ൪ΣϒΞϓϦ։ൃΛ ༰қʹ͢ΔϑϧϚωʔδυܕαʔϏε ɾίϯςφ PSιʔείʔυ͔Βɺ ։ൃऀ͕؆୯͔ͭਝʹσϓϩΠ
App Runner Copilot ຊͷςʔϚ ࠶ܝ
App Runner Copilot ຊͷςʔϚ ࠶ܝ αʔϏε πʔϧ
App Runner Copilot ຊͷςʔϚ ࠶ܝ πʔϧ $PQJMPUͰ"QQ3VOOFSΛ࡞Δ͜ͱͰ͖Δ Е ։ൃऀ $PQJMPUͷ։ൃऀମݧΛܧଓ
αʔϏε
Е ։ൃऀ ϏδωεʹՁΛͨΒ͢Ξ ϓϦέʔγϣϯ։ൃʹूத͠ ͯɺ͙͢ʹσϓϩΠ͍ͨ͠ɻ ΠϯϑϥϦιʔεཧՄೳͳ ݶΓۃখԽ͍ͨ͠ɻ
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ "QQ3VOOFSͰ
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ $-*ϕʔεͰ͍͔ͭ͘ ͷ࣭ʹ͑Δ ϚχϡϑΣετʹͯ ΞʔΩςΫνϟΛఆٛ "QQ3VOOFSͰ Request-Driven Web
Service Request-Driven Web Service web-api-svc
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ $MPVE'PSNBUJPO͕ ཪͰՔಇͯ͠ ϦιʔεΛ࡞ "QQ3VOOFSͰ
$PQJMPUΛ͏͜ͱͰɺ$-*ϕʔεͰҰؾʹΞϓϦσϓϩΠ·ͰͰ͖Δ Е ։ൃऀ ίϯςφͷσϓϩΠ·Ͱ Ұؾ௨؏Ͱ࣮ߦ͞ΕΔ $MPVE'PSNBUJPO͕ ཪͰՔಇͯ͠ ϦιʔεΛ࡞ ※AWS Copilotの仕様上、現状ではVPCや
subnet, ECS Clusterなどが作成される。 課⾦に影響するようなリソースはなく、 App Runnerを利⽤する上ではこれら リソースは利⽤されない。 "QQ3VOOFSͰ
Е σϞͷ༷ࢠΛݟͯΈ·͠ΐ͏ɻ
"QQ3VOOFS͕ࣗͨͪͷϢʔεέʔεʹ Ϛον͢Δ͔ݕ౼͢Δ্ͰͷߟྀϙΠϯτ ⚠ 71$ʹ"QQ3VOOFSΠϯελϯε࡞Εͳ͍ ⚠ ΠϯελϯεͷϦιʔε੍ݶ͋Γ W$16ϝϞϦPS(# ⚠ ϦΫΤετ੍ݶͳ͠ͰΠϯλʔωοτެ։͞ΕΔ
ˠݱঢ়8"'ͳͲͷઃఆͰ͖ͳ͍ ⚠ εέʔϧμϯ࣌ͷ࠷খ ˠ࠷ىಈ͢ΔͷͰίετৗʹൃੜ͢Δ 8"'ͷΞλονʹ͍ͭͯɺ"QQ3VOOFSͷ*TTVF IUUQTHJUIVCDPNBXTBQQSVOOFSSPBENBQJTTVFT ͱͯ͠औΓ্͍͛ͯ·͢ɻ ͦͷଞͷ"QQ3VOOFS༷ެࣜυΩϡϝϯτ IUUQTEPDTBXTBNB[PODPNKB@KQBQQSVOOFS Λ֬͝ೝ͍ͩ͘͞ɻ
IUUQTXXXBQQSVOOFSXPSLTIPQDPN
App Runner Copilot ຊͷ·ͱΊ ϑϧϚωʔ δυܕ αʔϏε πʔϧ Е ։ൃऀ
$PQJMPUͷ։ൃऀମݧΛҡ࣋Ͱ͖Δ ҎԼΛͱʹϢʔεέʔεʹϚον͢Δ͔ݕ౼ ⚠ 71$ʹ"QQ3VOOFSΠϯελϯε࡞Εͳ͍ ⚠ ΠϯελϯεͷϦιʔε͋Γ ⚠ ϦΫΤετ੍ݶͳ͠ͰΠϯλʔωοτެ։͞ΕΔ ⚠ εέʔϧμϯ࣌ͷ࠷খ
΄Μͷ͚ͩ͢͜͠એ͍ͤͯͩ͘͞͞💦 ʘ *OGSBTUSVDUVSFBT$PEFʹؔ͢Δٕज़ॻΛࣥච͠·ͨ͠ʗ ରಡऀ ɾ*B$ࣗମʹڵຯΛ͓࣋ͪͷํ ɾ৽͍͠*B$ʹ͍ͭͯΓ͍ͨํ ɾ͜Ε͔Β*B$ʹऔΓ·ΕΑ͏ͱ͍ͯ͠Δํ ɾ"84ͰΠϯϑϥετϥΫνϟΛཧ͍ͯ͠Δํ ɾطଘͷ*B$αʔϏεͰΈΛ͍࣋ͬͯΔํ 📣BOOTHで好評販売中
ダウンロード版(PDF)が 期間限定で値下げ中です \1,500 → \1,300
Е ͝ਗ਼ௌ͍͖ͨͩʹ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ Thank you !