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
普段使ってるインフラ構成などについて
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kazuhiro Tamiwa
February 18, 2018
Programming
210
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
130
実際の新規事業開発の実務にて各NoCodeサービスを利用して感じたこと
kazuhirotamiwa
0
210
フルリモートで事業にコミットするエンジニア組織とは
kazuhirotamiwa
2
1.3k
関西にいるからこそ感じる関西U30エンジニアの将来を見据えた生存戦略
kazuhirotamiwa
2
880
社内LT_180902.pdf
kazuhirotamiwa
0
94
Other Decks in Programming
See All in Programming
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
350
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
230
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
110
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.2k
OSもどきOS
arkw
0
500
Agentic UI
manfredsteyer
PRO
0
140
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
210
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.6k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
120
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.2k
The Spectacular Lies of Maps
axbom
PRO
1
800
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Facilitating Awesome Meetings
lara
57
7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
It's Worth the Effort
3n
188
29k
Designing for Timeless Needs
cassininazir
1
250
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
230
Context Engineering - Making Every Token Count
addyosmani
9
960
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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 ͋Γ͕ͱ͏͍͟͝·ͨ͠ (ɾωɾ)ůŢ