AWS Transit Gateway
複数の VPC やオンプレミスネットワークをハブ&スポーク型で相互接続し、ネットワーク構成を大幅に簡素化するサービス
概要
AWS Transit Gateway は、複数の VPC、VPN 接続、Direct Connect ゲートウェイを単一のハブに集約して相互接続するネットワークサービスです。VPC ピアリングではフルメッシュ接続が必要で VPC 数の増加に伴い管理が複雑化しますが、Transit Gateway はハブ&スポーク型のトポロジーで接続数を劇的に削減します。ルートテーブルによるトラフィック制御、マルチキャスト対応、リージョン間ピアリングなど、エンタープライズネットワークに必要な機能を備えています。
ルートテーブルと Propagation によるネットワーク分離
Transit Gateway の強力な機能はルートテーブルによるトラフィック制御です。デフォルトでは全アタッチメント (VPC、VPN) が同一のルートテーブルを共有し、相互に通信可能です。しかし実務では、本番環境と開発環境の分離、共有サービス VPC への片方向アクセスなど、細かいルーティング制御が必要です。複数のルートテーブルを作成し、アタッチメントごとに関連付けることで、本番 VPC 同士は通信可能だが開発 VPC からは本番にアクセスできない、共有サービス VPC (DNS、監視) には全 VPC からアクセス可能、といったネットワークセグメンテーションを実現できます。ルートテーブルの伝播 (Propagation) 機能を使えば、アタッチメントのルートを自動的にルートテーブルに追加でき、手動でのルート管理を最小限に抑えられます。Azure Virtual WAN はルーティングインテントで「インターネットトラフィックはファイアウォール経由」のような意図ベースの設定が可能ですが、Transit Gateway はルートテーブルの手動管理が基本で、より細かい制御ができる反面、設定の複雑さが増します。
Egress VPC パターンと NAT Gateway コストの集約
Transit Gateway の代表的な活用パターンが Egress VPC によるインターネット出口の集約です。各 VPC に NAT Gateway を個別に配置すると、NAT Gateway の固定料金 (AZ あたり月額約 32 ドル) が VPC 数に比例して増加します。Egress VPC パターンでは、NAT Gateway を 1 つの Egress VPC に集約し、Transit Gateway のルーティングで全 VPC のインターネット向けトラフィックを Egress VPC 経由にすることで、NAT Gateway のコストを大幅に削減できます。Organizations の各アカウントに VPC を作成し、RAM (Resource Access Manager) で Transit Gateway を共有して全 VPC を接続する構成が一般的です。Network Firewall をインスペクション VPC に配置し、Transit Gateway 経由で全トラフィックを検査する集中型セキュリティ構成と組み合わせることも多いです。AWS ネットワーク設計の書籍 (Amazon) も参考になります。
VPC ピアリングとの使い分けとコスト判断
Transit Gateway のデータ処理料金は 1 GB あたり 0.02 ドルで、大量のデータ転送がある環境ではコストが無視できません。VPC ピアリングはデータ処理料金が発生しないため、同一 AZ 内の VPC 間通信が多い場合はピアリングの方がコスト効率に優れます。判断基準として、接続する VPC が 3 つ以下でフルメッシュ接続の管理が容易な場合は VPC ピアリング、4 つ以上の VPC を接続する場合や VPN/Direct Connect との統合が必要な場合は Transit Gateway が適しています。両者を併用するハイブリッド構成も有効で、データ転送量が多い VPC 間はピアリングで直接接続し、それ以外の VPC は Transit Gateway 経由で接続するパターンです。リージョン間接続が必要な場合は Transit Gateway ピアリングを使用しますが、リージョン間のデータ転送料金が追加で発生するため、リージョン間のトラフィック量を事前に見積もることが重要です。