JavaScriptを有効にしてください

Azure Network Manager を試す!

 ·   6 分で読めます  ·   Kento

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 でできるのでわかりやすくなっています
※完了までしばらく時間がかかります

portal01
プレビュー機能の登録:

Network Manager のリソースを作成

Azure Portal で Network Manager を検索し、[作成] を選択します

portal02
AVNM のリソース作成01:

今回は以下のように設定しました

項目 設定値
サブスクリプション 使用可能なもの
リソース グループ NetworkManagerDemo-rg ※リソースグループは事前に作っておきました
名前 ANMdemo
リージョン 米国西部
説明 (省略可) For demonstration
スコープ (Scope) 使用可能な 1 つのサブスクリプション
特徴 (Feature) Connectivity と Security admin

[特徴] については 接続の設定だけを試したい場合は Connectivity だけを選択すれば大丈夫です

portal03
AVNM のリソース作成02:

ガワだけの作成なのでデプロイはすぐに完了します
イメージとしてはリソースグループの作成と同じくらいです
作成が完了すると以下のような画面が表示されます

portal02
AVNM のリソース作成03:

管理対象の仮想ネットワークの作成

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)
portal05
ネットワークグループ の作成01:

次の設定項目では管理対象の仮想ネットワークを動的に決める場合の条件を入力します
今回は決め打ちで静的に入力するためここはスキップします<

portal06
ネットワークグループ の作成02:

portal07
ネットワークグループ の作成03:

接続の構成の作成

Network Group に含めた 3 つの仮想ネットワークをどう接続するかを決めます
※この手順ではまだ接続 されるわけではありません
Network Manager のブレードで [Configurations] を選択し、[Create a configuration] > [Connectivity configuration] を選択します
以下のパラメータで値を入力していきます

項目 設定値
名前 ConnectConfig
詳細 (省略可) 省略
トポロジ Mesh
Enable mesh connectivity across regions 有効
add network groups NetworkGroup

portal08
接続構成の作成01:

portal09
接続構成の作成02:

構成した接続のデプロイ

先ほどの手順で構成したメッシュのトポロジをデプロイしてみます
Network Manager のブレードで [Deployments] を選択し [Deploy a configuration] から今までの手順で作成した構成を選択します
このときに [Target regions] を選択する必要がありますが、うまく表示されず選択ができないことがありました
この辺りでプレビューな雰囲気を感じられました
言語を英語にして、何度かブラウザを更新するとリージョンが表示されるようになりました

portal10
接続構成のデプロイ01:

portal11
接続構成のデプロイ02 (日本語だと表示されていない):

portal12
接続構成のデプロイ03:

実行後 Azure Portal 内の [Refresh] をクリックするとデプロイ状況が確認できました

portal13
接続構成のデプロイ04:

[View active configuration] をクリックすると構成情報を確認することができました

portal14
接続構成のデプロイ05:

数分すると Status が Succeeded に変わりました

portal15
接続構成のデプロイ06:

検証

2つの検証を行いました
1 つは Azure 上でピアリングの設定が確認できるかどうか
もう 1 つは ping での疎通確認です
まずは仮想ネットワークのブレードからピアリングの確認と、Network Watcher でトポロジを見てみました
両方ともピアリングが構成されているようには見えませんでした

portal16
接続構成の検証01:

portal17
接続構成の検証02:

続いて 各 仮想ネットワークに VM を立てて ping で疎通確認をしてみました循環するように ping を実行しましたその結果きちんと通信ができました

仮想ネットワーク名 VM名 IP アドレス
VnetA vmA 10.0.0.4
VnetB vmB 10.1.0.4
VnetC vmC 10.2.0.4
portal18
接続構成の検証03:

まとめ

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

共有

Kento
著者
Kento
2020年に新卒で IT 企業に入社. インフラエンジニア(主にクラウド)として活動中