这次要介绍的这个功能preview的时间应该还不长,现在只有Global Azure才有,而且只有US和欧洲的一些region才能使用,算是一个非常新的功能

未来不知道这项功能会发展到什么程度,目前来讲的话相对功能还比较简单

可以通过下边的链接详细了解下

​Azure Virtual Network Manager 介绍​

这里也要做个简单介绍,官网是这么介绍这项功能的

Azure Virtual Network Manager 是一个管理服务,可用于跨订阅对虚拟网络进行全局分组、配置、部署和管理。 使用 Virtual Network Manager,可以定义网络组来对虚拟网络进行标识和逻辑分段。 然后,可以确定所需的连接和安全配置,并一次性将这些配置应用于网络组中所有选定虚拟网络。

其实说白了就是统一管理VNET用的,可以包括两方面的功能,一是安全,比如一些安全规则,二是网络连接,比如VNET Peering等。对应的就是Azure Virtual Network Manager(简称AVNM)里目前两个主要功能模块

  • Security admin configurations
  • Connectivity configurations

之后也会围绕这两个模块具体来介绍和演示,这篇先只是介绍下AVNM的功能和创建方式

从官方来讲,AVNM的主要优势有这些,说白了就是起到统一管控的目的,同时还可以做到集中式的部署,规则的分发,这点确实比以前要强一些,以前想做到这种集中式的管理,要通过BluePrint或者terraform之类的用IAC的方式来做了

  • 全局集中管理各个区域和订阅的连接和安全策略。
  • 在中心辐射型配置中启用支路之间的传递通信,消除管理网格网络时存在的复杂性。
  • 支持全球范围的冗余和复制的高度可缩放、高度可用的服务。
  • 能够创建可替代网络安全组规则的全局网络安全规则。
  • 使用虚拟网络对等互连来确保不同虚拟网络中资源之间的低延迟和高带宽。
  • 根据所选的特定区域顺序和频率实施网络更改。

另外一个AVNM很好的使用场景是,如果公司采用的管理模式是各部门或子公司全权管理各自的环境,那么AVNM可以方便总公司的IT做一些安全规则的集中管控,比如纳入AVNM管理范围的VNET,可以通过AVNM限制关闭某些高危的端口,这种方式不同于传统的NSG规则,是一个专属于AVNM的规则,优先级也要高于NSG,这样既可以保留一些子公司或者部门管理的灵活性,把管理权限下发给下边的IT人员,同时还可以通过AVNM确保总公司的IT策略可以得到执行

就像之前说的,这项功能现在只在有限的几个region提供preview服务,估计其他region想用上要等一等了

  • 美国中北部
  • 美国西部
  • 美国西部 2
  • 美国东部
  • 美国东部 2
  • 北欧
  • 西欧
  • 法国中部

AVNM的创建和删除功能现在做的也还不是特别完善,发现居然创建完成后界面上没有删除的按钮,最后还是通过CLI删掉了

现在先来看下如何创建,首先做些准备工作

这次的测试环境会有4个VNET,分别在

  • WestUS
  • EastUS
  • France Central
  • North Europe

首先先把这几个VNET创建出来,VNET并不是完全在同一sub下的,创建时候还会切换sub,这个不一一演示了

$USVNET = @{
Name = 'USVNET'
ResourceGroupName = 'AVNM'
Location = 'WestUS'
AddressPrefix = '10.170.0.0/16'
}

$EURVNET = @{
Name = 'EURVNET'
ResourceGroupName = 'AVNM'
Location = 'northeurope'
AddressPrefix = '10.171.0.0/16'
}

$FranceVNET = @{
Name = 'FranceVNET'
ResourceGroupName = 'AVNM'
Location = 'francecentral'
AddressPrefix = '10.172.0.0/16'
}


$EASTUSVNET = @{
Name = 'EASTUSVNET'
ResourceGroupName = 'AVNM'
Location = 'EastUS'
AddressPrefix = '10.173.0.0/16'
}


New-AzVirtualNetwork @USVNET
New-AzVirtualNetwork @EURVNET
New-AzVirtualNetwork @FranceVNET
New-AzVirtualNetwork @EASTUSVNET

Azure新知识科普 - Azure Virtual Network Manager_ide

之后注册下AVNM的provider

Get-AzProviderFeature -ProviderNamespace Microsoft.Network -ListAvailable|?{$_.FeatureName -like "*AllowAzureNetworkManager*"}
Register-AzProviderFeature -ProviderNamespace Microsoft.Network -FeatureName AllowAzureNetworkManager

Azure新知识科普 - Azure Virtual Network Manager_ide_02

之后即可开始创建AVNM,这部分直接在portal上演示,方便理解AVNM的组件和工作方式,创建界面其实很简洁

Azure新知识科普 - Azure Virtual Network Manager_网络安全_03


这里会涉及到要选择scope,scope很好理解,也就是我们要用AVNM管理的范围,这个范围可以是订阅级别,也可以是管理组级别,我们之后能在AVNM里添加的VNET需要确定是属于这个范围内的,否则没办法读到VNET的列表

Azure新知识科普 - Azure Virtual Network Manager_ide_04


之后直接创建即可,创建过程速度很快

Azure新知识科普 - Azure Virtual Network Manager_ide_05