2021年11月に Microsoft は今年2回目の Ignite を開催しました
Ignite とは Microsoft が行う技術に関する発表会の1つです
その中で Azure Virtual Network Manager (省略して ANM と記載している場合があります) がパブリック プレビューになったので試してみました
※AVNM と省略して記載することが一般的になっていますが、本記事では ANM のまま記載しています
Azure Virtual Network Manager とは
What is Azure Virtual Network Manager? | Microsoft Learn
こちらの公開資料にかかれていることを箇条書きでまとめると
- 仮想ネットワークをグループにする
- 接続 (ピアリング?)やセキュリティ (NSG?) の設定が一括で行える
- サブスクリプションをまたいで設定が可能
という仮想ネットワークに関する管理サービスのようです
特に以下のようなメリットがあるようです
- リージョン、サブスクリプションをまたいで接続、セキュリティを管理
- ハブ&スポーク においてスポーク間で通信が可能 (複雑なメッシュ構造の管理なし)
- 全世界で冗長性とレプリケーションを持つため、高い可用性
- セキュリティ規則を上書きしてグローバルなセキュリティ規則を構成可能
- 仮想ネットワーク が接続され低遅延、広帯域の通信が可能
- 特定のリージョンの順番や頻度でネットワーク変更を反映可能
ざっとドキュメントに英語で書かれていた内容を自分の解釈も含めて書いてみました
Azure の Network サービス全体の特徴も含んでいる書き方になっていますね
とはいえ、管理を簡単にしてくれるサービスであることは間違いなさそうです
クイックスタートを試す
Quickstart: Create a mesh network topology with Azure Virtual Network Manager using the Azure portal | Microsoft Learn
こちらのクイックスタートを試してみました
3 つの仮想ネットワークをデプロイし、メッシュ構造の接続を作成するようです
※ブログの執筆時点で利用可能なリージョンは 米国中西部、米国西部、米国西部 2、米国東部、米国東部 2、北ヨーロッパ、西ヨーロッパ、フランス中部になります
管理可能なリージョンとは異なります
プレビュー 機能に登録
Azure のプレビュー機能を使う場合、今まではリソースプロバイダーに登録する手順が必要でした
今回は Azure Portal から [プレビュー機能] を検索、[AllowAzureNetworkManager] を検索して登録すれば完了です
従来に比べて GUI でできるのでわかりやすくなっています
※完了までしばらく時間がかかります
Network Manager のリソースを作成
Azure Portal で Network Manager を検索し、[作成] を選択します
今回は以下のように設定しました
項目 | 設定値 |
---|---|
サブスクリプション | 使用可能なもの |
リソース グループ | NetworkManagerDemo-rg ※リソースグループは事前に作っておきました |
名前 | ANMdemo |
リージョン | 米国西部 |
説明 (省略可) | For demonstration |
スコープ (Scope) | 使用可能な 1 つのサブスクリプション |
特徴 (Feature) | Connectivity と Security admin |
[特徴] については 接続の設定だけを試したい場合は Connectivity だけを選択すれば大丈夫です
ガワだけの作成なのでデプロイはすぐに完了します
イメージとしてはリソースグループの作成と同じくらいです
作成が完了すると以下のような画面が表示されます
管理対象の仮想ネットワークの作成
Network Manager はあくまでも管理サービスなので、管理対象の仮想ネットワークは別で準備をしておきます
詳細は割愛しますが、以下のパラメータで3つの仮想ネットワークを作成しました
ポイントは ピアリングをするため アドレス空間が重複していないことです
項目 | 設定値① | 設定値② | 設定値③ |
---|---|---|---|
サブスクリプション | ANM と同じ | ANM と同じ | ANM と同じ |
リソース グループ | ANMdemo | ANMdemo | ANMdemo |
名前 | VnetA | VnetB | VnetC |
リージョン | 米国西部 | 米国西部 | 米国西部 |
アドレス空間 | 10.0.0.0/16 | 10.1.0.0/16 | 10.2.0.0/16 |
サブネット名 | default | default | default |
サブネット アドレス空間 | 10.0.0.0/24 | 10.1.0.0/24 | 10.2.0.0/24 |
Network Group の作成
管理対象の仮想ネットワークをまとめるグループを作成します
Network Manager のブレードから [Network group] を選択し [add] を選択します
以下のパラメータで値を入力していきます
項目 | 設定値 |
---|---|
名前 | NetworkGroup |
説明 (省略可) | 省略 |
追加する仮想ネットワーク | Static membership (VnetA, VnetB, VnetC) |

次の設定項目では管理対象の仮想ネットワークを動的に決める場合の条件を入力します
今回は決め打ちで静的に入力するためここはスキップします<
接続の構成の作成
Network Group に含めた 3 つの仮想ネットワークをどう接続するかを決めます
※この手順ではまだ接続 されるわけではありません
Network Manager のブレードで [Configurations] を選択し、[Create a configuration] > [Connectivity configuration] を選択します
以下のパラメータで値を入力していきます
項目 | 設定値 |
---|---|
名前 | ConnectConfig |
詳細 (省略可) | 省略 |
トポロジ | Mesh |
Enable mesh connectivity across regions | 有効 |
add network groups | NetworkGroup |
構成した接続のデプロイ
先ほどの手順で構成したメッシュのトポロジをデプロイしてみます
Network Manager のブレードで [Deployments] を選択し [Deploy a configuration] から今までの手順で作成した構成を選択します
このときに [Target regions] を選択する必要がありますが、うまく表示されず選択ができないことがありました
この辺りでプレビューな雰囲気を感じられました
言語を英語にして、何度かブラウザを更新するとリージョンが表示されるようになりました
実行後 Azure Portal 内の [Refresh] をクリックするとデプロイ状況が確認できました
[View active configuration] をクリックすると構成情報を確認することができました
数分すると Status が Succeeded に変わりました
検証
2つの検証を行いました
1 つは Azure 上でピアリングの設定が確認できるかどうか
もう 1 つは ping での疎通確認です
まずは仮想ネットワークのブレードからピアリングの確認と、Network Watcher でトポロジを見てみました
両方ともピアリングが構成されているようには見えませんでした
続いて 各 仮想ネットワークに VM を立てて ping で疎通確認をしてみました循環するように ping を実行しましたその結果きちんと通信ができました
仮想ネットワーク名 | VM名 | IP アドレス |
---|---|---|
VnetA | vmA | 10.0.0.4 |
VnetB | vmB | 10.1.0.4 |
VnetC | vmC | 10.2.0.4 |

まとめ
Azure Network Manager を試してみました
疎通確認ができた一方でピアリングの設定がされているようには見えませんでした
ドキュメントにはピアリングではなく、Connectivity という記載がされていたのでピアリングとは異なる接続方式なのかもしれません
(単純にプレビューで表示がされていないだけかもしれませんが)
機会があれば異なるリージョンやセキュリティ規則に関する設定も試してみたいと思います