案件でCloudWANを触る機会があったため、CloudWAN構築方法やメリット・デメリットなどについて書いていこうと思います。
AWS CloudWANとTransitGatewayの違い
まずは、TransitGatewayとCloudWANの違いについて考えてみようと思います。
これまでは、TransitGatewayによりリージョン内のVPC、VPN、DirectConnectの一元管理を行っていました。TransitGatewayはリージョナルサービスとなるため、複数リージョンを接続する場合は、TransitGateway同士をピアリングさせる必要がありました(画像内の赤く囲ってある部分です)。
リージョン同士を相互に通信させたい場合はTransitGatewayピアリングをメッシュ構成で設定する必要があります。運用の際はリージョンを切り替え、各リージョンのTransitGatewayの画面からルートテーブルなどの管理を行うことになります。
リージョン内の通信については一元管理できるとは言え、リージョンが増えるごとに運用の手間は増大し、やや不便な状態でした。
ここにCloudWANが登場しました。CloudWANを使用することで、リージョンまたぎの通信も一元管理することが可能となりました。VPCやVPNをCloudWANに直接接続し、ルーティングの制御をすることが可能です。ただし、DirectConnectを使用する場合はTransitGatewayを併用する必要がある点に注意が必要です。
AWS CloudWANの詳細
検証の前に、CloudWANの構成要素について確認します。
CloudWANの部分を詳細化した構成図がこちらになります。
リージョンごとにCoreNetworkEdgeが存在します。CoreNetworkEdge同士はBGPでルートを共有しています。「検証環境」「本番環境」などでルーティングを変えたい場合はセグメントを定義することで、各環境のルートテーブルを分けることができます。CoreNetworkEdgeを作成するリージョンやセグメント、セグメント内のルーティングなどはCoreNetworkPolicyで定義します。VPC・TransitGateway・VPNを各セグメントに接続させたい場合は、アタッチメントの作成後にCoreNetworkPolicyにてアタッチメントポリシーの設定を行います。
ClowdWANのメリット・デメリット
CloudWANのメリット
・マネージドサービスの為リージョン間のDRについて考慮しなくて良い
・NetworkManagerで各リージョンのTransitGateway・DirectConnect・VPNやVPCなどを一覧化し一元管理が可能
・ダイナミックルーティングによりルートテーブルのメンテナンス作業を省略可能
CloudWANのデメリット
・TransitGatewayよりも高コスト
・ダイナミックルーティングの為細かいルーティングの制御が行いづらい
CloudWANの内部ではTransitGatewayが動いているそうです。なので、CloudWANは大まかにはTransitGatewayのマネージド版と考えることができそうです。
VPCをCloudWANに接続した場合は、ダイナミックルーティングでCloudWAN側のルートテーブルに情報が伝播します。そのため、ルーティングの管理などの手間を減らすことができます。特にマルチリージョン構成の場合は、TransitGatewayのピアリングの手間を省けるのは大きなメリットだと思います。
その反面、ルーティングの細かい制御がやりづらい仕様となっています。IDS/IPSなどを導入し、VPC間やリージョン間の通信経路を細かく制御する場合は、TransitGatewayの方が有効なケースもありうるかと思います。また、CloudWANはコアネットワークの数・アタッチメントの数・CloudWANに接続したTransitGatewayの数に応じて時間課金が行われます(参考:https://aws.amazon.com/jp/cloud-wan/pricing/?nc=sn&loc=3) 。
TransitGatewayの料金と比べると高額になるため、実際の利用時は考慮が必要です(TransitGatewayの利用料:https://aws.amazon.com/jp/transit-gateway/pricing/) 。
検証環境でCloudWANを利用する場合は、検証完了後こまめにGlobalNetworkやCoreNetworkを削除するよう注意してください。
今回はCloudWANの概要やメリット・デメリットなどを確認してきました。
次回はCloudWANの初期設定について書こうと思います。ここまでお読みいただきありがとうございました。