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
20200109サポーターズ勉強会
Search
kazuma.murata
January 09, 2020
Programming
0
290
20200109サポーターズ勉強会
「雰囲気でAWSネットワークを触る人のための、AWSネットワーク再入門」の発表資料です。
kazuma.murata
January 09, 2020
Tweet
Share
More Decks by kazuma.murata
See All by kazuma.murata
ROSCAFE_2社に聞く_DevOpsの最新事例__SocialDog発表スライド_.pdf
canon1ky
1
220
Laravel × オニオンアーキテクチャで始めるテスト駆動開発
canon1ky
5
2.3k
BDDフレームワークで始める、E2Eテストのススメ
canon1ky
1
560
2019年11月20日 ビアバッシュ LT発表資料
canon1ky
0
460
仲間と起業、経営から廃業に至る中で学んだ「ビジョン」の本当の大切さ
canon1ky
2
77
Other Decks in Programming
See All in Programming
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.5k
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
580
ふつうの技術スタックでアート作品を作ってみる
akira888
1
1.1k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
170
技術同人誌をMCP Serverにしてみた
74th
1
680
すべてのコンテキストを、 ユーザー価値に変える
applism118
4
1.4k
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
190
ニーリーにおけるプロダクトエンジニア
nealle
0
890
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
280
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1.1k
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
2
11k
生成AI時代のコンポーネントライブラリの作り方
touyou
1
260
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Six Lessons from altMBA
skipperchong
28
3.9k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
The Invisible Side of Design
smashingmag
301
51k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
980
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Designing Experiences People Love
moore
142
24k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Transcript
งғؾͰAWSωοτϫʔΫΛ ৮ΔਓͷͨΊͷ AWSωοτϫʔΫ࠶ೖ
ࣗݾհ ɾଜాओຏ (@canon1ky) ɾגࣜձࣾShowcaseGig ɾઍ༿ݝࢢࢢࡏॅ ʢࢁསݝग़ʣ ɾόοΫΤϯυΤϯδχΞ ɾϏʔτϚχΞSPօ ɾϚΠϒʔϜ: νʔζσβʔτ
օ͞Μ
AWSωοτϫʔΫ ཧղ͍ͯ͠·͔͢ʁ
• ϧʔτςʔϒϧͬͯͲ͏ͯ͠ඞཁͳͷʁ • Nat Gatewayͷ໊લฉ͍ͨ͜ͱ͕͋Δ͚ͲΠϚΠν Θ͔Βͳ͍ • σϑΥϧτVPC͋Δ͠ͱΓ͋͑ͣͬͱ͔͘…
લ - ֤छϦιʔεΛཧղ͢Δ 1. VPC 2. Subnet 3. Route Table
4. Internet Gateway 5. Nat Gateway 6. શମ૾ 7. σϑΥϧτVPC
ޙ - ΞʔΩςΫνϟͷྫ 1. EC2Ͱߏ͢Δ؆୯ͳWebαʔόʔͷྫ 2. EKSΛͬͨྫ
ڞ༗ࣄ߲ • ࠶ೖͳͷͰEC2RDSͷ֓ཁઆ໌͠·ͤΜ ʢ͕࣌ؒΓͳ͍…ʣ • ࡉ͔͍ͱ͜Ζ·ͰಥͬࠐΈ·ͤΜ ʢશମ૾Λཧղ͢Δͷ͕తʣ • ࢿྉWebʹUP͠·͢
લ - ֤छϦιʔεΛཧղ͢Δ
ͦͷલʹ
͓͖͍͑ͯͨલఏ • άϩʔόϧαʔϏε • ϦʔδϣϯαʔϏε • AZαʔϏε
άϩʔόϧαʔϏε • AWSΞΧϯτ୯ҐͰஔ͔ΕΔϦιʔε • શϦʔδϣϯͰڞ௨ • ྫ: IAM, CloudWatch, Route53
ϦʔδϣϯαʔϏε • Ϧʔδϣϯ୯ҐͰஔ͔ΕΔϦιʔε • ౦ژϦʔδϣϯɺΞϝϦΧϦʔδϣϯͳͲ • ྫ: VPC, S3, DynamoDB
AZαʔϏε • AZ୯ҐͰஔ͔ΕΔϦιʔε • AZ: ϦʔδϣϯΛ͞Βʹࡉ͔ͬͨ͘ͷ • ྫ: Subnet, EC2,
RDS
ωοτϫʔΫͬͯʁ
VPC • ԾωοτϫʔΫ • AWSωοτϫʔΫͷҰ൪େ͖͍ׅΓ • ࡞࣌ʹϓϥΠϕʔτIPࢦఆ • ϓϥΠϕʔτIP: VPCͰͷΈ͏IPΞυϨε
• AWSωοτϫʔΫͷதͰҰ൪࠷ॳʹ࡞Δͷ ϦʔδϣϯαʔϏε
Subnet • VPCΛ͞Βʹׂۭͨؒ͠ • ʮʓʓΞΫηε͞Εͯྑ͍͚Ͳ˚˚ΞΫηε ͞ΕͨΒ·͍ͣʂʂʯ • ࣗͰେ͖͞ΛܾΊͯαϒωοτΛ࡞Δ • Πϯελϯεඞͣαϒωοτͷதʹ࡞Δ
";αʔϏε
αϒωοτͷྫ • VPC: 10.0.0.0/16 • αϒωοτ1: 10.0.1.0/24 → 256ݸͷIPΞυϨε •
αϒωοτ2: 10.0.2.0/24 → 256ݸͷIPΞυϨε • αϒωοτ3: 10.0.3.0/20 → 4096ݸͷIPΞυϨε • αϒωοτ4: 10.0.19.0/20 → 4096ݸͷIPΞυϨε αϒωοτϚεΫͷࣈͰ αϒωοτͷେ͖͞ΛܾΊΒΕΔ ϓϥΠϕʔτ*1
ߏਤ
Route Table • Πϯελϯε͔ΒɺͲ͜ʹ௨৴͕͍͔͘ͷϧʔϧ ΛఆΊ͓ͯ͘ͷ • αϒωοτΛ࡞ͬͨঢ়ଶͰΠϯελϯεΛ͓͍ͯ ࣗҎ֎ͷαʔόʔʹΞΫηεͰ͖ͳ͍ • ௨৴ܦ࿏ͷಓΛ࡞ΔΠϝʔδ
• ͜Ε͕ͳ͍ͱΠϯελϯε͔ΒଞͷϦιʔε௨৴ ͕Ͱ͖ͳ͍ ϦʔδϣϯαʔϏε
ߏਤ *1 5BSHFU -PDBM *(8 *1 5BSHFU
-PDBM *1 5BSHFU -PDBM *(8 *1 5BSHFU -PDBM 4VCOFU 4VCOFU 4VCOFU 4VCOFU αϒωοτͷΠϯελϯε͔Β ΞΫηε ˠ71$ͷϦιʔεʹ௨৴͕ඈͿ αϒωοτͷΠϯελϯε͔Β ΞΫηε ˠ*(8ʹ௨৴͕ඈͿ
Internet Gateway(IGW) • ΠϯελϯεͱΠϯλʔωοτΛܨ͙ίϯϙʔωϯτ • VPCʹ࡞ • ϧʔτςʔϒϧͰαϒωοτͱඥ͚Δ • IGWͱඥ͚ͮΔ
→ ύϒϦοΫαϒωοτ • IGWͱඥ͚ͮͳ͍ → ϓϥΠϕʔταϒωοτ ϦʔδϣϯαʔϏε *1 5BSHFU -PDBM *(8
Public Subnet • ΠϯελϯεʹύϒϦοΫIP͕༩͞ΕΔ • Πϯλʔωοτ͔ΒΠϯελϯεʹΞΫηεՄೳ • Πϯελϯε͔ΒΠϯλʔωοτ্ͷαʔόʔʹΞΫη εՄೳ
Private Subnet • Πϯλʔωοτͱःஅ͞Ε͍ͯΔঢ়ଶ • ʮDB֎͔ΒݟΒΕͨ͘ͳ͍ʂʂʯ • ΠϯελϯεʹύϒϦοΫIP༩͞Εͳ͍ • VPCͷΠϯελϯεͱ௨৴͕Մ
• ޙड़ͷNGWΛ͏ͱ֎͖ͷ௨৴ͷΈՄೳͱͳΔ
Nat Gateway(NGW) • Πϯλʔωοτͷ֎͖ͷ௨৴ΛڐՄ͢Δ ίϯϙʔωϯτ • ʮ֎͔ΒΞΫηεͰ͖ͳ͍Α͏ʹ͍͚ͨ͠ͲɺΠϯελ ϯε͔ΒύοέʔδͷΠϯετʔϧͱ͔͍ͨ͠ʂʯ • ϓϥΠϕʔταϒωοτʹΞλον͢ΔͱɺϓϥΠϕʔ
ταϒωοτͰ֎͖௨৴͕ڐՄ͞ΕΔ • ͪΐͬͱߴ͍ (0.045USD/hour → 4000ԁऑ / ݄) ";αʔϏε *1 5BSHFU -PDBM /(8
Ϣʔεέʔε • ϓϥΠϕʔταϒωοτͷΠϯελϯε͔Β • ֎෦APIΛݺͼग़͍ͨ͠ • ύοέʔδͷΠϯετʔϧΛߦ͍͍ͨ • ఆظతʹΫϩʔϦϯά͍ͨ͠
શମ૾
σϑΥϧτVPCͬͯʁ • AWSΞΧϯτΛ࡞Δͱඞͣ༻ҙ͞Ε͍ͯΔVPC • AWSϕετϓϥΫςΟεͰɺσϑΥϧτVPCΛ ͏͜ͱඇਪ • ύϒϦοΫαϒωοτ2ͭͷΈͷαϒωοτ͕ଘࡏ
ࢀߟϖʔδIUUQTEPDTBXTBNB[PODPNKB@KQWQDMBUFTUVTFSHVJEF EFGBVMUWQDIUNMEFGBVMUWQDDPNQPOFOUT
EC2ΠϯελϯεΛஔ͘·Ͱ 1. VPC࡞ 2. ΠϯελϯεΛஔ͘αϒωοτͷཁ݅ΛܾΊΔ ɾIPΞυϨεͷൣғ ɾύϒϦοΫαϒωοτ or ϓϥΠϕʔταϒωοτ 3.
αϒωοτ࡞ 4. IGW࡞ 5. ඞཁͰ͋ΕNGWΛ࡞ 6. ϧʔτςʔϒϧ࡞ 7. Πϯελϯεઃஔ
ޙ - ΞʔΩςΫνϟͷྫ
؆୯ͳWebαʔόʔͷྫ(1) w ύϒϦοΫαϒωοτ w &-# w &$ w ϓϥΠϕʔταϒωοτ w
3%4
؆୯ͳWebαʔόʔͷྫ(2) w ύϒϦοΫαϒωοτ w &-# w ౿Έαʔόʔ w /(8 w
ϓϥΠϕʔταϒωοτ w &$ w 3%4 ΑΓηΩϡΞ
EKSΛͬͨྫ(1) w ύϒϦοΫαϒωοτ w &-# w &$ w ϓϥΠϕʔταϒωοτ w
3%4 &,4ϦιʔεΛ࡞͢Δͱ͖ʹɺ ύϒϦοΫαϒωοτΛొ͢Δ
EKSΛͬͨྫ(2) w ύϒϦοΫαϒωοτ w &-# w /(8 w ϓϥΠϕʔταϒωοτ" w
&$ w ϓϥΠϕʔταϒωοτ# w 3%4 &,4ϦιʔεΛ࡞͢Δͱ͖ʹɺ ύϒϦοΫαϒωοτͱϓϥΠϕʔταϒωοτ"Λొ͢Δ ΑΓηΩϡΞ
·ͱΊ • ࠓճઆ໌ͨ͠ϦιʔεΛҰ௨Γԡ͓͚͑ͯ͞ͳΜ ͱ͔ͳΔ • DHCPΦϓγϣϯͱ͔ɺVPCΤϯυϙΠϯτ͑ ΒΕΕͳ͓ྑ͠ • VPC࡞Δ~EC2ཱͯΔ~ApacheೖΕΔ~ΞΫηεʂ Λ1ճΔ͚ͩͰ͔ͳΓମײతʹΘ͔Δͱࢥ͍·͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ