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
AWSでサーバ運用してみる
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Junpei Kuriyama
November 22, 2019
Technology
1.1k
0
Share
AWSでサーバ運用してみる
Junpei Kuriyama
November 22, 2019
Other Decks in Technology
See All in Technology
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
380
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
5.1k
Choose your own adventure in agentic design patterns
glaforge
0
140
はじめての MagicPod生成AI機能 機能紹介から活用方法まで
magicpod
0
110
Rapid Start: Faster Internet Connections, with Ruby's Help
kazuho
2
670
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
0
230
AI時代 に増える データ活用先
takahal
0
240
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
300
Claude Code を安全に使おう勉強会 / Claude Code Security Basics
masahirokawahara
11
35k
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.8k
LLM時代の検索アーキテクチャと技術的意思決定
shibuiwilliam
3
1.4k
Practical TypeProf: Lessons from Analyzing Optcarrot
mame
0
390
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
220
A Tale of Four Properties
chriscoyier
163
24k
Unsuck your backbone
ammeep
672
58k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How to Talk to Developers About Accessibility
jct
2
180
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Building Adaptive Systems
keathley
44
3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
270
Transcript
AWSͰαʔόӡ༻Λͯ͠ΈΔ ۚۀେֶ ใֶՊ ܀ࢁ७ฏ JAWS –UG ۚ | 2019 KANAZAWA
• Name: ܀ࢁ ७ฏ • Belong: ۚۀେֶ • Twitter: @_Iruk_
• Skill: Ruby, Elixir, TypeScript, Go, • CLIπʔϧWebΞϓϦέʔγϣϯΛΜͰ࡞Γ·͢ɻ • Πϯϑϥ৯Θͣݏ͍ͳٕज़ͩͬͨɻ $ whoami
None
App
None
App
App
App
App
App
App
App
App
αʔόߏஙɺਏ͔ͬͨɻ
• ܦݧͷͳ͍ྖҬΛCLIͰߦ͏ͷ݁ߏਏ͍ɻ
• ܦݧͷͳ͍ྖҬΛCLIͰߦ͏ͷ݁ߏਏ͍ɻ • αʔόߏஙʹ͓͚Δࣝ࠷ݶ͋Δ
• ܦݧͷͳ͍ྖҬΛCLIͰߦ͏ͷ݁ߏਏ͍ɻ • αʔόߏஙʹ͓͚Δࣝ࠷ݶ͋Δ • ͜ͷਏ͞ΛऔΓআ͍ͯ͘ΕΔαʔϏε….
• ܦݧͷͳ͍ྖҬΛCLIͰߦ͏ͷ݁ߏਏ͍ɻ • αʔόߏஙʹ͓͚Δࣝ࠷ݶ͋Δ • ͜ͷਏ͞ΛऔΓআ͍ͯ͘ΕΔαʔϏε…. ʂ
AWSͰαʔόӡ༻Λͯ͠ΈΔ ۚۀେֶ ใֶՊ ܀ࢁ७ฏ JAWS –UG ۚ | 2019 KANAZAWA
ʮAWSͷαʔόӡ༻Λͯ͠ΈΔʯ • ӡ༻͍ͯͨ͠όοΫΤϯυͷΠϯϑϥΛAWSʹҠͨ͠ɻ • ݴޠ: Ruby • RDB: MySQL
None
Internet gateway Amazon EC2
Internet gateway Amazon RDS Amazon EC2
Internet gateway Amazon RDS Amazon S3 Amazon EC2 Amazon RDS
Amazon EC2
Internet gateway Amazon RDS Amazon S3 Amazon EC2 Amazon RDS
Amazon EC2 ΞϕΠϥϏϦςΟκʔϯ - B ΞϕΠϥϏϦςΟκʔϯ - C
ʮAWSͷαʔόӡ༻Λͯ͠ΈΔʯ • ӡ༻͍ͯͨ͠όοΫΤϯυͷΠϯϑϥΛAWSʹҠͨ͠ɻ • ಉ࣌ʹߏஙʹੑΛ࣋ͨͤͨɻ
ʮAWSͷαʔόӡ༻Λͯ͠ΈΔʯ • ӡ༻͍ͯͨ͠όοΫΤϯυͷΠϯϑϥΛAWSʹҠͨ͠ɻ • ಉ࣌ʹߏஙʹੑΛ࣋ͨͤͨɻ • => ͦͷࡍͷৄࡉɺݟΛ͍͖ͯ͠·͢ɻ
EC2ΠϯελϯεΛ࡞͢Δ Amazon EC2
Ϧʔδϣϯ
Ϧʔδϣϯ • αʔόͷཧతॴࡏҐஔ
Ϧʔδϣϯ • αʔόͷཧతॴࡏҐஔ • ຊϢʔβ͕ଟ͍αʔϏεΛӡӦ͢ΔͳΒɺϢʔβͱͷ ཧతڑ͕͍ۙ౦ژϦʔδϣϯ͕·͍͠
Ϧʔδϣϯ • αʔόͷཧతॴࡏҐஔ • ຊϢʔβ͕ଟ͍αʔϏεΛӡӦ͢ΔͳΒɺϢʔβͱͷ ཧతڑ͕͍ۙ౦ژϦʔδϣϯ͕·͍͠ • ଞͷϦʔδϣϯͷใදࣔ͞Εͳ͍ͷͰҙ (ex. όʔδχΞ෦Λબ͍ͯ͠Δͱ౦ژͷใݟ͑ͳ͍
EC2ΠϯελϯεΛ࡞͢Δ
EC2ΠϯελϯεΛ࡞͢Δ • Amazon Elastic Compute • ΠϯελϯεͱݺͿαʔόΛ࡞͢Δ • εϖοΫʹؔͯ͠બՄೳ •
OS(AMI)બՄೳ
AMIͷબ
ΠϯελϯελΠϓͷબ
ΠϯελϯελΠϓͷબ Amazon EC2 ΠϯελϯελΠϓ - https://aws.amazon.com/jp/ec2/instance-types/
VPCͷઃఆΛ͢Δ Amazon EC2 AZ(ΞϕΠϥϏϦςΟκʔϯ)
Πϯελϯεৄࡉͷઃఆ
Amazon VPCͷઃఆ
Amazon VPCͱ • CIDRϒϩοΫͷઃఆ • ΞϕΠϥϏϦςΟκʔϯͷઃఆ • AZ͕ҧ͏ͱσʔληϯλʔࣗମҧ͏ͷͰɺ ہॴతͳࡂͳͲʹඋ͑ͨߏ͕࡞ΕΔ
αϒωοτͷ࡞
EC2ΠϯελϯεΛ࡞͢Δ
EC2ΠϯελϯεΛ࡞͢Δ
ηΩϡϦςΟάϧʔϓ • ϑΝΠΞΥʔϧͷઃఆͷΑ͏ͳͷ • ࠓճ ssh: 22 http: 80 https:
443 pumaͷsocket: 3000 Λ։͚͓ͯ͘
࡞ʂ
EC2Πϯελϯεͷ • άϩʔόϧIPͱήʔτΣΠͷ४උ͞Εͨαʔό͕
EC2Πϯελϯεͷ • άϩʔόϧIPͱήʔτΣΠͷ४උ͞Εͨαʔό͕ • ηΩϡϦςΟάϧʔϓͰsshͷϙʔτΛ։͚ͨͷͰ ssh ec2-user@IPv4public -i key.pem ͰsshͰ͖Δ
•
EC2Πϯελϯεͷ • άϩʔόϧIPͱήʔτΣΠͷ४උ͞Εͨαʔό͕ • ηΩϡϦςΟάϧʔϓͰsshͷϙʔτΛ։͚ͨͷͰ ssh ec2-user@public -i key.pem ͰsshͰ͖Δ
• ϙʔτΛ։͚ͨαʔό͕͍ͯ͠ΔͷͰ MySQLͳͲϛυϧΣΞΛೖΕͯΞϓϦӡ༻͕Մೳ
EC2Πϯελϯεͷ Internet gateway Amazon EC2
࣮ࡍʹڍಈΛݟΔ • Ruby, RailsपΓͷڥߏஙΛ͢Δ
࣮ࡍʹڍಈΛݟΔ • Ruby, RailsपΓͷڥߏஙΛ͢Δ (DockerFileΛ༻ҙͯ͋͠ΔͷͰͦͷ··ίϯςφΛ࡞
࣮ࡍʹڍಈΛݟΔ • Ruby, RailsपΓͷڥߏஙΛ͢Δ (DockerFileΛ༻ҙͯ͋͠ΔͷͰͦͷ··ίϯςφΛ࡞ • ΞΫηε͕དྷͨࡍͷϑΥϫʔσΟϯάʹnginxΛॻ͘ • puma(rubyͷwebαʔό)ͷsocketΛnginxʹରԠͤ͞Δɻ
VQTUSFBNQVNB\ TFSWFSVOJYIPNFFDVTFS&$EFQUNQTPDLFUTQVNBTPDL ^ TFSWFS\ MJTUFO TFSWFS@OBNFBEESFTT JODMVEFFUDOHJOYEFGBVMUE DPOG
MPDBUJPO\ QSPYZ@TFU@IFBEFS9'PSXBSEFE'PSQSPYZ@BEE@Y@GPSXBSEFE@GPS QSPYZ@SFEJSFDUPGG QSPYZ@QBTTIUUQQVNB ^ FSSPS@QBHFIUNM MPDBUJPOYIUNM\ ^ FSSPS@QBHFYIUNM MPDBUJPOYIUNM\ ^ ^
࣮ࡍʹڍಈΛݟΔ
Internet gateway Amazon RDS Amazon EC2
RDBʹ͍ͭͯ
RDBʹ͍ͭͯ • EC2ΠϯελϯεʹRDB(MySQL, PostgreSQL) ΛೖΕΔ • Amazon RDSΛ͏
RDBʹ͍ͭͯ • EC2ΠϯελϯεʹRDB(MySQL, PostgreSQL) ΛೖΕΔ • Amazon RDSΛ͏
• Amazon Relational Database Servise • RDBʹ͍ͭͯ
• Amazon Relational Database Servise • DBͷόοΫΞοϓ੬ऑੑʹର͢ΔରԠͳͲ ΛAmazonͷαʔϏεʹҰͰ͖Δ • Τϯδϯ(RDBͷछྨ)બՄೳ
RDBʹ͍ͭͯ
RDSΠϯελϯεͷ࡞
RDSΠϯελϯεͷ࡞
ηΩϡϦςΟάϧʔϓͷઃఆ
config/database.ymlʹهड़ socket: /var/lib/mysql/mysql.sock ɹ host: address.rds.amazonaws.comɹ database: appname_developmentɹ
Internet gateway Amazon RDS Amazon EC2
ಉ͡ߏͷΠϯελϯεΛཱͯΔ
·ͱΊ • ܦݧͷগͳ͍ٕज़ऀઢͰ GUIϕʔεͰαʔόΛߏஙͰ͖Δ • අ༻͔͔ΔͷͷɺAmazonͷαʔϏεʹ ґଘ͢Δ͜ͱͰීஈཧͷ͍͠ྖҬΛҕ Ͱ͖Δ • Πϯϑϥ͕ਏ͍ਓʹͦͥ͜ͻ৮ͬͯཉ͍͠ɻ
None
AWSͰαʔόӡ༻Λͯ͠ΈΔ ۚۀେֶ ใֶՊ ܀ࢁ७ฏ JAWS –UG ۚ | 2019 KANAZAWA