正解: 仮想ネットワーク 1、サブネット 4
VNet 間のデータ転送コストを発生させないためにすべてのリソースを 1 つの VNet に集約し、VM 用・App Service 委任用・SQL Managed Instance 委任用・GatewaySubnet の 4 サブネットに分離する構成が最適です。
解説: 同じ仮想ネットワーク内の通信はリージョン内・同一 VNet として課金が発生せず、ピアリングを跨ぐとイングレス/エグレスに課金されるため、コスト最小化の観点では 1 つの VNet にまとめるのが正解です。一方、サブネットは用途ごとに分離する必要があります。仮想ネットワーク ゲートウェイは「GatewaySubnet」という名前の専用サブネットが必須です。App Service の VNet 統合は Microsoft.Web/serverFarms へ委任した専用サブネットを要求します。SQL Managed Instance は Microsoft.Sql/managedInstances へ委任した専用サブネットが必須で、他リソースとの共有はできません。仮想マシンも上記委任サブネットには配置できないため独自サブネットが必要です。よって 1 VNet + 4 サブネット (VM、App Service 委任、SQL MI 委任、GatewaySubnet) が最小構成となります。
各選択肢の検討:
- 仮想ネットワーク: 1、サブネット: 4: 委任要件と GatewaySubnet 要件を満たしつつ単一 VNet で完結し、データ転送コストを最小化する最適解。
- 仮想ネットワーク: 1、サブネット: 3: App Service 委任、SQL MI 委任、GatewaySubnet、VM 用のうちいずれかを共有できないため不足する。
- 仮想ネットワーク: 2、サブネット: 4: VNet を 2 つに分けると VNet ピアリング経由のトラフィック課金が発生し、コスト要件に反する。
- 仮想ネットワーク: 4、サブネット: 4: リソースごとに VNet を分けるとピアリング料金とイングレス/エグレス料金が増大し、要件を満たさない。
- 仮想ネットワーク: 1、サブネット: 2: 委任要件と GatewaySubnet 要件を満たせず、SQL MI や App Service VNet 統合のデプロイができない。
参考: Microsoft Learnサブネット委任の概要SQL Managed Instance ネットワーク アーキテクチャApp Service VNet 統合