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
CI/CD/インフラ勉強会Vol4 Amazon ECS編 Part1
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shohei Kobayashi
June 26, 2022
Programming
0
170
CI/CD/インフラ勉強会Vol4 Amazon ECS編 Part1
Amazon ECS回です。あまりにやること多いので二つに分けました。
今回は仮想化のおさらいをしてからECSのはじめだけ。
Shohei Kobayashi
June 26, 2022
Tweet
Share
More Decks by Shohei Kobayashi
See All by Shohei Kobayashi
非同期処理実行基盤 Delayed脱出 → Solid Queue完全移行への旅路。
srockstyle
3
2.8k
熊でもわかるFIDO2
srockstyle
0
170
熊でもわかるCI/CD/モダンインフラ Vol3 AWS CDK
srockstyle
0
420
熊でもわかるCI/CDモダンインフラ Github Action編
srockstyle
0
410
熊でもわかるCI/CD/モダンインフラVol1:用語を覚えよう編
srockstyle
0
600
Chefとnginxで作るPHPアプリケーションのReliable Blue Green Deployment
srockstyle
6
25k
Other Decks in Programming
See All in Programming
Head of Engineeringが現場で回した生産性向上施策 2025→2026
gessy0129
0
210
株式会社 Sun terras カンパニーデック
sunterras
0
2k
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
130
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
350
SourceGeneratorのマーカー属性問題について
htkym
0
130
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
150
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
150
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
610
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.5k
CSC307 Lecture 14
javiergs
PRO
0
450
15年目のiOSアプリを1から作り直す技術
teakun
1
600
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
480
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
0
5.1k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Typedesign – Prime Four
hannesfritz
42
3k
For a Future-Friendly Web
brad_frost
183
10k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
190
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Bash Introduction
62gerente
615
210k
Code Reviewing Like a Champion
maltzj
528
40k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Transcript
"NB[PO&$4ฤ1BSU &MBTUJD$POUBJOFS4FSWJDFͱ'BSHBUF ۽ͰΘ͔Δ$*$%ϞμϯΠϯϑϥ
զ ΤϯδχΞྺɿ͘Β͍ ۀքɿ8FC͔ͬ ݴޠɿ3VCZͱ3BJMT 1)11ZUIPO1FSM͘Β͍ʢΕ͕ͪʣ Πϯϑϥ͖ͬͯͨྺʹΤϯδχΞྺ %/4αʔόͱ͔ϝʔϧαʔό࡞ͬͯ·ͨ͠ ࠷ۙͬͺΒ3BJMT͍ͷϑϦʔϥϯεɻ ͖ͳ%/4αʔόͷϛυϧΣΞɿEKCEOT ͖ͳϝʔϧαʔόͷϛυϧΣΞɿ2NBJM
͖ͳ.Z42-ͷίϚϯυTIPXTMBWFTUBUVT ͖ͳ"84ϓϩμΫτ&MBTUJD.BQ3FEVDF ͖ͳ($1ϓϩμΫτ$MPVESVO ͖ͳ$*$%πʔϧ(JUIVC"DUJPO &$4ᘳʹཧղͨ͠ কདྷͷເηΩϡϦςΟΤϯδχΞɻ
$JSDMF$*͍͍ͧʂʂʂʂ
લճ·Ͱͷ͓͞Β͍
$*ͰΔιʔείʔυద༻ϑϩʔجຊ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ։ൃࣗಈɾຊ൪࠷ऴεςοϓͷΈखಈ όοΫΤϯυ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ
σϓϩΠ४උ σϓϩΠ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB όοΫΤϯυ %FWFMPQNFOU 1SPEVDUJPO ։ൃڥNBJOʹQVTIͱಉ࣌ʹσϓϩΠ·Ͱߦ͏ ຊ൪ڥखಈͰσϓϩΠͷΈߦ͏ σϓϩΠ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ
$*ͰΔϑϩʔجຊͦͷ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS σϓϩΠͰߦ͏͜ͱ όοΫΤϯυ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ
σϓϩΠ "NB[PO&MBTUJD$POUBJOFS3FHJTUPSZ &$44FSWJDF5BTLVQEBUF &$45BTL%F fi OJUJPOVQEBUF NJHSBUJPO &$4ͷઃఆΛมߋ͢ΔͷͰ "84$%,5FSSBGPSNͰ ߦ͏͜ͱ͕ଟ͍Ͱ͢
(JUIVC"DUJPO "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ͦΕͧΕͷεςοϓΛZBNMϑΝΠϧͰఆ͍ٛͯ͘͠ όοΫΤϯυ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ
σϓϩΠ४උ σϓϩΠ UFTUZBNM MJOUZBNM CSBLFNBOZBNM EFQMPZZBNM CVJMEZBNM YAML YAML YAML YAML YAML
"NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB 4ZTUFN.BOBHFS4FDSFU.BOBHFS όοΫΤϯυ ։ൃऀͷϩʔΧϧ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB όοΫΤϯυ
%FWFMPQNFOU 1SPEVDUJPO EFWUT QSPEUT σϓϩΠ४උػີใΛڥ༻ҙ ։ൃ༻ػີใ ຊ൪༻ػີใ
"NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ΞϓϦέʔγϣϯଆڥมͰಡΈࠐΉΑ͏ʹ͓ͯ͘͠ όοΫΤϯυ ։ൃऀͷϩʔΧϧ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB όοΫΤϯυ
%FWFMPQNFOU 1SPEVDUJPO EFWUT QSPEUT σϓϩΠ४උΞϓϦͷඞཁͳใڥมͰ ։ൃ༻ػີใ ຊ൪༻ػີใ
σϓϩΠ४උ"84$%,ͰجຊϦιʔεΛ࡞ ίʔυͰ"84ϦιʔεΛఆٛɻඞཁͳϦιʔεΛ࡞͓ͬͯ͘ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ
cdk deploy WQDTUBDLUT SETTUBDLUT 5ZQF4DSJQUΛ $MPVE'PSNBUJPOͷελοΫʹม Ϧιʔεఆٛʂ CloudFormation ֤छϦιʔε࡞ AWS Local
σϓϩΠ४උ(JUIVC"DUJPOͰఆٛ EPDLFSίϚϯυҰࣜ·Ͱߦ͍ɺ"84ͷDPOUBJOFS3FHJTUPSZʹQVTI·ͰΛ͓ͬͯ͘ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ EPDLFSCVJME EPDLFSUBH EPDLFSQVTI
EPDLFSCVJME EPDLFSUBH EPDLFSQVTI "NB[PO&MBTUJD$POUBJOFS3FHJTUPSZ
σϓϩΠ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS DELEFQMPZίϚϯυ όοΫΤϯυ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ
σϓϩΠ "NB[PO&MBTUJD$POUBJOFS3FHJTUPSZ &$44FSWJDF5BTLVQEBUF &$45BTL%F fi OJUJPOVQEBUF NJHSBUJPO DELEFQMPZ<ελοΫ໊>
ࠓΔ͜ͱ
Amazon ECS "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ ୯ମςετ
݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ
"NB[PO&$4
&$4ίϯςφ࣮ߦڥ ίϯςφԽ͞ΕͨΞϓϦέʔγϣϯΛಈ͔ͨ͢ΊͷڥҰࣜΛݴ͏ɻ Amazon Elastic Container Registory Amazon Elastic Container Service
ECS Compute Option AWS Fargate AWS LocalZones AWS WaveLength AWS Outposts
༧උࣝɿίϯςφʹ͍ͭͯ
ԾԽͱ Ұͷཧ04্Ͱෳͷ04Λಈ͔͢ख๏ɻ ཧϚγϯ 04 (VFTU04 (VFTU04 (VFTU04 "QQ "QQ "QQ
ཧతʹҰͷཧϚγϯ͕ͩɺ ͦͷ্Ͱࡾͭͷ04͕ىಈ͍ͯ͠Δ
αʔόԾԽͱίϯςφԾԽ ͲͬͪҰͷཧαʔόͷ্ͰࡾͷԾαʔό͕ಈ͍͍ͯΔ ཧϚγϯ 04 (VFTU04 (VFTU04 (VFTU04 #JO-JCT #JO-JCT #JO-JCT
)ZQFSWJTFS ཧϚγϯ 04 #JO-JCT #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ "QQ "QQ "QQ "QQ ,FSOFM ,FSOFM ,FSOFM ,FSOFM ,FSOFM
ߟ͑ํͷҧ͍ ϦιʔεͦͷͷΛԾԽ͢ΔϋΠύʔόΠβʔܕͱɺΞϓϦέʔγϣϯͷശΛ༻ҙ͢ΔΠϝʔδͷίϯςφܕ ϋΠύʔόΠβʔܕ ίϯςφܕ ཧϚγϯ 04 (VFTU04 (VFTU04 (VFTU04 #JO-JCT
#JO-JCT #JO-JCT )ZQFSWJTFS ཧϚγϯ 04 #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ "QQ "QQ "QQ ,FSOFM ,FSOFM ,FSOFM ,FSOFM ,FSOFM #JO-JCT "QQ
"NB[PO&$ &$ϋΠύʔόΠβʔܕ ϋΠύʔόΠβʔܕ ίϯςφܕ ཧϚγϯ 04 (VFTU04 (VFTU04 (VFTU04 #JO-JCT
#JO-JCT #JO-JCT )ZQFSWJTFS ཧϚγϯ 04 #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ "QQ "QQ "QQ ,FSOFM ,FSOFM ,FSOFM ,FSOFM ,FSOFM
"NB[PO&$4 &$4ίϯςφܕ ϋΠύʔόΠβʔܕ ίϯςφܕ ཧϚγϯ 04 (VFTU04 (VFTU04 (VFTU04 #JO-JCT
#JO-JCT #JO-JCT )ZQFSWJTFS ཧϚγϯ 04 #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ "QQ "QQ "QQ ,FSOFM ,FSOFM ,FSOFM ,FSOFM ,FSOFM
ίϯςφͷҠ২ੑʹ͍ͭͯ ίϯςφԾԽͷ୯Ґ͕খ͘͞ɺΠϝʔδԽͯ͠ผͷ04ͷҠߦෳָ͕ ཧϚγϯ 04 #JO-JCT #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ
"QQ ཧϚγϯ 04 %PDLFS&OHJOF "QQ"ίϯςφ #JO-JCT "QQ "QQ"ίϯςφ "QQ"Πϝʔδ "QQ#Πϝʔδ "QQ$Πϝʔδ ίϯςφϦϙδτϦ
ίϯςφͷҠ২ੑʹ͍ͭͯ ΠϝʔδΛཧ͢ΔΈΛίϯςφϦϙδτϦͱ͍͏ ཧϚγϯ 04 #JO-JCT #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ
"QQ ཧϚγϯ 04 %PDLFS&OHJOF "QQ"ίϯςφ "QQ"Πϝʔδ #JO-JCT "QQ "QQ"ίϯςφ "QQ#Πϝʔδ "QQ$Πϝʔδ ίϯςφϦϙδτϦ
ίϯςφͷҠ২ੑʹ͍ͭͯ ίϯςφΠϝʔδͷΓͱΓΛQVTIQVMMͱ͍͏ ཧϚγϯ 04 #JO-JCT #JO-JCT #JO-JCT %PDLFS&OHJOF "QQ "QQ
"QQ ཧϚγϯ 04 %PDLFS&OHJOF "QQ"ίϯςφ #JO-JCT "QQ "QQ"ίϯςφ "QQ"Πϝʔδ "QQ#Πϝʔδ "QQ$Πϝʔδ ίϯςφϦϙδτϦ EPDLFSQVMM EPDLFSQVTI
"NB[PO&$4 ͋ΒͨΊͯ
&$4ίϯςφ࣮ߦڥ ίϯςφΛ࣮ߦ͢ΔͨΊͷػೳ͕Ұࣜἧ͍ͬͯΔ Amazon Elastic Container Registory Amazon Elastic Container Service
ECS Compute Option AWS Fargate AWS LocalZones AWS WaveLength AWS Outposts
&$3ΠϝʔδΛཧ͢ΔίϯςφϦϙδτϦ "84ͷΈʹίϯςφΛΔࡍେମ&$3Λར༻͢Δɻ Amazon Elastic Container Registory Amazon Elastic
&$4ίϯςφ࣮ߦڥɿ1BSU &$4ΛͬͯίϯςφΛىಈ͢Δʹ5BTL%F fi OJUJPOΛॻ͘ඞཁ͕͋Δɻ %PDLFS fi MFͱ·ͨҧ͏ఆٛΛ৭ʑ͢Δඞཁ͕͋Δ Amazon Elastic Container
Registory Amazon Elastic Container Service ECS Compute Option AWS Fargate AWS LocalZones AWS WaveLength AWS Outposts 5BTL%F fi OJUJPO 5BTL%F fi OJUJPO 5BTL%F fi OJUJPO
&$4ίϯςφ࣮ߦڥɿ1BSU &$4ΛͬͯίϯςφΛىಈ͢Δʹ5BTL%F fi OJUJPOΛॻ͘ඞཁ͕͋Δɻ %PDLFS fi MFͱ·ͨҧ͏ఆٛΛ৭ʑ͢Δඞཁ͕͋Δ Amazon Elastic Container
Registory Amazon Elastic Container Service ECS Compute Option AWS Fargate AWS LocalZones AWS WaveLength AWS Outposts 5BTL%F fi OJUJPO 5BTL%F fi OJUJPO 5BTL%F fi OJUJPO
5BTL%F fi OJUJPOʹॻ͘͜ͱ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS "84ͷઃఆͷఆٛΛ৭ʑهड़͢Δඞཁ͕͋Δɻ όοΫΤϯυ "NB[PO&MBTUJD$POUBJOFS3FHJTUPSZ w ىಈλΠϓ
w λεΫఆ໊ٛ w λεΫϩʔϧʢίϯςφΛ࣮ߦ͢Δ*".ϩʔϧ w ωοτϫʔΫϞʔυʢ71$ͱ͔બͿʣ w 04ϑΝϛϦʔʢ8JOEPXT-JOVYʣ w λεΫͷαΠζʢίϯςφͷϦιʔε$16ͱ͔ϝϞϦͱ͔ʣ w ίϯςφ໊ w ίϯςφͷΠϝʔδ໊ w ϙʔτϚοϐϯά w ͦͷଞίϯςφͷઃఆ ଞʹ͍Ζ͍Ζ
&$4ίϯςφىಈλΠϓ &$ܕͱ'BSHBUFܕ͕͋Γɺϓϥεͦͷଞతѻ͍Ͱ͍͔ͭ͋͘Δɻ ECS Compute Option AWS Fargate AWS LocalZones AWS
WaveLength AWS Outposts EC2
&$4ίϯςφىಈλΠϓ1BSU ىಈλΠϓΛܾΊͨΒɺ࣍ͲͪΒͰىಈ͢Δ͔Λܾఆ͢Δɻ ECS Compute Option AWS Fargate AWS LocalZones AWS
WaveLength AWS Outposts EC2 ECS Service ECS Task
ࠓͷ·ͱΊ
·ͱΊ ԾԽʹ͍ͭͯ ཧతͳίϯϐϡʔλϦιʔεͷ্ʹԾతʹෳͷϚγϯΛ࡞͢Δػೳ ϋΠύʔόΠβʔܕཧϦιʔεΛ͚ΔʢΧʔωϧ͝ͱׂʣ ίϯςφܕΞϓϦέʔγϣϯͷശΛͭ͘ΔʢΧʔωϧڞ༗ʣ ίϯςφܕΠϝʔδͱ͍͏୯ҐͰ࣋ͪӡͼͰ͖Δ
ίϯςφΠϝʔδΛཧ͢ΔΈΛϦϙδτϦͱ͍͏ &$4 5BTL%F fi OJUJPOͰ"84ͷઃఆΛ͍Ζ͍Ζ͢Δ ىಈλΠϓ'BSHBUF&$ͦͷଞ͍͔ͭ͋͘Δ ࣮ߦλΠϓ&$44FSWJDFܕͱ&$45BTLܕ͕͋Δɻ
࣍ճ &$4ͷىಈλΠϓͱ࣮ߦܕʹ͍ͭͯઆ໌͢ΔΑ ECS Compute Option AWS Fargate AWS LocalZones AWS
WaveLength AWS Outposts EC2 ECS Service ECS Task