Networking
カテゴリ概要
Azure のネットワーキングサービスは、仮想ネットワークの構築からグローバルなトラフィック配信、オンプレミスとのハイブリッド接続までをカバーする。AWS の VPC、ELB、CloudFront、Route 53 などに対応するサービスが揃っているが、Azure Front Door のように複数の AWS サービスの機能を統合したサービスや、NSG のように付与対象が異なるものがあるため、1:1 の単純な置き換えでは済まないケースがある。
サービスマッピング一覧
| 機能 | AWS サービス | Azure サービス | 主な違い |
|---|---|---|---|
| 仮想ネットワーク | VPC | VNet | 概念はほぼ同一。Azure はリソースグループへの所属が必須 |
| L4 ロードバランサー | NLB | Azure Load Balancer | ほぼ同等。Azure は Basic と Standard の 2 SKU |
| L7 ロードバランサー | ALB | Application Gateway | WAF 統合が可能。ALB より機能が多い |
| CDN + グローバル LB | CloudFront + Global Accelerator | Azure Front Door | CDN + グローバル LB + WAF を 1 サービスで統合 |
| CDN | CloudFront | Azure CDN | Front Door のほうが推奨されつつある |
| DNS | Route 53 | Azure DNS | ドメイン登録機能がない |
| VPN 接続 | VPN Gateway | Azure VPN Gateway | ほぼ同等 |
| 専用線接続 | Direct Connect | ExpressRoute | Global Reach でリージョン間接続可能 |
| ハブ型ネットワーク | Transit Gateway | Virtual WAN | Virtual WAN はルーティング・VPN・ExpressRoute を統合 |
| プライベート接続 | PrivateLink | Azure Private Link | ほぼ同等 |
| ファイアウォール(インスタンス) | Security Groups | Network Security Group(NSG) | サブネットまたは NIC に付与(インスタンスではない) |
| API 管理 | API Gateway | Azure API Management(APIM) | 開発者ポータル付きの本格的な API 管理基盤 |
主要サービス詳細
Azure VNet(AWS: VPC)
Azure 上に論理的に分離されたプライベートネットワークを構築するサービス。
- VPC と同様にサブネット、ルートテーブル、ネットワークセキュリティグループで構成される
- VNet 内のサブネットはデフォルトで相互通信可能(AWS と同様だが、AWS のようにパブリック / プライベートの区別はサブネット単位ではなくルートテーブルで制御する)
- VNet ピアリングは推移的でない。VNet A → B、B → C のピアリングがあっても A → C は通信できない。推移的な接続が必要な場合は Virtual WAN または Azure Firewall をハブとして使う
- アドレス空間は VNet 作成後にも追加可能(VPC の CIDR 追加と同様)
- サービスエンドポイントと Private Endpoint の 2 つの方法で Azure PaaS サービスにプライベート接続できる
Azure Load Balancer(AWS: NLB)
TCP/UDP トラフィックを複数のバックエンドに分散するレイヤー 4 ロードバランサー。
- NLB と同様に超低レイテンシで高スループットの負荷分散を提供する
- Basic SKU(無料・SLA なし)と Standard SKU(有料・SLA 99.99%)の 2 種類がある。本番環境では Standard を使う
- 内部(Internal)とパブリック(Public)の 2 つのデプロイモードがある(NLB と同様)
- ヘルスプローブで自動的に異常なバックエンドを除外する
- AWS の NLB と異なり、固定 IP はパブリック Load Balancer に Standard SKU で自動付与される(NLB は Elastic IP を明示的に割り当てる)
Azure Application Gateway(AWS: ALB)
HTTP/HTTPS トラフィックを処理するレイヤー 7 ロードバランサー。
- ALB と同様にパスベースルーティング、ホストベースルーティングに対応する
- WAF を統合可能(Application Gateway WAF v2)。ALB の場合は別途 AWS WAF をアタッチするが、Application Gateway は WAF 機能を内包できる
- SSL 終端、Cookie ベースのセッションアフィニティ、URL リダイレクト機能を備える
- 自動スケーリングに対応(v2 SKU)。ALB は自動スケーリングがデフォルトだが、Application Gateway v1 は手動スケーリングが必要だったため、v2 を選ぶこと
- WebSocket と HTTP/2 にネイティブ対応する
Azure Front Door(AWS: CloudFront + Global Accelerator)
グローバルなレイヤー 7 負荷分散、CDN、WAF を統合したサービス。
- AWS では CloudFront(CDN)+ Global Accelerator(グローバル LB)+ AWS WAF(Web 防御)の 3 サービスに分散している機能を 1 サービスで提供する
- エニーキャストによるグローバルなトラフィックルーティングで、最も近い POP(Point of Presence)にユーザーを誘導する
- 組み込みの WAF ポリシーでボット防御、レート制限、カスタムルールを適用できる
- SSL 証明書の自動管理、カスタムドメインの設定が容易
- Private Link 経由でバックエンドにプライベート接続できる(CloudFront + VPC オリジンに相当)
Azure CDN(AWS: CloudFront)
静的コンテンツをエッジロケーションからキャッシュ配信する CDN サービス。
- Microsoft、Akamai、Verizon のプロバイダーから選択できる
- Front Door Standard/Premium への統合が進んでおり、新規案件では Front Door のほうが推奨されつつある
- カスタムドメイン、HTTPS、キャッシュルールに対応する
- CloudFront の Lambda@Edge に相当するエッジコンピューティング機能は Azure CDN 単体にはない(Front Door + Azure Functions で実現する)
Azure DNS(AWS: Route 53)
Azure 上で DNS ゾーンをホスティングするマネージド DNS サービス。
- ドメイン登録機能がない(Route 53 はドメイン登録 + DNS ホスティング + ヘルスチェックの 3 機能を提供するが、Azure DNS はホスティングのみ)
- ドメインの購入・登録は App Service ドメインまたは外部レジストラ(お名前.com 等)で行い、ネームサーバーを Azure DNS に向ける
- Route 53 のレイテンシベースルーティングや加重ルーティングに相当する機能は、Azure Traffic Manager が担当する
- プライベート DNS ゾーンで VNet 内の名前解決が可能(Route 53 のプライベートホストゾーンに相当)
- Azure リソースのエイリアスレコードに対応し、Zone Apex(ネイキッドドメイン)を直接 Azure リソースに向けられる
Azure VPN Gateway(AWS: VPN Gateway)
VNet とオンプレミスネットワークを IPsec/IKE VPN トンネルで接続するサービス。
- サイト間(S2S)VPN、ポイント対サイト(P2S)VPN、VNet 間接続に対応する
- SKU によって帯域幅とトンネル数の上限が異なる(VpnGw1 〜 VpnGw5)
- アクティブ/アクティブ構成で高可用性を実現できる(AWS の VPN Gateway も 2 トンネルのアクティブ/パッシブ)
- BGP に対応しており、動的ルーティングが可能
Azure ExpressRoute(AWS: Direct Connect)
オンプレミスと Azure を専用回線で接続するサービス。
- Direct Connect と同様に、インターネットを経由しない低レイテンシ・高帯域の接続を提供する
- Global Reach 機能により、ExpressRoute 回線を介して異なるリージョンのオンプレミス拠点同士を接続できる(Direct Connect にはない機能)
- Microsoft ピアリングを使えば、Microsoft 365 や Dynamics 365 への専用線接続も可能
- ExpressRoute Direct で 100 Gbps の超高帯域接続に対応する
Azure Virtual WAN(AWS: Transit Gateway)
複数の VNet、VPN、ExpressRoute を統合管理するハブ&スポーク型のネットワークサービス。
- Transit Gateway と同様にハブ&スポーク型のトポロジを提供するが、VPN Gateway、ExpressRoute Gateway、Azure Firewall をハブ内に統合できる点が異なる
- グローバルなトランジットネットワークを構築でき、リージョン間の VNet 接続を簡素化する
- ルーティングインテントにより、トラフィックを Azure Firewall 経由に強制できる
- Basic SKU と Standard SKU があり、Standard は任意の接続(Any-to-Any)をサポートする
Azure Private Link(AWS: PrivateLink)
Azure PaaS サービスや他のサービスに VNet 内からプライベートに接続する仕組み。
- AWS PrivateLink と同様に、インターネットを経由せずにサービスにアクセスできる
- Private Endpoint を作成すると、VNet のサブネット内にプライベート IP が割り当てられる
- Azure Storage、SQL Database、Cosmos DB などの主要 PaaS サービスに対応する
- 自分のサービスを Private Link サービスとして公開し、他のテナントからプライベートにアクセスさせることも可能
Network Security Group / NSG(AWS: Security Groups)
ネットワークトラフィックをフィルタリングするステートフルなファイアウォール。
- AWS の Security Group がインスタンス(ENI)に付与されるのに対し、NSG はサブネットまたは NIC に付与する
- サブネットに NSG を付与すると、そのサブネット内のすべてのリソースに一括適用される(AWS では各インスタンスに個別に Security Group を設定する)
- 優先度(100〜4096)を指定してルールの評価順序を制御できる(Security Group には優先度の概念がない)
- デフォルトでインバウンドを拒否し、VNet 内通信と Load Balancer からの通信のみ許可する
- 拒否ルールを明示的に記述できる(Security Group は許可ルールのみ)
Azure API Management / APIM(AWS: API Gateway)
API のライフサイクル全体を管理する包括的なプラットフォーム。
- AWS API Gateway が API の公開・認証・スロットリングに特化しているのに対し、APIM は開発者ポータル、API バージョニング、サブスクリプション管理、分析ダッシュボードを含む本格的な API 管理基盤
- 開発者ポータルにより、外部開発者が API ドキュメントの閲覧、テスト、サブスクリプションキーの取得をセルフサービスで行える
- ポリシー(XML ベース)でリクエスト/レスポンスの変換、認証、キャッシュ、レート制限を柔軟に制御できる
- Consumption、Developer、Basic、Standard、Premium の複数ティアがあり、Consumption ティアはサーバーレスで API Gateway に近い使い方ができる
- マルチリージョンデプロイに対応し、Premium ティアでは VNet 統合も可能
AWS との主要な違い
NSG の付与対象が異なる
AWS の Security Group はインスタンス(正確には ENI)に付与するため、同一サブネット内でもインスタンスごとに異なるルールを適用するのが一般的である。Azure の NSG はサブネットまたは NIC に付与する。サブネットレベルで NSG を適用すれば一括管理が容易になるが、「特定の VM だけ特別なルールを適用したい」場合は NIC レベルで別の NSG を追加する必要がある。サブネット NSG と NIC NSG の両方が適用される場合、インバウンドは「サブネット NSG → NIC NSG」の順に評価される点に注意する。
Front Door が複数サービスの機能を統合
AWS では CDN(CloudFront)、グローバルなトラフィックルーティング(Global Accelerator)、Web アプリケーション防御(WAF)をそれぞれ独立したサービスとして構成し、組み合わせて使う。Azure では Front Door がこれらの機能を 1 つのサービスで提供するため、設定・管理がシンプルになる。一方で、「CDN だけ」「WAF だけ」を独立して使いたい場合は機能過多になる可能性がある。
Azure DNS にはドメイン登録機能がない
AWS の Route 53 はドメイン登録、DNS ホスティング、ヘルスチェックベースのルーティングを一元的に提供する。Azure DNS はホスティング機能のみであり、ドメインの購入・登録は App Service ドメインまたは外部レジストラで行う。また、Route 53 の加重ルーティングやレイテンシベースルーティングに相当する機能は Azure Traffic Manager が担当するため、DNS + トラフィック制御を実現するには 2 つのサービスを組み合わせる必要がある。
APIM は開発者ポータル付きの本格的な API 管理基盤
AWS API Gateway が「API のエンドポイントを公開する」ことに特化しているのに対し、Azure APIM は API のライフサイクル管理(設計・公開・バージョニング・廃止)と外部開発者へのセルフサービスポータルを含む包括的な API 管理プラットフォームである。API Gateway 相当のシンプルな使い方をしたい場合は、APIM の Consumption ティアを選択するとよい。
VNet ピアリングは推移的でない
AWS の VPC Peering も推移的ではないが、AWS では Transit Gateway を使って簡単にハブ&スポーク構成を構築できる。Azure でも Virtual WAN がこの役割を果たすが、Virtual WAN はルーティング、VPN、ExpressRoute、Azure Firewall を統合管理する大規模なサービスであり、Transit Gateway よりも構成の選択肢が広い反面、設計の複雑さが増す場合がある。小規模な環境ではハブ VNet + Azure Firewall によるシンプルなハブ&スポーク構成も検討する。
サービス選定の指針
| ユースケース | AWS での選択肢 | Azure での選択肢 |
|---|---|---|
| クラウド上のプライベートネットワーク構築 | VPC | VNet |
| TCP/UDP の負荷分散(L4) | NLB | Azure Load Balancer(Standard) |
| HTTP/HTTPS の負荷分散(L7) | ALB | Application Gateway v2 |
| グローバル CDN + WAF + LB を統合 | CloudFront + Global Accelerator + WAF | Azure Front Door |
| CDN のみ | CloudFront | Azure CDN(※ Front Door 推奨) |
| DNS ホスティング | Route 53 | Azure DNS |
| トラフィックの加重 / フェイルオーバー制御 | Route 53 ルーティングポリシー | Azure Traffic Manager |
| サイト間 VPN 接続 | VPN Gateway | Azure VPN Gateway |
| 専用線接続 | Direct Connect | ExpressRoute |
| 複数ネットワークのハブ型相互接続 | Transit Gateway | Virtual WAN |
| PaaS サービスへのプライベート接続 | PrivateLink | Azure Private Link |
| ファイアウォール(トラフィック制御) | Security Groups + NACL | NSG(+Azure Firewall) |
| API の公開・管理 | API Gateway | APIM(Consumption ティアで軽量利用可) |