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
Amazon VPC Latticeを触ってみた!
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kamadakohei
April 14, 2023
Programming
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon VPC Latticeを触ってみた!
kamadakohei
April 14, 2023
More Decks by kamadakohei
See All by kamadakohei
FargateのPID namespace sharing を試してみた
kamadakohei
0
1.5k
Amazon CloudWatch Syntheticsで始める合成監視
kamadakohei
0
600
ECS Service Connect By Terraform
kamadakohei
0
1.4k
AIアプリ作ってみた
kamadakohei
0
510
LINEBot作ってみた
kamadakohei
0
95
Other Decks in Programming
See All in Programming
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
130
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
460
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
0
170
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
300
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
130
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
730
Performance Engineering for Everyone
elenatanasoiu
0
260
Webフレームワークの ベンチマークについて
yusukebe
0
200
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.8k
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
260
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.3k
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
190
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Leo the Paperboy
mayatellez
8
1.9k
Amusing Abliteration
ianozsvald
1
220
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
Speed Design
sergeychernyshev
33
1.9k
Automating Front-end Workflow
addyosmani
1370
210k
Balancing Empowerment & Direction
lara
6
1.2k
Deep Space Network (abreviated)
tonyrice
0
220
Optimising Largest Contentful Paint
csswizardry
37
3.8k
Claude Code のすすめ
schroneko
67
230k
Transcript
Amazon VPC Latticeを 触ってみた!
Amazon VPC La,ce アプリケーションサービス間通信のためのネットワークを抽象化したサービス AWS公式より図を引⽤
Amazon VPC La,ce登場前 VPC間をアプリケーション通信のために接続する場合、 • Transit Gateway • VPC Peering
• Private Link を利用してサービス間通信を制御する。
Amazon VPC Lattice登場後 VPC間をアプリケーション通信のために接続する場合 • ServiceNetwork • Service • Target
Group を利用してサービス間通信を制御することも可能に。
ユースケース(AWS公式より) αʔϏεؒͷଓΛେنʹ؆ૉԽ͢Δ ωοτϫʔΫΛΑΓෳࡶԽ͢Δ͜ͱͳ͘ɺ71$ͱΞΧϯτશମͰઍͷαʔϏεΛଓ͠·͢ɻ ΞϓϦέʔγϣϯϨΠϠʔͷηΩϡϦςΟΛڧԽ͢Δ αʔϏεؒͷηΩϡϦςΟΛ্ͤ͞ɺҰݩԽ͞ΕͨΞΫηε੍ޚɺೝূɺ͓ΑͼίϯςΩετݻ༗ͷঝೝ ʹΑΓθϩτϥετΞʔΩςΫνϟΛαϙʔτ͠·͢ɻ ߴͳτϥϑΟοΫཧΛ࣮͢Δ #MVF(SFFOσϓϩΠ $BOBSZσϓϩΠͷϦΫΤετϨϕϧͷϧʔςΟϯάՃॏλʔήοτͳͲɺ͖Ί ࡉ͔ͳτϥϑΟοΫ੍ޚΛߦ͍·͢ɻ
αʔϏεؒͷΓऔΓΛՄࢹԽ͢Δ ϦΫΤετλΠϓɺτϥϑΟοΫྔɺΤϥʔɺԠ࣌ؒͳͲͷαʔϏεؒ௨৴Λࢹ͓Αͼτϥϒϧ γϡʔςΟϯά͠·͢ɻ ※"NB[PO71$-BUUJDF͕ੜ·Εͨཧ༝ϝϦοτσϝϦοτҎԼ͕ৄ͔ͬͨ͠Ͱ͢。 h"ps://d1.awssta-c.com/events/Summits/reinvent2022/NET215_NEW-LAUNCH!-Introducing-Amazon-VPC-LaLce- Simplifying-applica-on-networking.pdf
VPCLa,ceを構成する要素 • Service Network ⁃ 論理的なアプリケーション層ネットワーク ⁃ 紐付けたVPC内のクライアントはDNS経由でサービスネットワーク内のサービスを自動検出できる • Service
⁃ ALBに似た要素 ⁃ Listener、Ruleを設定する • Listener ⁃ Serviceへのトラフィックを許可するポートやプロトコルを指定する ⁃ HTTP/S (1.1,2)、gRPCを指定可能 • Rule ⁃ Serviceに来た通信のルーティングを設定する • TargetGroup ⁃ ルーティングするターゲットを纏めたもの ⁃ EC2、 IPアドレス、Lambda関数、ALBを指定できる
Amazon VPC La,ce WorkShop マイクロサービスから構成された架空の駐車場アプリケーションについて Amazon VPC La?ceを活用することでネットワークを意識せずにアプリケーション通信ができるように なるWorkShop hBps://catalog.us-east-1.prod.workshops.aws/workshops/9e543f60-e409-43d4-b37f-78ff3e1a07f5/en-US
Amazon VPC Lattice WorkShopより図を引⽤
アプリケーションの要件とインフラ構成 駐車場サービスは、以下のマイクロサービスで構成される • EC2上で動作する2つのマイクロサービス「料金(/rates)」と「支払い(/payments)」 • Lambda上で動作する1つのマイクロサービス「予約 (/reservation)」 Amazon VPC Lattice
WorkShopより図を引⽤
VPC La,ceを利用した構成 Client VPCから各Serviceに紐づくTargetGroup にアクセスできることがゴール 以下の流れでリソースを作成する 1. TargetGroupの作成(送信先リソース紐 付け) 2.
Serviceの作成(ルーティング設定) 3. Service Networkの作成 4. Service Networkに送信先のServiceを設定 5. Service Networkに送信元のVPCを設定 Amazon VPC Lattice WorkShopより図を引⽤
TargetGroupの作成 ターゲットタイプと対象を選択してTargetGroupを作成する
Serviceの作成(Listenerの設定) Listenerのプロトコル、ポートを設定
Serviceの作成(Ruleの設定) ListenerRuleの設定 ALBと同じ用にServiceでルーティング ルールを設定できる
Service側のドメイン Service作成後、デフォルトでxx.vpc-la?ce-svcs.us-west-2.on.awsの形でドメイン名が設定される
Service Networkの作成 • 転送先のサービスを設定 • 転送元のVPCを設定
接続確認 Client側からReservaXonServiceへcurl Client側からParkingServiceの各pathへcurl
おまけ Q. VPCLa)ceの設定時にルーティングテーブルの編集はしていないのにも関わらず、 Client側から、Service側へアクセスできている。どのように名前解決して、ルーティングが行われているのか? A. nslookupしてみると、リンクローカルアドレスが返ってくる。 また、送付元のVPCのサブネットに紐づくルーティングテーブルにリンクローカル用のルールが勝手に追加されている。 ※VPCLa)ceの通信の仕組みについては、詳しくはAWS公式ブログの記事をご参照ください。 h;ps://aws.amazon.com/jp/blogs/networking-and-content-delivery/build-secure-mulG-account-mulG-vpc-connecGvity-for-your- applicaGons-with-amazon-vpc-la)ce/#:~:text=Amazon%20VPC%20La)ce%20traffic%20flows
参考資料 Amazon VPC Lattice https://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/what-is-vpc-service-network.html Amazon VPC Lattice Workshop https://catalog.us-east-1.prod.workshops.aws/workshops/9e543f60-e409-43d4-b37f-78ff3e1a07f5/en-US/labs/introduction
Build secure multi-account multi-VPC connectivity for your applications with Amazon VPC Lattice https://aws.amazon.com/jp/blogs/networking-and-content-delivery/build-secure-multi-account-multi-vpc-connectivity-for-your- applications-with-amazon-vpc-lattice/ Introducing Amazon VPC Lattice: Simplifying application networking https://d1.awsstatic.com/events/Summits/reinvent2022/NET215_NEW-LAUNCH!-Introducing-Amazon-VPC-Lattice-Simplifying- application-networking.pdf VPC Lattice のご紹介 – サービス間通信のためにネットワーキングを簡素化する (プレビュー) https://aws.amazon.com/jp/blogs/news/introducing-vpc-lattice-simplify-networking-for-service-to-service-communication- preview/ [レポート] Introducing Amazon VPC Lattice: Simplifying application networking #NET215 #reinvent h"ps://dev.classmethod.jp/ar3cles/reinvent2022-net215/ しれっと登場したVPC La@ceって何者!? よく分からんから3行で頼む! h"ps://qiita.com/minorun365/items/7f73aa1fe1ef2ca0c2c7 Amazon VPC La@ceがついにGAしたので触ってみた! h"ps://qiita.com/minorun365/items/260f6e1e29fcc61d1ad8