Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
普段使ってるインフラ構成などについて
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kazuhiro Tamiwa
February 18, 2018
Programming
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
普段使ってるインフラ構成などについて
AWSとかDocker諸々基本的なところから
Kazuhiro Tamiwa
February 18, 2018
More Decks by Kazuhiro Tamiwa
See All by Kazuhiro Tamiwa
数学的思考 × ベンチャーの起業 ~理系の経験 こうやって役立ちました~
kazuhirotamiwa
0
170
実際の新規事業開発の実務にて各NoCodeサービスを利用して感じたこと
kazuhirotamiwa
0
220
フルリモートで事業にコミットするエンジニア組織とは
kazuhirotamiwa
2
1.3k
関西にいるからこそ感じる関西U30エンジニアの将来を見据えた生存戦略
kazuhirotamiwa
2
890
社内LT_180902.pdf
kazuhirotamiwa
0
100
Other Decks in Programming
See All in Programming
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
120
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
450
パーソナライズPodcastを作った話
repunit11
0
120
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
130
Verilogで学ぶCPU自作入門.pdf
uyuki234
8
4k
Simple Storage Service(S3) is not simple
iwatsukayura
0
190
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
540
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
7
1.8k
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
290
CodeRabbitの効果検証と過ごしてみた3ヶ月
armondando
0
140
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.1k
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
360
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
610
From π to Pie charts
rasagy
1
390
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
How GitHub (no longer) Works
holman
316
150k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
The Curse of the Amulet
leimatthew05
3
15k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Marketing to machines
jonoalderson
1
5.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
920
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
1 ຽྠҰത ීஈͬͯΔΠϯϑϥߏͳͲʹͭ ͍ͯ
2 ࣍ • ࣗݾհ • શମߏ • Docker • CI
/ AWS ECSσϓϩΠ • CloudFormationʹΑΔઃఆཧ ࣌ؒΓͳ͍ͷͰলུ͠ͳ͕Βɻɻɻ ؒҧͬͨ͜ͱઆ໌ͯͨ͠ΒऴΘ͔ͬͯ Βͬͦ͜Γڭ͍͑ͯͩ͘͞m(_ _)m
3 ࣗݾհ • ̠ɽ̨ɽϩδϟʔεגࣜձࣾ • ίʔυϨϏϡʔ • ΞϓϦ։ൃ / Σϒ։ൃ
/ ͦͷଞR&D • ࠷ۙΑ͘͏ݴޠ PHP/Ruby/Java/Kotlin/Swift etc Ұॹʹ࡞ͬͨਓ→
4 શମߏ
5 Amazon Route 53 Application Load Balancer Auto Scaling group
web app server web app server Amazon S3 bucket CloudFront distribution Amazon RDS શମߏ Amazon RDS multi-AZ ϝʔϧૹ৴ Τϥʔࢹ CloudWatch Logs ϩʔΧϧ GitLab Runner GitLab ECS ECR GitLab PhalconPHP(PHP7.x) ϩάղੳ
6 AWSߏਤ
7 Docker
8 D o c k e r Docker ࣗલͰ։ൃڥͷ%PDLFSGJMF࡞ ࡞ͨ͠*NBHFΛ(JU-BC$POUBJOFS3FHJTUSZʹQSJWBUFʹอଘ
%PDLFS$PNQPTFΛ࡞ ˠ%# "QQMJDBUJPO 3FEJT &MBTUJD4FBSDI4PMS w ։ൃڥΛॳΊͯࢀՃ͢ΔϦϞʔτͷΤϯδχΞͰ3&"%.&͚ͩ Ͱઆ໌ͳ͠ʙ࣌ؒ͘Β͍Ͱߏஙͱ͍ํͷཧղ͕ྃ ͦͷ݁Ռ
9 ։ ൃ ڥ ஈ ֊Ͱ ಘ ΒΕͨ ͷ
Docker શһͷ։ൃڥͷ౷Ұ ηοτΞοϓͳͲͷ࣌ؒॖ ςϯϓϨʔτΞϓϦέʔγϣϯΛ࡞͢Δ͜ͱͰॳͷ͋Δ։ൃ
10 ECSσϓϩΠ
11 ج ຊ తྲྀ Ε ECSσϓϩΠ GitLab Runner (CI) GitLab
ECR GitLab Auto Scaling group web app server web app server ECS develop push master push ίϯςφ ΠϝʔδΛ push ίϯςφϦϙδτϦ
12 Gi t L a b R u nner ECSσϓϩΠ
$*πʔϧɻϊϦ$JSDMF$*5SBWJT$*Έ͍ͨͳ͔Μ͡ ઃఆϑΝΠϧZBNM (JU-BCͷQJQFMJOF͔Β
13 E C R ECSσϓϩΠ ίϯςφͷΠϝʔδϦϙδτϦ &$3&$4ͷϦϙδτϦ͔Β࡞
14 E C S ECSσϓϩΠ λεΫఆٛΛ࡞ ίϯςφͷใͷઃఆ %PDLFSΠϝʔδͷઃఆ$16ϝϞϦFUD ΫϥελʔΛ࡞
&$·ΘΓઃఆ &$ΠϯελϯελΠϓFUD αʔϏεΛઃఆ͢Δ ΫϥελʔͰ࣮ߦͯ͠ҡ࣋͢ΔλεΫఆٛΛઃఆ &-#ͷઃఆͳͲ
15 E C S ɿ λ ε Ϋ ECSσϓϩΠ
16 E C S ɿ Ϋ ϥε λʔ ECSσϓϩΠ
17 E C S ɿ Ϋ ϥε λʔ ECSσϓϩΠ
18 E C S ɿ α ʔ Ϗ ε ECSσϓϩΠ
←ΊͬͪΌॏཁ
19 E C S ɿ σ ϓ ϩ Πϝϯτ Φ
ϓγϣϯ ECSσϓϩΠ λεΫͷ: 4 ࠷খϔϧε: 50%ɺ࠷େ: 100% [ग़ల] https://aws.amazon.com/jp/ blogs/compute/amazon-ecs- launches-new-deployment- capabilities-cloudwatch- metrics-singapore-and- frankfurt-regions/ λεΫͷʹैͬͯɺߋ৽࣌ʹλεΫఆٛ ͷΠϯελϯεΛΫϥελʔʹஔ࣮ͯ͠ ߦঢ়ଶʹ͞ΕΔɻ͜ͷͱ͖4×50%=2ͣͭ ߋ৽͞ΕΔɹϩʔϦϯάɾσϓϩΠ
20 E C S ɿ σ ϓ ϩ Πϝϯτ Φ
ϓγϣϯ ECSσϓϩΠ λεΫͷ: 4 ࠷খϔϧε: 100%ɺ࠷େ: 200% [ग़ల] https://aws.amazon.com/jp/ blogs/compute/amazon-ecs- launches-new-deployment- capabilities-cloudwatch- metrics-singapore-and- frankfurt-regions/ Πϯελϯε8·Ͱ͑ΔͷͰɺ 4×100%=4͕Ұؾʹߋ৽͞ΕΔ ϒϧʔάϦʔϯɾσϓϩΠ
21 E C S ɿ st a g ingͱprod uctio
n ECSσϓϩΠ TUBHJOH ߏͰेͳͷͰɺλεΫͷɺ࠷খϔϧεɺ࠷େ ͰϩʔϦϯάɾσϓϩΠ QSPEVDUJPO OߏͰɺλεΫͷOɺ࠷খϔϧεɺ࠷େͰϩʔ ϦϯάɾσϓϩΠɻαʔϏεεέʔϧͨ͠Β࠷খϔϧεɺ ࠷େͷϒϧʔάϦʔϯɾσϓϩΠΛ࠾༻ɻ ྃޙ$*͔Β4MBDL ྃ௨
22 · Γϙ Π ϯτ ECSσϓϩΠ &-#Λ͋ͱ͔ΒઃఆͰ͖ͳ͍ ΞϓϦέʔγϣϯͱ͔Ϛϯτͯ͠։ൃͯ͠ΔͷͰɺEPDLFSDQ͠ ͳ͍ͱσϓϩΠ͞Εͨίϯςφ্ͰΞϓϦέʔγϣϯͷྶѹ͕ফ͑
Δ (JU-BC3VOOFSࣗલͷαʔόʔͰ༻ҙ͢ΔͷͰɺຖճϏϧυͷͨ ͼʹJNBHF͕ͨ͘͞Μ૿͑ΔɻσϓϩΠऴΘͬͨΒEPDLFSSNJ͠ͳ ͍ͱϠόΠɻͲ͏ͤ&$3Ͱอଘ͞Ε·͢͠ɻ
23 Φ ʔ τεέʔϧ ECSσϓϩΠ $MPVE8BUDIͷΞϥʔτϕʔεͰΦʔτεέʔϧͷᮢΛઃఆ Ϋϥελʔͷεέʔϧʹ͔͔Δ࣌ؒɿ͘Β͍ &$4αʔϏεͷεέʔϧʹ͔͔Δ࣌ؒɿʙඵ ΫϥελʔεέʔϧΞτɿ$16༻Ҏ্ αʔϏεεέʔϧΞτɿ$16༻Ҏ্
ΫϥελʔεέʔϧΠϯɿ$16༻ҎԼ αʔϏεεέʔϧΠϯɿ$16༻ҎԼ
24 CloudFormation ࣗಈԽ "84ϦιʔεͷઃఆΛZBNM্ʹఆٛͯ͠ཧ͢Δ͜ͱ͕Ͱ͖Δ ˠ"84ͷΠϯϑϥઃఆߏஙΛࣗಈԽ ྨࣅαʔϏεɿ5FSSB'PSN w "84ͷߏஙͷςϯϓϨʔτΛ࡞͢Δ͜ͱͰΠϯϑϥ·ΘΓͷ ͕ݮ w
ZBNMΛHJUཧ͢Δ͜ͱͰΠϯϑϥߏஙͷมߋΛHJUͰ͓͏͜ͱ͕Ͱ ͖Δ ͦͷ݁Ռ
25 AWSߏਤ
26 CloudFormation ࣗಈԽ ஈ֊ͷZBNMʹ͚͍ͯΔ #BTJPO4FSWFS ౿Έαʔόʔ ݉$*ͷߏங 71$TVCOFUͳͲͷύϥϝʔλઃఆ 4UBHJOH༻ͷ&$43%4ͱύϥϝʔλͷઃఆ 1SPEVDUJPO༻ͷ&$43%4ͱύϥϝʔλͷઃఆ
ͨͩ͠ɺ"$.ͳͲखಈͷઃఆ͕ඞཁ
27 ͋Γ͕ͱ͏͍͟͝·ͨ͠ (ɾωɾ)ůŢ