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
higobashi.aws 第1回 AWS re:Invent 2017 報告会 AWS Fa...
Search
Yuji Shimoda
December 14, 2017
Technology
0
1.1k
higobashi.aws 第1回 AWS re:Invent 2017 報告会 AWS Fargate と ECS タスクネットワークのご紹介
2017年12月13日に開催したhigobashi.aws (
https://classmethod.connpass.com/event/72893/
) の発表資料です
Yuji Shimoda
December 14, 2017
Tweet
Share
More Decks by Yuji Shimoda
See All by Yuji Shimoda
チームの課題をサーバーレスで解決 Backlog と Zendesk の繋ぎ方
yuji_shimoda
1
2k
チームの課題をサーバーレスで解決 プロジェクト管理ツール「Backlog」とカスタマーサービスシステム「Zendesk」の繋ぎ方
yuji_shimoda
0
2.4k
Higobashi.aws 第7回 AWS コンテナ実践勉強会 低レイヤー視点から読み解くコンテナ入門
yuji_shimoda
7
2.2k
Other Decks in Technology
See All in Technology
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
How to Quickly Call American Airlines®️ U.S. Customer Care : Full Guide
flyaahelpguide
0
140
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
7
1.2k
CDKコード品質UP!ナイスな自作コンストラクタを作るための便利インターフェース
harukasakihara
1
120
Delta airlines®️ USA Contact Numbers: Complete 2025 Support Guide
airtravelguide
0
340
MobileActOsaka_250704.pdf
akaitadaaki
0
160
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
140
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
1
380
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
190
Reach American Airlines®️ Instantly: 19 Calling Methods for Fast Support in the USA
flyamerican
1
180
OpenTelemetryセマンティック規約の恩恵とMackerel APMにおける活用例 / SRE NEXT 2025
mackerelio
2
690
LLM時代の検索
shibuiwilliam
2
420
Featured
See All Featured
Building Applications with DynamoDB
mza
95
6.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Bash Introduction
62gerente
613
210k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Become a Pro
speakerdeck
PRO
29
5.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
How to train your dragon (web standard)
notwaldorf
96
6.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
980
We Have a Design System, Now What?
morganepeng
53
7.7k
Transcript
)JHPCBTIJBXT Լా༞࢜ "84'BSHBUFͱ&$4λεΫωοτϫʔΫͷ͝հ
ຊͷςʔϚ
8IPBSFZPV ݄Ϋϥεϝιουೖࣾ ਆށࢢग़ͷߴ࠭ࢢຽɻେࡕΦϑΟεि̍ۈ "84༻ྺɺΫϥεϝιουࡏ੶ظؒͱಉ͡ %FWFMPQFST*0ͰɺίϯςφपΓͷهࣄΛࣥච͢Δ ͜ͱ͕ଟ͘ɺϓϥΠϕʔτͰ3VCZίϛϡχςΟͰ ׆ಈͨ͠Γ͍ͯ͠·͢ɻ झຯɺөըɾԻָؑɾྉཧ Լాɹ༞࢜ʢ̏̓ࡀʣ
"HFOEB AWS Fargate ͝հ ECS ͷλεΫωοτϫʔΫͱʁ EC2 ʹλεΫωοτϫʔΫΛߏஙͯ͠ΈΔ
AWS Fargate ͝հ
"84'BSHBUF͝հ ͜Ε·ͰɺAmazon ECS(Elastic Container Service)Λར༻͢Δࡍʹ ඞཁͩͬͨ ECS ΠϯελϯεʢEC2 Πϯελϯεʣͷཧ͕ෆཁͱ
ͳΔɺ৽͍͠ ECS λεΫʢίϯςφʣͷσϓϩΠʢىಈʣํ๏
'BSHBUFͷϝϦοτ ECS Πϯελϯεͷཧ͕ෆཁ ECS ͷΈ API ͱ͍ͬͨɺطଘͷࢿ࢈͕Ҿ͖ଓ͖ར༻Ͱ͖Δ ར༻අɺvCPU ͓ΑͼϝϞϦϦιʔεͷ૯ྔʹରͯ͠ඵ୯Ґͷٻ
vCPUɿ$ 0.00001406/sʢ$ 0.0506/hʣ Mem(GB)ɿ$ 0.00000353/sʢ$ 0.0127/hʣ ˞࠷՝ۚରظؒɺ1
'BSHBUFͷσϝϦοτ EC2 ͱར༻අΛൺֱ͢ΔͱɺΓ͓ߴ͍ όʔδχΞ෦(us-east-1)/Linux/ΦϯσϚϯυ t2.micro 1vCPU/1(GB)Mem ͷߏͰ $ 0.0116/h
ֹ݄ʢ720hՔಇʣࢉ͢ΔͱҎԼͷͱ͓Γ t2.micro … $ 8.352/m ɹ Fargate … $ 45.575/m ͜ͷ݅Ͱൺֱͨ͠߹ɺEC2 ͷཧ/ӡ༻අͱͯ͠ ֹֹࠩۚ $37 ʢ4,000ԁʣఔ͕ඞཁͱͳΔ
ECS λεΫωοτϫʔΫͱʁ
&$4λεΫωοτϫʔΫͱʁ 2017/11/14 ʹൃද͞ΕͨɺECS λεΫʢίϯςφʣʹରͯ͠ ENI(Elastic Network Interface)ΛΞλονग़དྷΔΑ͏ʹ͢Δ৽ػೳ ٕज़తʹɺLinux ωοτϫʔΫ
namespace ͱ ENI ͷΈ߹Θͤ CNI(Container Networking Interface)ͷ༷ʹج͖ͮɺ ECS CNI ϓϥάΠϯ͕։ൃ͞Ε͍ͯΔ aws/amazon-ecs-cni-plugins: Networking Plugins repository for ECS Task Networking https://github.com/aws/amazon-ecs-cni-plugins ࢀߟࢿྉʣৄղ: Amazon ECSͷλεΫωοτϫʔΫ | Amazon Web Services ϒϩά https://aws.amazon.com/jp/blogs/news/under-the-hood-task-networking-for-amazon-ecs/
&$4λεΫωοτϫʔΫͱʁ
EC2 ʹλεΫωοτϫʔΫΛߏஙͯ͠ΈΔ
%FNP ࣌ؒతͳ߹ͷ݉Ͷ߹͍ͰɺҎԼͷڥΛ༻ҙ͓͖ͯ͠·ͨ͠ɻ ENI ͕ෳΞλον͞Ε͍ͯΔ EC2 ΠϯελϯεΛ༻ҙ Primary ENI ɺϚΠIP
ʹΑΔSSH(TCP/22) ͷΈΛڐՄ Secondary ENI ɺΠϯλʔωοτ HTTP(TCP/80) ΛڐՄ
%FNP task network namespace Λ࡞ $ sudo -s #
ip netns add task eth1 Λ task ωʔϜεϖʔεʹҠಈͤ͞Δ # ip link set eth1 down # ip link set eth1 netns task # ip netns exec task ip link set eth1 up
%FNP eth1 ͷ IP ΞυϨε͓ΑͼϧʔςΟϯάΛઃఆ # ip netns exec
task ip addr add PrivateIP dev eth1 # ip netns exec task ip route add default via GatewayIP dev eth1 task ωʔϜεϖʔεͰɺWEB αʔϏεΛىಈ # echo ‘<h1>Higobashi.aws 2017 1st.</h1>’ > index.html # ip netns exec task ruby -run -e httpd . -p 80
·ͱΊ EC2 Πϯελϯεͷཧ͔Βղ์͞ΕΔ AWS Fargate ࠷ߴʂ re:Invent αʔϏεൃදલʹɺϦϦʔε͞ΕͨαʔϏεʢ৽ػೳʣ ͔ΒͲΜͳαʔϏε͕ൃද͞ΕΔ͔༧͢Δָ͠Έ͕͋Δ
ࠓճͷൃදࢿྉʹهࡌ͋Γ·ͤΜͰ͕ͨ͠ɺݱࡏϓϨϏϡʔதͷ Amazon Elastic Container Service for Kubernetes (Amazon EKS) ͕ͪԕ͍͠
None