Ignite 2017 開催中にアナウンスがあった Global VNet Peering (Preview) ですが、Azure PowerShell、Azure ポータルからも利用可能になっていたみたいなので、今さらながら試してみました。
- Public preview: Global VNet Peering
https://azure.microsoft.com/ja-jp/updates/global-vnet-peering-preview/ - Global virtual network peering | Azure ロードマップ | Microsoft Azure
https://azure.microsoft.com/ja-jp/roadmap/global-vnet-peering/
Global VNet Peering (Preview)
Global VNet Peering は、仮想ネットワーク ゲートウェイを使用することなく異なるリージョン間の VNet を接続 (Peering)、Azure のバックボーン ネットワークを経由して通信を行う機能です。
これまでは、同一リージョン内に存在する VNet 間の接続のみでしたが、Global VNet Peering を利用することで様々なシナリオで仮想ネットワーク ゲートウェイを置き換えて使用することが可能となります (例えば、そのリージョンでしか使用できない VM リシーズと通信したい場合など)。
Global VNet Peering (Preview) が作成、利用できるリージョンは、現時点で以下の 3リージョンとなっています。
- 米国西部 2 (US West 2) リージョン
- 米国中西部 (US West Central) リージョン
- カナダ中部 (Canada Central) リージョン
また、従来の VNet Peering と同様、異なるディレクトリ (Azure AD ドメイン) 間での作成はできず、また、Global VNet Peering にゲートウェイ トランジットは構成できないようです (後述)。
検証環境
以下の図のように、Global VNet Peering を 3つ (実際には 6つ)、Azure ポータルから作成します。
※各リージョンに対して、リソースグループや VNet などリソースは ARM (Azure Resource Manager) として作成済み。
- 米国西部 2 – 米国中西部リージョン間
- 米国西部 2 – カナダ中部リージョン間
- 米国中西部 – カナダ中部リージョン間
Global VNet Peering 準備
現在 Global VNet Peering は Public Preview のため、Azure Powershell を用いて有効にする必要があります。
※手順 1.、2. で使用するコマンドは省略。
- 管理者権限 PowerShell を起動、Azure モジュールをインポート、Azure にログインします。
- Global VNet Peering を利用するサブスクリプションを選択します。
- 以下のコマンドを入力、実行し、Global VNet Peering の状態を確認します。
Get-AzureRmProviderFeature -FeatureName AllowGlobalVnetPeering -ProviderNamespace Microsoft.Network
RegistrationState が「Registered」ではない場合、手順 4. を実施します。
- 以下のコマンドを入力、実行し、Global VNet Peering および、Microsoft.Network を登録します。
Register-AzureRmProviderFeature -FeatureName AllowGlobalVnetPeering -ProviderNamespace Microsoft.Network Register-AzureRmResourceProvider -ProviderNamespace Microsoft.Network
Global VNet Peering に関して、すぐに「Registered」とはならずに「Registering」になると思うので、その場合は間を空けて手順 5. を実施します。
- 以下のコマンドを入力、実行し、Global VNet Peering の登録状況を確認します。
Get-AzureRmProviderFeature -FeatureName AllowGlobalVnetPeering -ProviderNamespace Microsoft.Network
うまく「Registered」とならない場合は、1日程度空けて再度手順 3. を実行すると、「Registered」になることがあります。
実施した手順
- 米国西部 2 – 米国中西部リージョン間の Global VNet Peering を作成するために、米国西部 2 の VNet である GVNetP-USW2-VNet の管理ブレードから [ピアリング] – [+ 追加] をクリックします。
- [名前] でピアリング名を入力 (ここでは、USW2toUSWC)、[仮想ネットワークのデプロイ モデル] や [サブスクリプション] を指定した後、[仮想ネットワーク] でピアリングする VNet (ここでは、GVNetP-USWC-VNet) を指定して、[OK] ボタンをクリック、作成します。
なお、仮想ネットワークの見え方として以下のように表示されます。
- デプロイが完了すると、作成したピアリング (USW2toUSWC) が [ピアリング] ブレードに表示されます。[ピアリング状態] が [開始済み] となっていますが、米国西部 2 → 米国中西部の接続が完了したのみで、米国西部 2 ← 米国中西部の接続を作成する必要があります。
- 米国中西部の VNet である GVNetP-USWC-VNet の管理ブレードから [ピアリング] – [+ 追加] をクリックします。
- [名前] でピアリング名を入力 (ここでは、USWCtoUSW2)、[仮想ネットワークのデプロイ モデル] や [サブスクリプション] を指定した後、[仮想ネットワーク] でピアリングする VNet (GVNetP-USW2-VNet) を指定して、[OK] ボタンをクリック、作成します。
- デプロイ完了後、[ピアリング] ブレードに表示されるピアリング (USWCtoUSW2) の [ピアリング状態] が [接続済み] となり、これで、米国西部 2 – 米国中西部リージョン間 VNet の送受信が可能になります。
また、USW2toUSWC の [ピアリング状態] が [開始済み] から [接続済み] に状態が変わります。
- 米国西部 2 – カナダ中部リージョン間、米国中西部 – カナダ中部リージョン間についても同様に、手順 1. ~ 6. を実施します。すべてのリージョン間のペアリング作成が完了すると、以下のように表示されます。
Global VNet Peering のゲートウェイ トランジットについて
VNet に VPN ゲートウェイが接続されている場合でゲートウェイ トランジットが有効になると、通信元 VNet から VNet Peering を経由、VPN ゲートウェイ接続先のネットワークとの通信が可能となります。
しかしながら、ゲートウェイ トランジットを利用した Global VNetPeering の作成、設定を行うことはできません。
VNet に VPN ゲートウェイが接続されている場合、Global VNet Peering を作成しようとすると以下の警告が表示されます。
その際、ゲートウェイ トランジットを有効にするための設定「ゲートウェイ転送を許可する」のチェックボックスをオンにしても、[OK] ボタンが活性化せず、作成することができません。
また、VPN ゲートウェイが接続されている VNet と接続する際にゲートウェイ トランジットを利用するための設定「リモート ゲートウェイを使用する」のチェックボックスをオンにした際、以下の警告は出ますが、[OK] ボタンをクリックすることができます。
ただし、結局は以下のエラーが表示され、作成することはできません。ゲートウェイ トランジットが利用できるのは同一リージョン間の VNet Peering のようです。
参考
- Microsoft Azure Cloud Computing Platform & Services
https://azure.microsoft.com/ja-jp/ - Blog | Microsoft Azure
https://azure.microsoft.com/en-us/blog/ - Azure ロードマップ | Microsoft Azure
https://azure.microsoft.com/ja-jp/roadmap/ - Virtual Network – 仮想プライベート クラウド | Microsoft Azure
https://azure.microsoft.com/ja-jp/services/virtual-network/ - Azure Virtual Network のドキュメント – チュートリアル、API リファレンス | Microsoft Docs
https://docs.microsoft.com/ja-jp/azure/virtual-network/ - 料金 – Virtual Network | Microsoft Azure
https://azure.microsoft.com/ja-jp/pricing/details/virtual-network/ - Azure Global VNET PeeringがPublic Previewになったのでお試ししました – Qiita
https://qiita.com/yotan/items/3c4d576db33f9aaa9be6 - Global 接続ができるようになった Microsoft Azure の仮想ネットワーク Peering を試してみたよ|ネスケラボ
https://blog.nextscape.net/archives/Date/2017/10/vnetpeering