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
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
150
実際の新規事業開発の実務にて各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
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
230
Building a Meta Ray-Ban display app
akkeylab
0
170
不幸な GC
chencmd
0
310
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
140
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
710
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
120
バグを直したら useEffect が消えた
colorful12
3
660
Go 1.27 における memory allocation の高速化
andpad
0
280
30年振りにコンパイラの定数整数除算を改善した
herumi
3
650
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
6.6k
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
340
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
4.4M
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.4k
WENDY [Excerpt]
tessaabrams
11
39k
Everyday Curiosity
cassininazir
0
290
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
How to Talk to Developers About Accessibility
jct
2
520
Product Roadmaps are Hard
iamctodd
55
12k
Why Our Code Smells
bkeepers
PRO
340
58k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
290
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Git: the NoSQL Database
bkeepers
PRO
432
67k
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 ͋Γ͕ͱ͏͍͟͝·ͨ͠ (ɾωɾ)ůŢ