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
コンテナをSpot Fleetで起動するという選択肢
Search
Kazuma Watanabe
December 14, 2016
Technology
1.1k
2
Share
コンテナをSpot Fleetで起動するという選択肢
JAWS-UG コンテナ支部 #7
Kazuma Watanabe
December 14, 2016
More Decks by Kazuma Watanabe
See All by Kazuma Watanabe
SmartHRにおけるBiTemporal Data Modelの実践のその後 / After the practice of BiTemporal Data Model in SmartHR
wata727
1
3.7k
PHPを検査するPHPを書く / Write PHP inspection by PHP
wata727
1
2.4k
快適なコードレビューを目指して / For a comfortable code review
wata727
1
690
現実世界でのコンテナの運び方
wata727
3
1.2k
Lintの付き合い方とPahoutのご紹介
wata727
0
190
Querlyで始めるコードレビューの自動化
wata727
2
470
エンジニア向けSaaSを支えるInfrastructure as Code
wata727
5
2.5k
SideCIのインフラ構築を自動化した話
wata727
1
2.2k
Other Decks in Technology
See All in Technology
Hooks, Filters & Now Context: Why MCPs Are the “Hooks” of the AI Era
miriamschwab
0
130
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
6
7.4k
生成AI時代のエンジニア育成 変わる時代と変わらないコト
starfish719
0
560
ルールルルルル私的函館観光ガイド── 函館の街はイクラでも楽しめる!
nomuson
0
110
プロダクトを育てるように生成AIによる開発プロセスを育てよう
kakehashi
PRO
1
930
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
5
14k
デシリアライゼーションを理解する / Inside Deserialization
tomzoh
0
240
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
NgRx SignalStore: The Power of Extensibility
rainerhahnekamp
0
190
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Kubernetes基盤における開発者体験 とセキュリティの両⽴ / Balancing developer experience and security in a Kubernetes-based environment
chmikata
0
240
「決め方」の渡し方 / How to hand over the "decision-making process"
pauli
8
1.3k
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Chasing Engaging Ingredients in Design
codingconduct
0
160
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.9k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Paper Plane
katiecoart
PRO
1
49k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
110
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
ίϯςφΛSpot FleetͰ ্ཱͪ͛Δͱ͍͏બࢶ JAWS-UG ίϯςφࢧ෦ #7 @wata727
@wata727 • Kazuma Watanabe • Engineer in Actcat, Inc. •
AWS Solution Architect • https://twitter.com/wata727_
Containers in SideCI
Sandbox Containers • ࣮ߦڥΛίϯςφԽ͙ͯ͢͠ഁغ͢Δ • 5,000 containers / day EPDLFS
Ubuntu Host GitHub Clone Comment
Sandbox Containers • ࣮ߦڥΛίϯςφԽ͙ͯ͢͠ഁغ͢Δ • 5,000 containers / day EPDLFS
Ubuntu Host GitHub Clone Comment
Spot Fleet ?
εϙοτΠϯελϯεΛ ຊ൪ͰͬͯΔํʁ ʢ༧: 10%ʣ ※ه: 5%͘Β͍Ͱͨ͠
Amazon Spot Instance • ༧උͷEC2ίϯϐϡʔςΟϯάੑೳʹೖࡳ • ͓͍҆ʂʂʂ • ͱ͋Δc4.2xlargeͷྫ: $0.39
→ $0.06 ڻ͖ͷ
ͨͩ͠… • ೖࡳՁ֨ΛԼճΔͱམͪΔ • ߴ͘ͳͬͨΒผͷϓʔϧʢAZͱΠϯελϯε λΠϓͷΈ߹ΘͤʣͷεϙοτΠϯελϯ εΛىಈ͢Δ is ͍͠ •
ͦΜͳʹ͍ͳ͍͔…
Spot Fleet • εϙοτΠϯελϯεͷλʔήοτ༰ྔΛҡ ࣋͢ΔͨΊͷΈ • Ճྉۚແ͠ • ஈ͕ߴಅͨ͠ΒɺผͷϓʔϧͰҰ൪͍҆ε ϙοτΠϯελϯε͕ࣗಈͰ্ཱ͕ͪΔ
Spot Fleetͷઓུ • lowest: બͨ͠தͰৗʹҰ൪͍҆ϓʔϧ͔Β ىಈ͢Δɺ͍͕҆ߴಅ͢Δͱશ෦མͪΔ • diversified: ՄೳͳݶΓϓʔϧΛࢄͭͭ͠ɺ ͍҆ॱʹىಈ͢Δɺߴ͍ͱ͖͋Δ͕ɺ
Խͱߴಅ࣌ͷϦεΫܰݮ͕ظͰ͖Δ
͡Ί͔ͨ • ެࣜͷνϡʔτϦΞϧ͕͔ͳΓஸೡͳͷͰɺ ͦΕʹैͬͯ࡞ͬͯΈΔͱྑͦ͞͏ • ͦΕ͢Β໘ͳਓ • https://github.com/wata727/ tf_aws_ecs_on_spotfleet
Demo
Spot Fleet in SideCI
EC2ΛSpot Fleetʹ͠·ͨ͠
Spot Fleetʹ͢ΔͨΊʹ • ಥવΠϯελϯε͕མͪͯࠔΒͳ͍Α͏ʹ ઃܭ͢ΔʢϦτϥΠͱ͔ʣ • ىಈͨ͠Βɺ͙͢ʹαʔϏεΠϯͰ͖ΔΑ͏ ʹϢʔβσʔλͱ͔ઃఆ͓ͯ͘͠ • େମAutoScalingʹඞཁͳͷͱಉ͡ɺඞવత
ʹোʹڧ͍ઃܭʹͳΔ
҆ఆͯ͠Քಇͤ͞ΔͨΊͷTips • diversifiedͱlowestͰ͚Δ
҆ఆͯ͠Քಇͤ͞ΔͨΊͷTips • Spot Fleet ؒͷೖࡳՁ֨ʹࠩΛ͚ͭΔ • ೖࡳՁ֨Λ͑ͨ࣌ͰผͷҰ൪͍҆ϓʔϧ ͔ΒΠϯελϯε͕ىಈ͢Δ͜ͱΛར༻͢Δ • ೖࡳՁ͕͚֨҆ΕɺఆظతʹҰ൪͍҆Πϯ
ελϯεϓʔϧͷ࠶ׂΓ͕ͯߦΘΕΔ
Ձ֨҆ͨ͘͠Β͙͢མͪͳ͍ʁ • EC2ͷ՝ۚ୯Ґ1࣌ؒ͝ͱ͔ͩΒɺִ͍ؒ Ͱ࠶ىಈͨ͠Β༨ܭʹߴ͘ͳΔΜ͡Ό… • ࣮ىಈ1࣌ؒҎʹεϙοτՁ֨ͷߴಅͰڧ ੍λʔϛωʔτ͞Εͨ߹ର֎ʹͳΔ • http://aws.typepad.com/sajp/2016/11/aws- black-belt-online-seminar-amazon-ec2-spot-
instances.html
Ͱɺ҆ఆͯ͠·͔͢ʁ • ҙ֎ͱ҆ఆͯ͠·͢ • 2िؒ͘Β͍ฏؾͰੜ͖ͬͯΔΠϯελϯε ͞Μ͍·ͨ͠
ͱ͋Δm4.2xlargeͷ1
Spot Fleet ӡ༻Ͱ ϋϚͬͨ͜ͱ
ಥવͷىಈΤϥʔ • Spot FleetͰΠϯελϯε͕ىಈ͠ͳ͘ͳͬͨ • VPCͰIPΞυϨε͕֬อͰ͖ͯͳ͍…ʁ • ͦΜͳഅࣛͳͱࢥ͍ͭͭVPCΛ֬ೝ
ʊਓਓਓਓਓਓਓਓਓਓʊ ʼɹར༻ՄೳͳIP: 1ɹʻ ʉY^Y^Y^Y^Y^Y^Y^Yʉ
VPCͷIP͕ރׇ • /25Ͱ128͋ΔͣͷIP͕ރׇ • ݪҼେྔʹੜ͞Ε͍ͯͨENI (!) • TerraformͰىಈͨ͠Spot Fleetಛఆͷ݅ ԼͰ
DeleteOnTermination ͕falseͷΠϯελ ϯεΛىಈ͢Δ
PR͛·ͨ͠ • ͰϚʔδ͞ΕΔ༧ײແ͠
Ձ֨ͷҟৗͳཚߴԼ • Ұ࣌ظɺͬͯΔϓʔϧͷஈ͕ݢฒΈߴಅ ͯ͠શવ҆ఆͯ͠ΠϯελϯεΛ֬อͰ͖ͳ ͍࣌ظ͕͋ͬͨ • ΦϯσϚϯυฒྻىಈͯ྇͗͠·ͨ͠ • ถେ౷ྖબͷλΠϛϯά͕͔ؔͯͨ͠…
diversifiedͳͷʹภΔ • ͳ͔ͥdiversifiedͰىಈ͢ΔΠϯελϯε͕ಉ ͡ϓʔϧ͔Βىಈ͍ͯ͠Δ • AWSͷํʹฉ͍ͨͱ͜Ζɺࢄ͢ΔͳΒ3 Ҏ্ඞཁΒ͍͠ • ఆظతʹΠϯελϯεΛআͰ͖Εɺ࠷҆ ͷϓʔϧ͔Βىಈ͢ΔͷͰࢄ͢Δ͔…ʁ
Chaos Monkeyͷػӡ
ͪͳΈʹ • Chaos Monkey in Lambda͋ΔΑ
·ͱΊ
·ͱΊ • ͓҆͘ͳΔͷͪΖΜɺෆྀͷোΛఆ ͨ͠ઃܭΛ༨ّͳ͘͞ΕΔͷͰɺΞʔΩςΫ νϟ͕ڧਟʹͳΔ • ੲεϙοτΠϯελϯεҰ࣌తͳόον ॲཧ͖͕ͩͬͨɺSpot Fleet͕ঢ়گΛม͑ͨ •
࠷ߴͳͷͰΈΜͳ͓͏ʂʂ