Azure 中的多个 VM NIC 和网络虚拟设备

原文地址:https://azure.microsoft.com/blog/2014/10/30/multiple-vm-nics-and-network-virtual-appliances-in-azure/

在2014年欧洲 TechEd 大会上,我们宣布了在 Azure VM 中为多个网络接口(NIC)提供支持,并与多家重要厂商合作,在 Azure 中引入了网络虚拟设备,其中最引人注目的是 Citrix Netscaler 和 Riverbed 设备。很多网络虚拟设备都要求使用多个 NIC 。现在您可以在 Azure VM 中创建多个 NIC。借助多个 NIC,您可以更好地管理网络流量。您也可以将前端 NIC 和后端 NIC 之间的流量隔离开来,或者将数据层通信与管理层通信分开。以下是含有 3 个 NIC 的 VM 示例:

如何创建含有多个 NIC VM

以下说明将帮助您创建一个含有3个NIC的VM:默认NIC和两个额外的NIC。配置步骤中使用包含 3 个子网的虚拟网络:Frontend(10.1.0.0/24)、Midtier (10.1.1.0/24) 和 Backend(10.1.2.0/24),虚拟网络名称为 “ThreeTier-VNet”,如下所示:

 

以下配置cmdlet使用最新的Azure PowerShell版本。请按此处的说明下载和配置 Azure PowerShell。

1. 从 Azure VM 影像库中选择一个 VM 映像 :

$image = Get-AzureVMImage -ImageName "a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-R2-201408.01-en.us-127GB.vhd"

2. 创建 Azure VM 配置和默认管理员登录:

$vm = New-AzureVMConfig -Name "MultiNicVM" -InstanceSize "ExtraLarge" -Image $image.ImageName –AvailabilitySetName “MyAVSet”

Add-AzureProvisioningConfig –VM $vm -Windows -AdminUserName “<YourAdminUID>” -Password “<YourAdminPassword>”

3. 指定默认 NIC 的子网和 IP 地址。请注意,SubnetNames 参数必须是虚拟网络中某个子网的名称。本例中,我们使用 Frontend 子网。

Set-AzureSubnet -SubnetNames "Frontend" -VM $vm

Set-AzureStaticVNetIP -IPAddress "10.1.0.10" -VM $vm

4. 为 VM 配置添加额外的 NIC。与第 3步类似,SubnetName 和StaticVNetIPAddress 必须与虚拟网络的子网定义相对应。接口名称对于 VM 必须是唯一的,但并不代表 VM 中 NIC 的名称。

Add-AzureNetworkInterfaceConfig -Name "NIC1" -SubnetName "Midtier" -StaticVNetIPAddress "10.1.1.11" -VM $vm

Add-AzureNetworkInterfaceConfig -Name "NIC2" -SubnetName "Backend" -StaticVNetIPAddress "10.1.2.22" -VM $vm

5. 执行完上述步骤后,即已准备好创建 VM。下面您将需要在虚拟网络中创建一个包含以上所用子网名称和 IP 地址的 VM。

New-AzureVM -ServiceName "MultiNIC-CS" –VNetName “ThreeTier-VNet” –VM $vm

关于多个 NIC 的功能的常见问题解答和限制

当前版本的多个NIC功能具有以下要求和限制:

1. 该功能是已经正式发布还是处于预览阶段?

·   已经正式发布

2. 哪些区域将提供多个 NIC 功能?如果不是所有区域都提供该功能,其余区域的情况如何?

·   客户现在可以使用多个NIC创建VM。该功能将首先在北欧地区提供,未来几周内将逐步扩展到所有Azure 区域。有关发布更新,请参阅此处。

3. 多个 NIC 功能的定价如何?

·   没有额外费用,虽然NIC的数量是与VM SKU相关联的。

4. 我是否可以在 Linux、FreeBSD 和其他非 Windows OS 影像中使用多个 NIC 功能?

·   除基本SKU之外,其他任何Azure VM都支持多个NIC。

5. 我可以创建多少个 NIC?

·   大型(A3)和A6:2个

·   超大型(A4)和A7:4个

· A9:2 个

· D3:2 个

· D4:4 个

· D13:4 个

6. 该功能是否存在客户必须要知道的限制?

·   多个NIC的功能仅在Azure VM(IaaS、标准SKU)上受支持;VM必须位于Azure虚拟网络中。

·   当前版本不支持在VM创建后添加或删除NIC。

· Azure VM 中的 NIC 无法转发流量,也不能作为第 3 层 (IP) 网关使用。

·   面向Internet的VIP仅在“默认”NIC上受支持,并且只有一个VIP会映像到默认NIC的IP。额外的 NIC 无法在负载平衡集中使用。

· VM 中 NIC 的顺序是随机的,但是 IP 地址和对应的 MAC 将保持不变。

·   您无法将网络安全组或强制隧道应用到非默认NIC。我们已在规划增加此项支持。

Azure 中的虚拟设备 Citrix Riverbed

我们正在与多家网络设备供货商一起努力,将他们的虚拟机设备加入到Azure中。在 TechEd 大会上,我们进行了有关 Citrix Netscaler 和 Riverbed Steelhead 的展示。我们将不断改进该平台,为更多第三方虚拟设备提供支持。除了多个 NIC 之外,我们还成功实现了 NIC 的以太网 (MAC) 地址在 VM 整个生命周期中保持不变。这样就可以为那些依赖于 MAC 地址进行许可颁发的设备提供说明。

以下是有关这次欧洲TechEd大会展示的更多详细信息。

1. 我们展示了一个可以在 Azure 中正常工作的 Citrix Netscaler 原型,该展示中使用了 2 个 NIC 并且MAC保持不变。

2. 我们和 Riverbed 一起创建了一个使用内部部署 SteelHead 的展示,此外,我们还创建在 Azure 中使用 SteelHead 进行 WAN 优化的展示,说明如何将 WAN 优化与 Azure Site Recovery 和 ExpressRoute 相结合。

Riverbed现已可用。我们将在Azure 认证计划中增加网络合作伙伴的数量,敬请关注。

让Azure网络平台为虚拟设备做好准备只是开始,在Azure平台改进和虚拟设备合作方面,我们依然任重道远!