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
kamadakohei
April 14, 2023
Programming
1.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
97
Other Decks in Programming
See All in Programming
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
250
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
250
AIを紡ぐPMのお話
swdtkuy
0
120
Oxlintはいいぞ(続)
yug1224
1
320
Go 1.27 における memory allocation の高速化
andpad
0
290
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
MySQLとPostgreSQLって何が違うの?
akagami
0
120
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
490
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
5
500
30年振りにコンパイラの定数整数除算を改善した
herumi
6
2.3k
FDEが実現するAI駆動経営の現在地
gonta
2
290
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
240
Featured
See All Featured
We Are The Robots
honzajavorek
0
300
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Designing Experiences People Love
moore
143
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
How to build a perfect <img>
jonoalderson
1
5.9k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
GitHub's CSS Performance
jonrohan
1033
470k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
For a Future-Friendly Web
brad_frost
183
10k
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