AWSにおいて構築したネットワークを相互に接続する方法として以下の3つをまとめる。
とりあえず覚書程度、都度更新していければ・・・。
・VPC Peering
・Shared VPC(VPC Sharing)
・AWS Transit Gateway
※sharerd VPCとtransit GatewayはRAM(※1)の機能により実現される
VPC Peering
2つのVPC間でプライベートなトラフィックのルーティングを可能にする。
アカウント、リージョンを跨ぐ接続が可能。
但し、VPCを跨ぐ通信は不可であるため、通信させたいVPC間ごとにPeeringし、フルメッシュで接続しなければならない。
Shared VPC(VPC Sharing)
共有させたいサブネットを持つアカウント(所有者)からSharedの招待を受けたアカウント(参加者)は共有されたサブネットを利用できる。
所有者はリソースの作成・削除・変更ができる。
但し、参加者が共有サブネット内に作成したリソースは削除できない。
参加者はサブネット内のリソースを使用、表示、作成、変更および削除できる。
但し、他の参加者または所有者に属するリソースを表示、変更、または削除することはできない。
また、他の参加者が作成したリソースは認識できない。
ルートテーブルやNACLの閲覧は可能。
請求はアカウントで分割される。
参加者はサブネット内のアプリケーションリソースの使用、データ転送に対して料金を請求される。
共通基盤をそれぞれのネットワークに配置せず、1ヵ所で集中管理できるため、リソースや運用管理の手間を省略できる。
制限
同じAWS Organization(※2)に所属している必要がある。
デフォルトVPC内のサブネットはシェアできない。
サポートされていないサービス
・Amazon Aurora
・AWS CloudHSM
・AWS Glue
・Amazon EMR
・Network Load Balancer
AWSの仕様として、あるAWSアカウントにとっての「us-east-1a」は、別のAWSアカウントにとっては「us-east-1b」となるように、AWSアカウントによってAZ名と実態が異なる場合がある。
AWSアカウント間で正しくAZを特定するには、AZ IDというAZの固有IDを使う。
AWS Transit Gateway
以前はCloudFormation等を利用したTransit VPCで実現していたことを
マネージドサービスとして利用できるようになった。
AWS Transit GatewayはAmazon VPCやVPN、Direct Connect Gateway(DXGW)を接続するハブの役割を果たす。
内部に複数のルートテーブルを持ちAmazon VPCやVPN、DXGWごとに関連付けを指定でき、セグメント化が可能。
また、アカウントを跨いで接続することができる。
※東京リージョンでのDirect Connect(※3)はサポートは未だ
補足:オンプレミスとAWSのネットワークを接続する方法
(別途まとめられれば・・・)
■Direct Connect(DX)
VPCごとにVirtual Interface(VIF)を作成
■Direct Connect Gateway(DXGW)
各VPCに対してVIFを作らなくても、DXGWに対してVIFを紐づければ、DXGWから各VPCに接続できるようになりました
※1 RAM(AWS Resource Access Manager):AWSのリソースを任意のAWSアカウント、またはAWS組織内で簡単かつ安全に共有できるサービス
※2 AWS Organization:複数のAWSアカウントを一元管理できるサービス
※3 Direct Connect:AWSとオンプレミスのネットワーク環境を接続するサービス