《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地址。如下图:

  

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

  

  这里特别强调一下,创建多网卡的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/

Windows Azure Virtual Machine (24) Azure VM支持多网卡功能的更多相关文章

  1. [New Portal]Windows Azure Virtual Machine (18) Azure Virtual Machine内部IP和外部IP

    <Windows Azure Platform 系列文章目录> 在开始本章内容之前,请读者熟悉以下2篇博文:       [New Portal]Windows Azure Virtual ...

  2. Windows Azure Virtual Machine (35) Azure VM通过Linked DB,执行SQL Job

    <Windows Azure Platform 系列文章目录> 今天遇到一个Case,客户在使用Azure Automation,执行Azure SQL Database 存储过程的时候, ...

  3. Windows Azure Virtual Machine (34) Azure VM挂载WebDAV

    <Windows Azure Platform 系列文章目录> 之前使用Azure VM,挂载box网盘.发现不能正常挂载,这里简单记录一下. 1.WebDAV的网络映射,需要WebCli ...

  4. Windows Azure Virtual Machine (33) Azure虚拟机删除重建

    <Windows Azure Platform 系列文章目录> 注意:本文介绍的重建Azure虚拟机,必须在同一个订阅内删除重建,必须在同一个订阅内删除重建,必须在同一个订阅内删除重建. ...

  5. [New Portal]Windows Azure Virtual Machine (21) 将本地Hyper-V的VM上传至Windows Azure Virtual Machine

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,并且保留OS中的内容. 注意:笔者没有执行Syspr ...

  6. Windows Azure Virtual Machine (26) 使用高级存储(SSD)和DS系列VM

    <Windows Azure Platform 系列文章目录> Update: 2016-11-3,如果大家在使用Linux VM,使用FIO进行IOPS测试的时候,请使用以下命令: su ...

  7. Windows Azure Virtual Machine (29) 修改Azure VM 数据磁盘容量

    <Windows Azure Platform 系列文章目录> 当我们使用Windows Azure管理界面,创建Azure虚拟机的时候,默认挂载的磁盘是固定大小的 1.比如我创建1个Wi ...

  8. Windows Azure Virtual Machine (30) 修改Azure VM 的Subnet

    <Windows Azure Platform 系列文章目录> 我在使用Azure Virtual Machine虚拟机的时候,常常会结合Virtual Network虚拟网络一起使用. ...

  9. [New Portal]Windows Azure Virtual Machine (11) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (1)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

随机推荐

  1. System.Data.SqlClient.SqlError: FILESTREAM 功能被禁用”的错误

    还原sql2008数据库时遇到"System.Data.SqlClient.SqlError: FILESTREAM 功能被禁用"的错误,在网上搜索解决方案如下: 1.在" ...

  2. 高性能网站架构设计之缓存篇(3)- Redis 的配置

    我们说Redis是一个强大的Key-Value存储系统,在前面我们已遇到了两个问题: 1.redis server 启动后,独占进程,能不能修改为后台服务呢? 2.redis server 服务是单线 ...

  3. ASP.NET 开发必备知识点(2):那些年追过的ASP.NET权限管理

    一.前言 在前一篇文章已经为大家介绍了OWIN和Katana,有了对他们的了解之后,才能更好地去学习Asp.net Identity,因为Asp.net Identity的实现集成了Owin.其实在A ...

  4. ENode 1.0 - 消息的重试机制的设计思路

    项目开源地址:https://github.com/tangxuehua/enode 上一篇文章,简单介绍了enode框架中消息队列的设计思路,本文介绍一下enode框架中关系消息的重试机制的设计思路 ...

  5. 谁能完全搞懂Visual Studio的安装项?

    大家都知道,Visual Studio绝对不是“一个程序”那么简单,不管哪个版本,安装好之后总会在“删除程序”中生成一大堆你或懂或不懂的东西.但很少人关注过究竟包括哪些东西.我最近装了一次Visual ...

  6. 走进AngularJs(九)表单及表单验证

    年底了越来越懒散,AngularJs的学习落了一段时间,博客最近也没更新.惭愧~前段时间有试了一下用yeoman构建Angular项目,感觉学的差不多了想做个项目练练手,谁知遇到了一系列问题.yeom ...

  7. Python--增量循环删除MySQL表数据

    需求场景: 有一业务数据库,使用MySQL 5.5版本,每天会写入大量数据,需要不定期将多表中“指定时期前“的数据进行删除,在SQL SERVER中很容易实现,写几个WHILE循环就搞定,虽然MySQ ...

  8. [ZigBee] 8、ZigBee之UART剖析·二(串口收发)

    前言:上一节讲UART基本知识介绍完了,并深入剖析了一个串口发送工程,本节将进一步介绍串口收发! 1.初始化 在串口初始化部分,和上一节不同的地方是: 51 U0CSR |= 0x40; //允许接收 ...

  9. ssc

    接了一个ssc的小项目,却因为对方的不作答而半途而废.我写了一天的代码算是废了. 主程序 <?xml version="1.0" encoding="utf-8&q ...

  10. 看svn用户组管理功能的产品设计

    我负责公司的svn配置.用了近一年了,今天饶有兴致,分享一下svn的用户组管理功能,这个产品设计值得借鉴,简单易用. svn用户组管理的功能描述:新建用户组,并给组分配成员用户:编辑用户组,包括修改组 ...