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
ネットワーク初心者でも使いやすい!VPC Latticeをご紹介します
Search
kimura.yuta
May 29, 2024
Technology
0
450
ネットワーク初心者でも使いやすい!VPC Latticeをご紹介します
kimura.yuta
May 29, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
KCD Brazil '25: Enabling Developers with Dapr & Backstage
salaboy
1
120
セマンティックレイヤー入門
ikkimiyazaki
8
3.2k
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
200
大規模サービスにおける カスケード障害
takumiogawa
1
210
AIエージェント完全に理解した
segavvy
4
270
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
220
ソフトウェア開発現代史: なぜ日本のソフトウェア開発は「滝」なのか?製造業の成功体験とのギャップ #jassttokyo
takabow
2
1.6k
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
360
OPENLOGI Company Profile for engineer
hr01
1
22k
Explainable Software Engineering in the Public Sector
avandeursen
0
360
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
1
150
バクラクでのSystem Risk Records導入による変化と改善の取り組み/Changes and Improvement Initiatives Resulting from the Implementation of System Risk Records
taddy_919
0
220
Featured
See All Featured
Making Projects Easy
brettharned
116
6.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
How STYLIGHT went responsive
nonsquared
99
5.4k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
500
A better future with KSS
kneath
238
17k
Documentation Writing (for coders)
carmenintech
69
4.7k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
ネットワーク初心者でも使いやすい! VPC Latticeをご紹介します
自己紹介 木村優太 (きむらゆうた) CM入社:2023年3月 オフィス:日比谷オフィス 所属:AWS事業本部コンサルティング部 趣味:野球観戦・カラオケ
Latticeの概要 • VPC LatticeはVPC向けのリバースプロキシサービスで、 VPCを跨いだ通信を可能 にする • HTTP、HTTPS、gRPCに対応しており、利用側のVPCと提供側のVPCのCIDRが 重複していてもアクセスができるようになっている ◦
IPv4、IPv6についても意識しなくて接続可 ◦ RAMで共有することでクロスアカウントでの接続も可能 • 但しリージョンを跨ぐ通信に関しては対応していない • ルートテーブルの設定などネットワークに関わる部分は自動で作成してくれる
想定ユースケース • 同アカウント内で別VPCに存在しているVPC Lambdaに対してアクセスしたい • 自社のOrganizations内のアカウント間でEC2に対してアクセスをしたい • サービスを連携している他社に対して InternalALBへのアクセスを提供したい
Latticeの全体像
Latticeの主要コンポーネントについて
サービスネットワーク • サービスネットワークはVPCとサービスを結びつけるハブの役割のリソース • サービスネットワーク1つあたりVPCとサービスそれぞれ500個まで関連付けることが 可能 • 但しVPCからは関連付けられるサービスネットワークは 1つのみ •
IAM認証の設定やログの設定を行うことができる
サービス • ドメインが払い出され、Latticeへのアクセスを行う際はこのリソースに対してアクセス を行う。カスタムドメインも設定可能 • ALBと同様にリスナーを設定でき、ルールごとにアクセスを振り分けることができる。 ◦ 設定できる条件はパスとメソッドのみで固定レスポンスは 404と500のみで固定 メッセージ
• 時間単位で費用が発生する • IAM認証の設定やログの設定を行うことができる
ターゲットグループ • サービスのリスナーに設定する転送ルールのアクション先を設定できる • ターゲットグループの対象にできるリソースは以下 ◦ IP ◦ EC2 ◦
VPC Lambda ◦ Internal ALB • サービスとターゲットグループは同アカウント内に存在している必要がある
設計パターン
セキュリティについて • Latticeのセキュリティには4つのレイヤーがある ◦ サービスとサービスネットワークの関連付け ◦ VPC とサービスネットワーク間の関連付けにセキュリティグループをアタッチす る ◦
サービスにIAM認証をアタッチする ◦ サービスネットワークにIAM認証をアタッチする 参考:https://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/what-is-vpc-lattice.html#vpc-service-network-features
IAM認証を活かした設計例
IAM認証を活かした設計例のメリデメ • メリット ◦ サービスネットワークを集中管理することができ、責任分界点を明確にしやすい ◦ 特定のリソースにのみ特定のサービスのアクセスを許可するなど細やかな制御 ができる • デメリット
◦ 一部のリソースの指定方法を除き SigV4署名を行う必要がある ◦ 大規模になればなるほどサービス側に定義する、 IAM認証のポリシーが複雑に なる
サービスとVPCの関連付けを活かした設計例
サービスとVPCの関連付けを活かした設計例のメリデメ • メリット ◦ 経路の限定が関連付けのみとなるので容易で分かりやすい ◦ IAM認証の設定による、署名の付与などのアプリ側の改修が不要 • デメリット ◦
サービスネットワークを数多く作成することになるので、責任分界点を決めにく い ◦ アクセスする側のVPC内の各リソースから特定のサービスに対してのみアクセ ス可能にするなどの細かい制御ができない
構築する際のつまづきポイント
SGでLatticeからのアクセスを許可する アクセスを受け付ける側のリソースにて、 Latticeからのアクセスを許可する設定が必要になります。 Lattice用のプレフィックスリストが用意されているので、そちらを登録してアクセスを許可してください。
IAM認証を利用する場合には権限とSigV4署名が必要 IAM認証を利用する場合、一部を除きアクセスをする側に Latticeの実行権限とSigV4の署名が必要になりま す。 どちらかが欠けると実行エラーとなってしまいますので注意してください。 参考:https://dev.classmethod.jp/articles/lattice-iam-cert/ https://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/sigv4-authenticated-requests.html
ご清聴いただきありがとうございました。
参考
VPCに関連付けられるサービスネットワークは一つのみ VPCに複数のサービスネットワークを関連づけることはできません。 VPCからアクセスしたいサービスを関連づけているサービスネットワークに関連づけるようにしてください。
実現できない例
実現できる例
実現できる例