Windows Azure Virtual Machine (24) Azure VM支持多网卡功能

  《Windows Azure Platform 系列文章目录

  Update 2016-03-30

  一个VM的多张网卡可以在一个VNet的同一个Subnet子网下,笔者亲自测试过了。

  如果我们需要在同一个DNS下,用多个Azure VM实现负载均衡。

  则创建的第一台Azure VM必须是多网卡才行。

  不支持第一台虚拟机是单网卡,以后创建的虚拟机是多网卡

  Windows Azure VM在默认情况下,是一张网卡,2个IP地址。在很多情况下,我们需要Azure支持多张网卡,在这里笔者简单介绍一下。

  假设我们创建了一个虚拟网络,3个Subnet子网,分为命名为Frondend, MidTier和Backend,具有不同的CIDR地址。如下图:

  Windows Azure Virtual Machine (24) Azure VM支持多网卡功能

  那我们可以创建一个具有三个网卡的Azure VM,每张网卡对应不同的subnet。如下图:

  Windows Azure Virtual Machine (24) Azure VM支持多网卡功能

  这里特别强调一下,创建多网卡的Azure VM是有限制的:

  (1)必须先创建Azure虚拟网络(Virtual Network),才可以使用多网卡功能

  (2)只能在标准类型(Standard)的Azure VM创建多网卡VM,基本类型(Basic)的Azure VM是不支持多网卡的。

  (3)必须通过PowerShell,在创建Azure VM的时候指定多网卡。已经创建完毕的Azure VM不支持添加多网卡

  (4)Azure VM默认的网卡是支持面向Internet的。其他创建的网卡不支持负载均衡集。

  (5)Azure VM可支持的网卡数量与VM Size虚拟机配置大小有关

虚拟机配置 支持网卡数量
A3和A6 2
A4和A7 4
A9 2
D3 2
D4 4
D13 4

  

  接下来我们Demo一下。

  1.使用管理员身份,运行Azure PowerShell

  2.创建虚拟网络VNETDEMO,设置3个Subnet,命名为Front-Subnet, Middle-Subnet, End-Subnet。对应不同的CIDR地址。

  3.设置订阅和存储账号

Set-AzureSubscription -SubscriptionName '[SubscriptioName]' -CurrentStorageAccountName '[StorageAccountName]'

  4.设置当前订阅

Select-AzureSubscription -SubscriptionName '[SubscriptionName]' -Current

  5.获得虚拟机镜像

$image=get-azurevmimage | where {$_.imagename -like "*Windows-Server-2012-R2*"} 

  6.设置用户名、密码

$adminusername="azureuser"
$adminpassword="[YourPassword]"

  7.设置子网和网卡地址

  注意:网卡的IP地址必须和虚拟网络的子网地址相对应。

$Subnet1Name="Front-Subnet"
$Subnet2Name="Middle-Subnet"
$Subnet3Name="End-Subnet" $NIC1IP="10.11.0.20"
$NIC2IP="10.12.0.20"
$NIC3IP="10.13.0.20"

  8.创建虚拟机

$vm = New-AzureVMConfig -Name "MultiNicVM001" -InstanceSize "ExtraLarge" -Image $image[$image.count-].ImageName

Add-AzureProvisioningConfig –VM $vm -Windows -AdminUserName $adminusername -Password $adminpassword

#设置默认的网卡地址
Set-AzureSubnet -SubnetNames $Subnet1Name -VM $vm
Set-AzureStaticVNetIP -IPAddress $NIC1IP -VM $vm #增加第一张网卡
Add-AzureNetworkInterfaceConfig -Name "NIC2" -SubnetName $Subnet2Name -StaticVNetIPAddress $NIC2IP -VM $vm #增加第二张网卡
Add-AzureNetworkInterfaceConfig -Name "NIC3" -SubnetName $Subnet3Name -StaticVNetIPAddress $NIC3IP -VM $vm #创建虚拟机
New-AzureVM -ServiceName "multivmpool" -VNetName "VNETDEMO" -VM $vm -Location 'China North'

  

  注意:本次笔者用的A4 VM,最多支持4张网卡。Azure VM可支持的网卡数量与VM Size虚拟机配置大小有关

参考资料:http://azure.microsoft.com/blog/2014/10/30/multiple-vm-nics-and-network-virtual-appliances-in-azure/

上一篇:Linux C++ TCP Socket传输文件或图片实例


下一篇:HelloWorld的Sprint计划会议