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
AWS ECS の説明 /aws-ecs-introduction
Search
yutachaos
October 01, 2018
Technology
0
120
AWS ECS の説明 /aws-ecs-introduction
サポーターズ下記勉強会用資料
https://supporterzcolab.com/event/522/
yutachaos
October 01, 2018
Tweet
Share
More Decks by yutachaos
See All by yutachaos
JenkinsのJobを CronJobに移した話 /The story of moving Jenkins Job to CronJob
yutachaos
0
250
History of Infrastructure as a Code testing
yutachaos
2
5.5k
AWS CodePipeline 初めて触って少しハマった話 / A story that challenged AWS CodePipeline for the first time
yutachaos
0
120
gRPC in スタディサプリENGLISH / gRPC in StudySapuri ENGLISH
yutachaos
0
3k
AKS,EKS,GKEコマンド比較してみた /compared AKS, EKS, GKE command
yutachaos
2
2.5k
Docker + Jenkinsでバッチ実行 / Using Docker and Jenkins execution batch
yutachaos
0
280
Spring Batchの紹介
yutachaos
0
300
非エンジニア向けMarkdown 勉強会
yutachaos
1
450
Circle CI 入門
yutachaos
0
750
Other Decks in Technology
See All in Technology
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
540
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
14k
EMからICへ、二周目人材としてAI全振りのプロダクト開発で見つけた武器
yug1224
4
410
プロジェクトマネジメントをチームに宿す -ゼロからはじめるチームプロジェクトマネジメントは活動1年未満のチームの教科書です- / 20260304 Shigeki Morizane
shift_evolve
PRO
1
120
AIに視覚を与えモバイルアプリケーション開発をより円滑に行う
lycorptech_jp
PRO
1
800
男(監査)はつらいよ - Policy as CodeからAIエージェントへ
ken5scal
5
730
クラウド時代における一時権限取得
krrrr38
1
170
Kaggleの経験が実務にどう活きているか / kaggle_findy
sansan_randd
5
770
Kaggleで鍛えたスキルの実務での活かし方 競技とプロダクト開発のリアル
recruitengineers
PRO
1
150
AIエンジニア Devin と歩む、自律型運用プロセスの構築
a2ito
0
690
「ストレッチゾーンに挑戦し続ける」ことって難しくないですか? メンバーの持続的成長を支えるEMの環境設計
sansantech
PRO
1
320
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
190
It's Worth the Effort
3n
188
29k
How to make the Groovebox
asonas
2
2k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
GraphQLとの向き合い方2022年版
quramy
50
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
A better future with KSS
kneath
240
18k
Documentation Writing (for coders)
carmenintech
77
5.3k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
430
How GitHub (no longer) Works
holman
316
140k
Transcript
AWS ECS
ࣗݾհ • ଜ༐ଠ • SREΤϯδχΞ • ϓϩάϥϛϯάݴޠ • Java, node,
PHP, Ruby, Go • ීஈAWSΛར༻ͨ͠γεςϜͷӡ༻ɺӡ༻վળͱ͔ͬͯ·͢ɻ • ࠷ۙEnvoyΛ͍ͬͯ͡·ͨ͠ɻ • AWS Certificated Solutions Architect • AWS Certificated DepOps Engineer
Agenda • Containerٕज़ʹ͍ͭͯͷ͓͞Β͍ • ECSʹ͍ͭͯ • ECSͷ֓೦ʹ͍ͭͯ
ContainerͬͯԿʁ
• ߓʹ͋ΔΞϨ • Container ʹ DockerͰͳ͍ɻ • DockerίϯςφܕԾԽͷ࣮ͷҰͭ • DockerΧʔωϧͱcgroupsͳͲͷٕज़Λ
Έ߹ΘͤͯɺΞϓϦέʔγϣϯͱϥϯλΠϜ ࣮ߦڥΛ·ͱΊͯ͢Δٕज़ • ίϯςφϓϩηε ͬ͘͟Γͱͨ͠ղઆ
• ΞϓϦέʔγϣϯͱ࣮ߦڥΛҰͭʹ·ͱΊ Δ͜ͱͰ։ൃͱӡ༻νʔϜ͕εϜʔζʹӡ༻ ग़དྷΔ • e.g. ϩʔΧϧͱຊ൪Ͱಉ͡Dockerfile͑ Δ!ɺΠϯϑϥνʔϜ͕Dockerfile࡞ͬͯɺ ։ൃνʔϜʹͤΔʂٯ·ͨવΓ Կ͕ྑ͍ͷʁ
• Elastic Container Serviceͷུ • AWS͕ఏڙ͢ΔίϯςφΦʔέετϨʔ γϣϯπʔϧ • e.g. kubernates,
docker swarmͱ͔ • Docker͚ͩͰग़དྷͳ͍ίϯςφͷ Scaling, ஔ, ཧΛߦ͏αʔϏε ECSʹ͍ͭͯ
ECS overview EC2 Launch type
• ECR • Elastic Container RegistryͷུɺAWS্ͰϚωʔδυʹ ӡ༻͞ΕΔɺDocker imageΛอଘ͢ΔRegistry • Cluster
• Container͕࣮ࡍʹ࣮ߦ͞ΕΔEC2Πϯελϯεͷू߹ ମ • Service • Task definitionΛͱʹͯ͠࡞͞ΕͨTaskΛ͍ͭ͘ى ಈ͢Δ͔ɺͲͷΑ͏ʹஔ͢Δͷ͔ɺͲͷϩʔυόϥϯ αʔܦ༝Ͱ௨৴͢Δ͔ͷઃఆɻTask definitionͱ1:1Ͱ ઃఆ͢Δ ༻ޠ1
• Task definition • Containerͷ࣮ߦ͢Δܗ • Task • Task definitionΛͱʹͯ͠࡞͞Εͨ
Containerͷ࣮ଶ ༻ޠ2
Task Definitionʹ͍ͭͯ • ECS্Ͱ࣮ߦ͢ΔContainerͷઃఆ • EC2ͱFargateλΠϓ͕͋Δ • ࣮ߦͤ͞Δcontainerͷimage,ར༻͢Δ ڥมɺportͷઃఆͳͲΛߦ͏
Serviceʹ͍ͭͯ • ECS্Ͱ࣮ߦ͢ΔTaskʹ͍ͭͯͷ·ͱΊΔઃఆ • Containerͷಈ͔͢ɺInstanceͷTaskஔ ઓུ • Load balancerͷport mappingͳͲΛ୲͏ɻ
ECS agent • EC2্Ͱಈ͘ɺECSͷcontainerͷঢ়ଶΛѲ͢Δ agent • ͜ͷagentࣗମdockerͰEC2ͷதͰಈ͍͍ͯΔ • EC2 typeͷ߹ɺ͜ͷECS
agentΛEC2ىಈ࣌ʹಈ͘ Α͏ʹͯ͠Clusterʹొ͢Δ
Ϣʔεέʔε Rails appΛECSͰಈ͔͢߹ • Rails appͷimageΛઃఆͨ͠Task definitionΛ࡞ • Load balancerΛ͚ͭͨServiceΛ࡞͢Δ
Sample
ղઆ • Route53Λར༻ͯ͠domainΛઃఆ • ௨৴ALBܦ༝ͰContainerʹૹΔ • ApplicationContainerͰ࡞ɺECSͰε έʔϦϯάͷཧ
Fargate launch typeʹ͍ͭͯ • ECSʹ̎ͭͷlaunch type EC2 launch typeͱ Fargate
launch type͕͋Δɻ • EC2 launch typeContainerΛಈ͔ͨ͢ΊͷEC2Λ ཧ͢Δඞཁ͕͋Δ͕ɺFargate launch typeಈ͔ͨ͢ ΊͷEC2ͷresourceΛAWSଆͰཧͯ͘͠ΕΔɻ • ཧίετ͕ݮΔ • ݸਓతʹ·ͩಋೖͨ͜͠ͱͳ͍ɻ
ECS overview Fargate Launch type
͓ΘΓʹ • ECScluster্ͰserviceͰཧ͞Εͨ container͔ΒΔtaskΛtask definitionΛͱ ʹ࡞͠ɺӡ༻͢Δػೳ • ContainerΛຊ൪ӡ༻͢Δ͜ͱ։ൃɺӡ༻త ͳϦϨʔγϣϯʹʹཱͭ
༨ஊ
Modern Web appΛߟ͑Δͱ ͖ʹศརͳϖʔδ
Twelve-factor-app • https://12factor.net/ • ݩherokuͷ Adam Wiggins͕2011ʹॻ͍ ͨmodernͳSaaSΛ࡞ΔͨΊͷํ๏ • ࣮࣭ContainerΛར༻͢ΔappΛ࡞͢Δͱ
͖ͷํ๏ͷstandardͷҰͭ
Cloud Native landscape • https://landscape.cncf.io/ • CNCF(Cloud Native Computing Foundation)
͕ఏ͍ࣔͯ͠ΔɺCloud NativeͳΞϓϦέʔ γϣϯΛનΊ্͍ͯ͘ͰͷϩʔυϚοϓ
AWS ެࣜͷࢿྉ • ެࣜͷdoc • re:InventAWS Summit, Black beltͷεϥΠ υslideshareɺಈըyoutubeʹଟ্͘
͕͍ͬͯ·͢ɻ • ࠔͬͨΒެ͕ࣜҰ൪!
ྑ͍ Container lifeΛ!