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
FusicTechLive1.5 AWSを活かした基幹システムインフラ構成の紹介
Search
Junkins
July 08, 2021
Technology
0
71
FusicTechLive1.5 AWSを活かした基幹システムインフラ構成の紹介
Junkins
July 08, 2021
Tweet
Share
More Decks by Junkins
See All by Junkins
マルチ〇〇(リージョン、アカウント)の サービスをまとめてみた!
junkins
0
300
CakePHP3レポート
junkins
0
940
[Fukuoka.php Vol.16]LT CakePHP3を使ってみた:Migration Phinxの話
junkins
0
830
Other Decks in Technology
See All in Technology
Digitization部 紹介資料
sansan33
PRO
1
7k
オンプレとGoogle Cloudを安全に繋ぐための、セキュア通信の勘所
waiwai2111
3
1.1k
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
1
110
Kiro のクレジットを使い切る!
otanikohei2023
0
110
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
30
9k
AI Agentにおける評価指標とAgent GPA
tsho
1
300
「ヒットする」+「近い」を同時にかなえるスマートサジェストの作り方.pdf
nakasho
0
110
「使いにくい」も「運用疲れ」も卒業する UIデザイナーとエンジニアが創る持続可能な内製開発
nrinetcom
PRO
1
780
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
1
130
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.4k
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
130
Featured
See All Featured
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
110
Chasing Engaging Ingredients in Design
codingconduct
0
130
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
94
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
84
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
310
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
270
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
190
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
110
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
330
Become a Pro
speakerdeck
PRO
31
5.8k
Transcript
AWSΛ׆͔ͨ͠جװγεςϜΠϯϑϥߏͷհ Fusic Tech Live Vol.1.5 2021.07.08 ҏ౻ ५थ 1
ࣗݾհ ҏ౻ ५थ Ito Junki ID - GithubɿJunkin s -
Twitterɿ@Junkins_110 Work at גࣜձࣾ Fusic ʢϑϡʔδοΫʣ ઌਐٕज़෦ IoTνʔϜ IoTΫϥυΤϯδχΞ Skill PHPʗLaravelʗCakePHPʗRubyʗRoRʗAWSʗAzure ܦྺ - PHPͷΞϓϦέʔγϣϯΤϯδχΞ - AWS SA(ιϦϡʔγϣϯΞʔΩςΫτ ) - ࠷ۙɺIoTγεςϜ։ൃ - ͖ͳAWSͷαʔϏεVPCΤϯυϙΠϯτ 2
ɹ࣍ 1. ൃදͷత 2. ؍ 3. αϯϓϧҊ݅ 4. ઃܭϙΠϯτ 5.
·ͱΊ 3
01 ൃදͷత
ൃදͷత 5 1. جװγεςϜͷઃܭͷ؍ɾΞΠσΟΞͷڞ༗ ࠓ·Ͱͷܦݧ ɹɾVDI ڥ ɹɾωοτόϯΩϯά࿈ܞͷجװۀγεςϜ ɹɾΤϯλʔϓϥΠζͷαʔϏε։ൃࢧԉ 2.
AWSͷαʔϏεΛ׆༻ͨ͠جװγεςϜͷιϦϡʔγϣϯઃܭ ɹɾΫϥυΛར༻͢Δͱগͳ͍࿑ྗͰ࣭ͷߴ͍Πϯϑϥڥͷߏங͕Մೳ ɹɾۙɺΤϯλʔϓϥΠζ(جװγεςϜ)͚αʔϏεɺػೳ͕ॆ࣮ 3. ιϦϡʔγϣϯઃܭɺαʔϏεબ͕είʔϓ ɹɾߏஙϑΣʔζͷʹ৮Ε·ͤΜɻ
جװγεςϜͱʁ 6 اۀͷجװͱͳΔۀγεςϜ தখاۀɺݚڀॴ ηΩϡϦςΟɺγεςϜؒ࿈ܞɺ৴པੑɺࠪ
02 ؍
AWS Well-Architected 8 AWS Well-Architected ɾΦϖϨʔγϣϯΤΫηϨϯτ ɾηΩϡϦςΟ ɾ৴པੑ ɾύϑΥʔϚϯεޮ ɾίετ࠷దԽ
AWS Cloud Adoption Framework τϨʔυΦϑʂ
03 αϯϓϧҊ݅
Ҋ݅֓ཁ 10 8લ 2લ কདྷత 1 2 3 4 ᶃɿෳͷۀγεςϜ(ΫϥΠΞϯτΞϓϦ)
ᶄɿ࠷େ͖͍γεςϜΛWebԽ + AWSͰӡ༻ ᶅɿ࣍ͷγεςϜΛWebԽ + γεςϜؒ࿈ܞ(ҏ౻͕୲ͨ͠ϑΣʔζ) ᶆɿશͯͷۀγεςϜΛWebԽ + ૬ޓ࿈ܞ(কདྷͷల)
AWSߏਤ 11 Before
AWSߏਤ 12 After
04 ઃܭͷϙΠϯτ
ɹઃܭͷϙΠϯτ 1. σʔλϕʔεαʔό 2. ΞϓϦέʔγϣϯαʔό 3. ηΩϡϦςΟ 4. ϩά 5.
BIπʔϧ 14
4-1 σʔλϕʔεαʔό
4-1.σʔλϕʔεαʔό 16 PostgreSQL on EC2 RDS PostgreSQL Instance ΦϖϨʔγϣϯΤΫηϨϯτ όοΫΞοϓɾϦετΞ
อकൣғ ˚(IaaS) ̋(PaaS) ˚(AMI) ̋(εφοϓγϣοτ) ৴པੑ Մ༻ੑ ̋(MultiAZ) × ෛՙࢄ ̋(ϦʔυϨϓϦΧ) × ίετ࠷దԽ ̋ ˚ ύϑΥʔϚϯεޮ ֦ுੑ ˚ ̋
4-1.σʔλϕʔεαʔό 17 PostgreSQL on EC2 RDS PostgreSQL Instance όοΫΞοϓɾϦετΞ อकൣғ
˚(IaaS) ̋(PaaS) ˚(AMI) ̋(εφοϓγϣοτ) ৴པੑ Մ༻ੑ ̋(MultiAZ) × ෛՙࢄ ̋(ϦʔυϨϓϦΧ) × ̋ ˚ ֦ுੑ ˚ ̋ Point!! ΦϖϨʔγϣϯΤΫηϨϯτ ύϑΥʔϚϯεޮ ίετ࠷దԽ
4-1.σʔλϕʔεαʔό 18 PostgreSQL on EC2 RDS PostgreSQL Instance όοΫΞοϓɾϦετΞ อकൣғ
˚(IaaS) ̋(PaaS) ˚(AMI) ̋(εφοϓγϣοτ) ৴པੑ Մ༻ੑ ̋(MultiAZ) × ෛՙࢄ ̋(ϦʔυϨϓϦΧ) × ̋ ˚ ֦ுੑ ˚ ̋ ύϑΥʔϚϯεޮ ΦϖϨʔγϣϯΤΫηϨϯτ ίετ࠷దԽ อकͷ༰қੑΛॏࢹͯ͠ɺRDSΛબ
4-1.σʔλϕʔεαʔό 19 PostgreSQL on EC2 RDS PostgreSQL Instance όοΫΞοϓɾϦετΞ อकൣғ
˚(IaaS) ̋(PaaS) ˚(AMI) ̋(εφοϓγϣοτ) ৴པੑ Մ༻ੑ ̋(MultiAZ) × ෛՙࢄ ̋(ϦʔυϨϓϦΧ) × ̋ ˚ ֦ுੑ ˚ ̋ ύϑΥʔϚϯεޮ ΦϖϨʔγϣϯΤΫηϨϯτ ίετ࠷దԽ AWSͷϖʔεͰPostgreSQLͷόʔδϣϯΞοϓ͕ඞཁʂʂ
4-2 ΞϓϦέʔγϣϯαʔό
4-2. ΞϓϦέʔγϣϯαʔό 21 EC2 ECS EKS ΦϖϨʔγϣϯΤΫηϨϯτ ֤छڥͷߏங CI/CD ίετ࠷దԽ
̋ ̋ × ˚ ̋ ̋ ̋ ˚ ˚ ˚ ˚ ̋ ϝϯςφϯεੑ
4-2. ΞϓϦέʔγϣϯαʔό 22 EC2 ECS EKS ֤छڥͷߏங ϝϯςφϯεੑ CI/CD ̋
̋ × ̋ ̋ ̋ ˚ Point!! ΦϖϨʔγϣϯΤΫηϨϯτ ˚ ˚ ˚ ˚ ̋ ίετ࠷దԽ
4-2. ΞϓϦέʔγϣϯαʔό 23 EC2 ECS EKS ֤छڥͷߏங ϝϯςφϯεੑ CI/CD ̋
̋ × ̋ ̋ ̋ ˚ ΦϖϨʔγϣϯΤΫηϨϯτ ίετ࠷దԽ ˚ ˚ ˚ ˚ ̋ ෳγεςϜͷڥߏஙͷ༰қ͞
4-2. ΞϓϦέʔγϣϯαʔό 24 EC2 ECS EKS ֤छڥͷߏங ϝϯςφϯεੑ CI/CD ̋
̋ × ̋ ̋ ̋ ˚ ΦϖϨʔγϣϯΤΫηϨϯτ ίετ࠷దԽ ˚ ˚ ˚ ˚ ̋ AWS Fargate (ίετ͕ڐ͢ͳΒ)
4-3 ηΩϡϦςΟ
4-3.ηΩϡϦςΟ 26 [ηΩϡϦςΟཁ݅] ɹސ٬ͷࣾωοτϫʔΫʹͭͳ͕͍ͬͯΔέʔε͕ଟ͍ [ҙ͍ࣝͯ͠ΔϙΠϯτ] ɾIPΞυϨεΛ࿐ग़͠ͳ͍ ( NAT GatewayΛܦ༝ )
ɾඞཁҎ্ʹΠϯλʔωοτʹ௨৴Λग़͞ͳ͍ ( VPCΤϯυϙΠϯτ ) ɹ→ API Gateway ɹ→ S3 ɾIPΞυϨεΛ࿐ग़ͤͣʹSSH௨৴ ( AWS System Manager ) ɹ→ Session Manager
4-3.ηΩϡϦςΟ 27 Cognito ೝূ ɾར༻ՄෆՄ ɾݖݶ ೝՄ ɾར༻ՄෆՄ ɾݖݶ ɾࣾһཧɾೝূCognitoͰҰׅରԠ
ɹ→ ݸผγεςϜͰೝূΛߦ͏ͱରԠͷ࿙ΕͷϦεΫ͕͋Δ ɹ→ ࠷ѱɺCognitoͰୀ৬ॲཧΛߦ͑ΞΫηε͞ΕΔ͜ͱͳ͍ ɹ→ ਓҝతͳΦϖϨʔγϣϯϛεηΩϡϦςΟϦεΫ ɾγεςϜར༻ՄෆՄ/ݖݶใγεςϜͰݸผཧ (ೝՄ)
4-4 ϩά
4-4.ϩά( ετϨʔδ + ੳج൫ ) 29 S3 DynamoDB RDS ίετ࠷దԽ
̋ ˚ × ̋ ̋ ˚ ύϑΥʔϚϯεޮ × ৴པੑ ˕ ̋ ˕ ̋ ̋ Athena ΦϖϨʔγϣϯΤΫηϨϯτ ετϨʔδ + ੳج൫ݕ౼
4-4.ϩά( ετϨʔδ + ੳج൫ ) 30 S3 DynamoDB RDS ̋
˚ × ̋ ̋ ˚ × ৴པੑ ˕ ̋ ˕ ̋ ̋ Athena ΦϖϨʔγϣϯΤΫηϨϯτ ύϑΥʔϚϯεޮ ετϨʔδ + ੳج൫ݕ౼ ίετ࠷దԽ
4-4.ϩά( ετϨʔδ + ੳج൫ ) 31 ετϨʔδ + ੳج൫ݕ౼ DynamoDB
RDS ̋ ˚ × ̋ ̋ ˚ × ৴པੑ ˕ ̋ ˕ ̋ ̋ S3 Athena ΦϖϨʔγϣϯΤΫηϨϯτ ύϑΥʔϚϯεޮ ίετ࠷దԽ ΞΫηεසΛߟྀͯ͠ίετΛॏࢹ
4-5 BIπʔϧ
4-5. BIπʔϧ 33 σʔλιʔεɿෳͷσʔλϕʔεɺAthena σʔλιʔεͷෛՙɿϦʔυϨϓϦΧ͕ͳͯ͘ (SPICE) ੳɿࢼߦࡨޡ͕ඞཁɿγεςϜͰ࡞ΓࠐΉ͖Ͱͳ͍ ։ൃɿૣ͍ QuickSite
05 ·ͱΊ
4. ·ͱΊ 35 [શମͱͯ͠] ɾ࣭ͷτϨʔυΦϑΛҙࣝ͢Δ(Ͳͷ࣭Λॏࢹ͢Δ͔Λ໌֬ʹ) [ϊϋ] ɾϓϥΠϕʔτωοτϫʔΫͱܨ͕͍ͬͯΔγεςϜͷηΩϡϦςΟҙ ɹɾύϒϦοΫαʔϏεΛར༻͢Δ߹ಛʹҙΛʂ ɾڞ௨ج൫ʹͳΓͦ͏ͳػೳ֎ͩ͠ΞϦ͔ [AWSαʔϏεͷϥΠϯφοϓͷ๛͞]
ɾϥΠϯφοϓ͕๛ͳͨΊɺ༷ʑͳબࢶ͕ଘࡏ͢Δ ɾ࠷దͳαʔϏεɺιϦϡʔγϣϯΛબ͠Α͏
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠ Thank You We are Hiring ! https://recruit.fusic.co.jp/
ເதͳϠπʂ͍͍ϠπʂϠό͍Ϡπʂ ืू͍ͯ͠·͢ʂ Thank You We are Hiring ! https://recruit.fusic.co.jp/
Fusic Tech Blog We are Hiring ! https://recruit.fusic.co.jp/ AWSɺػցֶशɺAzur e
PHPɺRuby