この参照アーキテクチャでは、Azureのハブ-スポーク トポロジの詳細を説明します。 ハブ仮想ネットワークは、多くのスポーク仮想ネットワークへの接続の中心点として機能します。 ハブは、オンプレミス ネットワークへの接続ポイントとして使用することもできます。 スポーク仮想ネットワークはハブとピアリングし、ワークロードを分離するために使用できます。
Hub and spoke 構成を使用する利点には、コスト削減、サブスクリプション制限の克服、およびワークロードの分離が含まれます。 また、Azure Firewall および Azure Bastion ホストも配置されます。 オプションで、この配置には、最初のスポーク ネットワークの仮想マシンと VPN ゲートウェイを含めることができます。
- Azure CLI
- PowerShell
- Azure portal
次のコマンドを使って配置のリソース グループを作成します。
az group create --name hub-spoke --location eastus
次のコマンドを実行して、ハブおよびスポークのネットワーク構成、ハブとスポークの間の VNet ピア、および Bastion ホストを展開します
az deployment group create --resource-group hub-spoke \ --template-uri https://raw.githubusercontent.com/mspnp/samples/master/solutions/azure-hub-spoke/azuredeploy.json
次のコマンドを使用して、展開のリソース グループを作成します。 試行]ボタンをクリックして、埋め込みシェルを使用します。
New-AzResourceGroup -Name hub-spoke -Location eastus
次のコマンドを実行して、ハブおよびスポークのネットワーク構成、ハブとスポークの間の VNet ピアリング、および Bastion ホストを配置します
New-AzResourceGroupDeployment -ResourceGroupName hub-spoke ` -TemplateUri https://raw.githubusercontent.com/mspnp/samples/master/solutions/azure-hub-spoke/azuredeploy.json
次のボタンを使用して Azure ポータルを使用してリファレンスを配置します。
詳細情報および追加の展開オプションについては、このソリューションの展開に使用した ARM テンプレートを参照してください。
使用例
このアーキテクチャの代表的な使用例としては、以下のものがあります。 共有サービスはハブ仮想ネットワークに配置され、各環境は分離を維持するためにスポークに配置されます。
アーキテクチャ
アーキテクチャは、次のコンポーネントで構成されます。 ハブ仮想ネットワークは、オンプレミス ネットワークへの接続の中心点であり、スポーク仮想ネットワークでホストされるさまざまなワークロードによって消費されるサービスをホストする場所です。 スポーク仮想ネットワークは、他のスポークとは別に管理される独自の仮想ネットワーク内でワークロードを分離するために使用されます。 各ワークロードには複数の層が含まれ、Azure ロードバランサーを介して複数のサブネットが接続される場合があります。 2 つの仮想ネットワークは、ピアリング接続を使用して接続できます。 ピアリング接続は、仮想ネットワーク間の非経由、低遅延の接続です。 ピアリングされると、仮想ネットワークは、ルーターを使用せずに、Azure バックボーンを使用してトラフィックを交換します。 Azure Bastionを使用すると、ブラウザとAzureポータルを使用して仮想マシンに安全に接続することができます。 Azure BastionホストはAzure Virtual Network内に展開され、VNet内の仮想マシン、またはピアリングされたVNet内の仮想マシンにアクセスすることができます。 Azure Firewallは、サービスとしてのマネージドファイアウォールです。 Firewallインスタンスは、独自のサブネットに配置されます。
VPN 仮想ネットワークゲートウェイまたはExpressRouteゲートウェイ。 仮想ネットワークゲートウェイは、オンプレミスネットワークとの接続に使用されるVPNデバイス、またはExpressRoute回線への仮想ネットワークの接続を可能にします。 詳しくは、オンプレミスネットワークをMicrosoft Azure仮想ネットワークに接続するを参照してください。
VPN デバイス。 オンプレミスネットワークへの外部接続を提供するデバイスまたはサービスです。 VPNデバイスは、ハードウェアデバイスの場合もあれば、Windows Server 2012のRouting and Remote Access Service(RRAS)のようなソフトウェアソリューションの場合もあります。 詳細については、サイト間VPNゲートウェイ接続のVPNデバイスについてを参照してください。
推奨事項
以下の推奨事項は、ほとんどのシナリオに適用されます。
リソースグループ
このドキュメントに含まれるサンプルソリューションでは、1つのAzureリソースグループを使用しています。 実際には、ハブと各スポークは、異なるリソース グループ、さらには異なるサブスクリプションに実装することができます。 異なるサブスクリプションで仮想ネットワークをピアリングする場合、両方のサブスクリプションを、同じまたは異なる Azure Active Directory テナントに関連付けることができます。 これにより、ハブで維持されているサービスを共有しながら、各ワークロードを分散管理できます。
仮想ネットワークと GatewaySubnet
アドレス範囲が /27 である GatewaySubnet というサブネットが作成されます。 仮想ネットワーク・ゲートウェイはこのサブネットを必要とします。 このサブネットに32個のアドレスを割り当てることで、将来的にゲートウェイのサイズ制限に到達するのを防ぐことができます。
ゲートウェイの設定の詳細については、接続タイプに応じて、次の参照アーキテクチャを参照してください。
- ExpressRouteを使用したハイブリッドネットワーク
- VPNゲートウェイ
高い可用性のために、 ExpressRouteとフェールオーバー用のVPNを使用することができます。 オンプレミス ネットワークとの接続が必要ない場合は、ゲートウェイを使用せずにハブ/スポーク トポロジーを使用することもできます。
仮想ネットワーク ピアリング
仮想ネットワーク ピアリングは、2 つの仮想ネットワーク間の非経時的な関係です。 スポーク同士が互いに接続する必要がある場合は、それらのスポーク間に別のピアリング接続を追加することを検討してください。
しかし、互いに接続する必要があるスポークが複数あるとします。 その場合、仮想ネットワークあたりの仮想ネットワーク・ピアリング数の制限により、可能なピアリング接続をすぐに使い果たしてしまいます。 (詳細については、「ネットワークの制限」を参照してください。 このシナリオでは、ユーザー定義ルート (UDR) を使用して、スポーク宛のトラフィックが Azure Firewall またはハブでルーターとして動作するネットワーク仮想アプライアンスに送信されるようにすることを検討します。 これにより、スポークが相互に接続できるようになります。
また、リモート ネットワークと通信するためにハブのゲートウェイを使用するようにスポークを構成することもできます。 ゲートウェイ トラフィックがスポークからハブに流れ、リモート ネットワークに接続できるようにするには、次の手順が必要です。
- ゲートウェイ転送を許可するようにハブのピアリング接続を構成します。
- リモート ゲートウェイを使用するように各スポークのピアリング接続を構成します。
- すべてのピアリング接続で転送したトラフィックが使用できるように構成します。
仮想ネットワーク ピアリングの作成に関する追加情報は、VNet ピアリングの作成を参照してください。
スポーク接続
スポーク間の接続が必要な場合、Azure Firewall または他のネットワーク仮想アプライアンスを展開することを検討して、スポークからファイアーウォール / ネットワーク仮想アプライアンスにトラフィックを転送し、そのファイアウォールで第2のスポークのルートを作成できるようルートを作成します。 このシナリオでは、転送されたトラフィックを許可するようにピアリング接続を設定する必要があります。
VPN ゲートウェイを使用してスポーク間でトラフィックを転送することもできますが、これは遅延とスループットに影響を及ぼします。 構成の詳細については、「仮想ネットワーク ピアリングのための VPN ゲートウェイ トランジットの構成」を参照してください。
より多くのスポークに対してハブを確実に拡張するために、ハブで共有されるサービスを検討します。 たとえば、ハブがファイアウォール サービスを提供している場合、複数のスポークを追加するときは、ファイアウォール・ソリューションの帯域幅の制限を考慮してください。 これらの共有サービスの一部を 2 階層のハブに移動するとよいでしょう。
運用上の考慮事項
ハブおよびスポーク ネットワークの展開と管理では、以下を考慮します。
ネットワーク監視
ネットワーク コンポーネントを監視してトラブルシューティングするには、Azure Network Watcher を使用します。 ネットワーク・パフォーマンス・マネージャーは、Microsoft ExpressRoute 回路に関する情報を監視するのに適したツールです。 VPN 診断は、アプリケーションをオンプレミスのユーザーに接続するサイト間の VPN 接続のトラブルシューティングに役立つ別のツールです。
詳細については、Azure Well-Architected Framework の Azure Network Watcher を参照してください。
コストに関する考慮事項
ハブおよびスポーク ネットワークを展開および管理する場合、次のコスト関連項目を考慮します。
Azure Firewall
このアーキテクチャでは、ハブ ネットワークに Azure Firewall が展開されます。 共有ソリューションとして使用され、複数のワークロードによって消費される場合、Azure Firewallは、他のネットワーク仮想アプライアンスよりも最大で30~50%節約できます。 詳細については、Azure Firewall vs ネットワーク仮想アプライアンスを参照してください。
仮想ネットワーク ピアリング
プライベートIPアドレスを使用して仮想ネットワーク間でトラフィックをルーティングするために、仮想ネットワーク ピアリングを使用することができます。
例えば、ゾーン1の仮想ネットワークからゾーン2の別の仮想ネットワークへデータを転送する場合、ゾーン1ではアウトバウンド、ゾーン2ではインバウンドの転送レートが発生します。 詳しくは、仮想ネットワークの価格設定を参照してください。