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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Junkins
July 08, 2021
Technology
74
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FusicTechLive1.5 AWSを活かした基幹システムインフラ構成の紹介
Junkins
July 08, 2021
More Decks by Junkins
See All by Junkins
マルチ〇〇(リージョン、アカウント)の サービスをまとめてみた!
junkins
0
310
CakePHP3レポート
junkins
0
960
[Fukuoka.php Vol.16]LT CakePHP3を使ってみた:Migration Phinxの話
junkins
0
840
Other Decks in Technology
See All in Technology
自宅LLMの話
jacopen
1
530
AGENTS.mdとSkillsで始めるAIエージェント活用
sonoda_mj
3
210
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
650
Snowflakeと仲良くなる第一歩
coco_se
4
460
AIネイティブな開発のサプライチェーンリスク対策 〜激動の開発現場でリスクに立ち向かう〜【ZennFes】
cscengineer
PRO
2
120
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
140
「エンジニア進化論」2028年の開発完全自動化、エンジニアはどう進化するか
cyberagentdevelopers
PRO
6
5.1k
Bedrock AgentCore RuntimeでAuth0 Changelog調査AIをアップグレードした話
t5u8a5a
1
120
気づかぬうちにセキュリティ負債を生むAPIキー運用
sgwrmctk
0
120
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
4
2.3k
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
600
MCP Appsを作ってみよう
iwamot
PRO
4
610
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
ラッコキーワード サービス紹介資料
rakko
1
3.6M
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
For a Future-Friendly Web
brad_frost
183
10k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Thoughts on Productivity
jonyablonski
76
5.2k
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