www.hj8828.com 42

【www.hj8828.com】Virtual Server 200伍品质优化的互连网布局

如今,要碰到一台不依赖网络连接的电脑或应用可不是一件容易的事。在物理机中通常使用的网络配置原则和方法对虚拟机也同样适用。但是,由于主机网络适配器需要为所有虚拟机提供资源,所以虚拟机的网络配置还是有一些特殊之处。

Windows Server 2012&R2超级虚拟化之十软件定义网络之虚拟交换机

 

在本文中,虚拟化专家Anil
Desai将介绍几种考虑到优化虚拟化性能的网络配置方法。

Hyper-V虚拟交换机是基于软件的第
2层网络交换机,它维护了一个MAC表,包含连接到它的所有虚拟机的MAC地址,主机内的所有虚拟机都要通过虚拟交换机才能与物理网络或内部网络通信。在Hyper-V中创建虚拟交换机时有三种类型的选择:外部,私人和内部。

尼玛的我不高兴写了,所以下面的文档我直接把原来的pdf给转换出来,加了点自己的注解,我写的话会写自己觉得终于的章节。

主机网络适配器的管理

外部虚拟网(Bridge)络。在允许虚拟机与外部服务器和管理操作系统(有时称为父分区)进行通信时,可以使用此类型的虚拟网络。此类型的虚拟网络还允许位于同一物理服务器上的虚拟机互相通信。当您安装
Hyper-V
并创建外部虚拟网络时,管理操作系统将使用一个新的虚拟网络适配器来连接物理网络。网络连接由原始网络适配器和新的虚拟网络适配器组成。原始物理网络适配器未绑定任何协议和服务。不过,虚拟网络适配器绑定了所有的标准协议和服务。创建外部虚拟网络时,Hyper-V会将虚拟网络服务协议绑定到物理网络适配器。您应该知道,在创建或删除外部虚拟网络时,将会暂时中断外部网络连接。创建外部虚拟网络后,除了交换机是基于软件以及可以根据需要动态添加或删除端口之外,虚拟网络与物理网络的工作原理基本相同。一旦配置了外部虚拟网络,所有的网络通信都将通过虚拟交换机传送。因此,建议使用至少一个其他物理网络适配器来管理网络通信。虚拟交换机发挥物理交换机的功能,通过虚拟网络将网络通信传送到其目的地

在搭建虚拟化平台时,网络的虚拟化是一个非常重要的环节,如何保障网络的持续可用并且可管理,Hyper-V
为此提供了一系列的功能来实现这个目标。网络虚拟化的完善程度,对整个虚拟化平台的扩展性起着非常重要的作用。

当多个虚拟机执行网络密集型操作时,主机的网络适配器可能会成为性能的一个瓶颈。在最简易的网络配置中,一台Virtual
Server主机只有一个物理网络端口。尽管这个系统也可以允许你让虚拟机共享网络适配器,你可以再加一个网络端口,从而提高安全性和易管理性。

内部虚拟网络(NAT)。在只允许同一物理服务器上的虚拟机与虚拟机、虚拟机与管理操作系统之间进行通信时,可以使用此类型的虚拟网络。内部虚拟网络是一种未绑定到物理网络适配器的虚拟网络。它通常用来构建从管理操作系统连接到虚拟机所需的测试环境

4.1Hyper-V 虚拟交换机管理器

在安装 Windows Server 2012 R2 的操作系统上,为该系统添加 Hyper-V
角色后,宿主机自动变为”第一台虚拟机”,也就是”父分区”,因此部分硬件在设备管理器中也进行相应的改变。在添加
Hyper-V
角色的过程中,如果在”虚拟交换机”对话框中勾选了创建虚拟交换机的网卡,如图
4-1 所示,则会发现”控制面板”→”网络连接”中的属性会产生一些变化。
www.hj8828.com 1 图 4-1 Hyper-V 虚拟交换机的设置

如果未在安装阶段勾选创建虚拟交换机的网卡也没有关系,进入”Hyper-V
管理器”,于主界面右侧点击”虚拟交换机管理器”,在弹出的对话框中可以创建新的虚拟交换机。如图
4-2 所示。

www.hj8828.com 2 图 4-2 创建新的虚拟交换机

Hyper-V
虚拟交换机通过微软虚拟交换机协议,模拟出一个二层的虚拟交换机,支持 VLAN
划分、Microsoft NDIS 捕获、Microsoft Windows Filtering Platform
等特性。Hyper-V 支持三种虚拟交换机类型,分别是外部、内部、专用。

  • 外部:虚拟机和物理机连接到同一个交换机,当希望虚拟机”看起来’和真实物理机一样,能够与局域网内的其他机器通信,可以使用此类型。
  • 内部:虚拟机可以和该物理服务器上的虚拟机通信,同时与这台物理服务器通信,但是无法跨物理机与其他主机通信。
  • 专用:虚拟机可以和该物理服务器上的虚拟机通信,但无法同任何物理服务器进行通信。

可以看到,三种类型的虚拟交换机的通信权限是依次递减的。在部署虚拟化的企业中,多数会使用到的是”外部”这种虚拟交换机类型。需要注意的是,”外部”交换机每张网卡只能创建一个。而内部和专用则不限制数量。

4.1.1
创建外部虚拟交换机

在虚拟交换机管理选项卡,创建一个新的外部网络虚拟交换机,如图 4-3
所示,名称和说明处填写容易识别的信息,外部网络选择”Intel(R) PRO/1000 MT
Network Connection”这张网卡。如果连接这张网卡的是交换机的 Access 口,则
VLAN ID 是不需要进行配置的,如果连接的是交换机的 Trunk
口,则需要配置相应的
VLANID,否则很可能无法正常使用。需要注意的是,在创建或删除虚拟交换机时,网络会有短暂的中断,此时
Hyper-V 也会弹出警示框提醒用户注意。

www.hj8828.com 3 图 4-3
创建新的外部网络虚拟交换机

回到”网络连接”,可以看到已经多出了一个网卡标志,其名称为”vEthernet(VM虚拟交换机)”,网卡的名称包含了刚才设置的虚拟交换机的”名称”部分。如图
4-4 所示。

www.hj8828.com 4 图 4-4 创建新的虚拟交换机

分别查看”VM”和”vEthernet(VM虚拟交换机)”
两张网卡的详细信息,会发现原本已经配置了 IP 地址的”VM”网卡被清空,而新增加的”vEthernet(VM虚拟交换机)”则保留了未配置虚拟交换机之前的
IP 地址。如图 4-5 所示。

www.hj8828.com 5

图1为一个示例。考虑到安全性和性能问题,分隔网络通信是一个不错的做法,你可以选择将所有虚拟机放在交换机上的单独的虚拟LANVLAN)中。

专用虚拟网络(Private)。在只允许同一物理服务器上的虚拟机之间进行通信时,可以使用此类型的虚拟网络。专用虚拟网络是一种无需在管理操作系统中装有虚拟网络适配器的虚拟网络。在希望将虚拟机从管理操作系统以及外部网络中的网络通信中分离出来时,通常会使用专用虚拟网络

图 4-5 虚拟交换机的配置信息被清空

分别查看”VM”和”vEthernet(VM虚拟交换机)”
两张网卡的”属性”,可以发现”VM”
仅自动勾选了”Hyper-V 可扩展的虚拟交换机”,而”vEthernet(VM虚拟交换机)”则勾选了 Microsoft
网络客户端、Microsoft 网络的文件和打印机共享、QoS
数据包计划程序、链路层拓扑发现映射器 I/O
驱动程序、链路层拓扑发现响应程序、Internet 协议版本 6、Internet 协议版本
4,和之前的”VM”网卡完全一致,如图
4-6 所示。

 

www.hj8828.com 6

www.hj8828.com 7


Hyper-V中,允许您配置复杂的虚拟网络环境,但虚拟网络的基本概念却是非常简单。对于简单的虚拟网络配置,建议在运行
Hyper-V的服务器上至少配置两个网络适配器:一个网络适配器专供进行远程管理的物理计算机使用,另外一个或多个网络适配器专门用于虚拟机。如果您为虚拟硬盘存储运行
Internet SCSI
(iSCSI)发起程序,建议您使用管理操作系统中的其他网络适配器。管理操作系统是一个分区,它调用
Windows虚拟机监控程序并请求创建新的分区。只能存在一个管理操作系统。当创建虚拟机并将其连接到虚拟网络时,它将会使用虚拟网络适配器进行连接。有两种类型的网络适配器可用于
Hyper-V:网络适配器和旧版网络适配器。为了使网络适配器能够正常工作,必须安装集成服务,该服务是
Hyper-V
安装的一部分。如果集成服务因为操作系统的版本而无法安装,将无法使用网络适配器。您需要添加一个旧版网络适配器,用于模拟基于
Intel 21140的 PCI
快速以太网适配器,并在无需安装虚拟机驱动程序的情况下工作。旧版网络适配器还支持基于网络的安装,因为它具有启动到预启动执行环境
(PXE)的能力。如果虚拟机需要从网络启动,也需要旧版网络适配器。启动到
PXE之后,您需要禁用网络适配器。虚拟机在逻辑上连接到虚拟网络上的一个端口。为了使虚拟机上的网络应用程序能够从外部连接到某个事物,它首先会通过虚拟网络适配器路由到外部虚拟网络上的虚拟端口(连接虚拟机的端口)。然后将网络数据包定向到物理网络适配器并向外发送到外部物理网络。为了使虚拟机能够与管理操作系统进行通信,有两个选项可供选择。一个选项是将网络数据包通过物理网络适配器向外路由到物理网络,这种方法之后会使用第二个物理网络适配器将数据包返回给运行
Hyper-V
的服务器。另一个选项是通过虚拟网络路由网络数据包,这种方法更高效。选择哪个选项由虚拟网络决定。虚拟网络包含一种学习算法,该算法决定将通信定向到的最有效的端口,并将网络数据包发送到该端口。虚拟网络作出决定后,网络数据包将会被发送到所有的虚拟端口。

图 4-6 原网卡仅自动勾选”Hyper-V 可扩展的虚拟交换机”

由此可以发现,作为物理网卡的”VM”变成了”Hyper-V
可扩展的虚拟交换机”,而新创建的”vEthernet(VM虚拟交换机)”则成为一张虚拟网卡,为宿主机的通信和管理服务。接下来继续将另外一张网卡创建新的虚拟交换机。在创建虚拟交换机时,可以勾选”启用单根

I/O 虚拟化(SR-IOV)”,如图 4-7 所示。

www.hj8828.com 8

图 4-7
新创建虚拟交换机可勾选 SR-IOV

SR-IOV:该技术全称为 Single Root IO Virtrualiztion,通 过 SR-IOV,一个
PCIe 设备不仅可以导出多个 PCI 物理功能,还可以导出共享该 I/O
设备上的资源的一组虚拟功能,每个虚机可占用一个或多个虚拟
PCIe,网络传输无需 Hypervisor
的协调干预,降低了传输中的损耗和开销,因此传输速度可以显著提升。该技术需要网卡的硬件支持,如果读者购买的服务器网卡支持
SR-IOV 功能,则可以在创建虚拟交换机时开启这项功能。

将两张网卡均创建虚拟交换机后,”网络连接”的信息如图 4-8 所示。

由于我是用workstation来实验,所以下面Public网卡显示图标不对

www.hj8828.com 9

图1:使用多个主机网络适配器

Hyper-V的内部网络虚拟交换机和外部网络虚拟交换机支持VLAN配置,而私有的虚拟交换机默认为vlan的trunk模式无需要配置。对于每个虚拟机的虚拟网络适配器,您还可以配置一个
VLAN ID。虚拟交换机可以使用两种模式来配置 VLAN:访问模式和 trunk
模式。在访问模式中,虚拟网络的外部端口被限制为指定的一个 VLAN ID
(1-4094)。当物理网络适配器连接到物理网络交换机上的某个端口也处于访问模式中时,请使用访问模式。若要使虚拟机能够访问外部处于访问模式下的虚拟网络,您必须将虚拟机配置为使用与在虚拟网络的访问模式中配置的相同
VLAN
ID。在中继模式下,虚拟交换机会听所有的网络流量,将流量的所有端口。换句话说,网络数据包被发送到所有的虚拟机连接到它。默认情况下,在Hyper-V虚拟交换机被配置为Trunk模式,这意味着虚拟交换机接收所有网络数据包并将其转发给所有的虚拟机连接到它。没有太多需要配置Trunk模式中的虚拟交换机的配置。Trunk模式允许多个
VLAN
ID共享物理网络适配器和物理网络之间的连接。若要使虚拟机能够外部访问多个
VLAN中的虚拟网络,您需要将物理网络上的端口配置为
trunk模式。还需要知道所使用的特定
VLAN,以及虚拟网络支持的虚拟机使用的所有 VLAN ID.

图 4-8 两张网卡均创建虚拟交换机

此时在虚拟机的属性设置选项卡,即可于”网络适配器”→”虚拟交换机”处进行修改,通过下拉菜单选择已创建的虚拟交换机,如图
4-9 所示。

www.hj8828.com 10 图 4-9
为虚拟机分配虚拟交换机

4.1.2
创建内部虚拟交换机

在虚拟交换机管理选项卡,创建一个新的内部网络虚拟交换机,如图 4-10
所示,内部网络虚拟交换机不与外部网络交换机冲突,可以在创建外部交换机之后创建,也可以在创建外部交换机以前创建,并且创建个数不受限制。内部网络虚拟交换机不与网卡绑定,无需进行网卡选择。

www.hj8828.com 11

由于Virtual
Server允许每个虚拟机连接4个虚拟NIC,如果需要的话你可以额外的添加物理网络连接。

在Windows Server? 2012中的 Hyper-V
虚拟交换机引入了一些新功能和增强能力,用于多租户隔离、流量整形、恶意虚拟机防护、以及简化的故障排除。利用内置的网络设备接口规范
(NDIS)筛选筛选器驱动程序以及 Windows筛选平台 (WFP)
标注驱动程序支持,Hyper-V 虚拟交换机使独立软件供应商
(ISV)可以创建可扩展的插件(称为虚拟交换机扩展)以提供增强的网络和安全能力。在Windows
server 2012中虚拟交换机变成了可扩张的虚拟交换机,它增强的功能有:

图 4-10 创建新的内部网络虚拟交换机

和创建外部网络虚拟交换机一致,创建内部网络虚拟交换机一样会产生一张新的网卡,可以单独配置
IP 地址进行管理,如图 4-11 所示。

www.hj8828.com 12 图 4-11
内部虚拟网络交换机的新网卡

此时在虚拟机的属性设置选项卡,即可于”网络适配器”→”虚拟交换机”处进行修改,通过下拉菜单选择已创建的虚拟交换机,从最终使用用户角度来看,用户并不能分辨出该虚拟交换机是内部网络的还是外部网络的,如图
4-12 所示。

www.hj8828.com 13 图 4-11
内部虚拟网络交换机的分配

内部网络虚拟交换机只能完成物理机与虚拟机、虚拟机与虚拟机之间的通信,无法完成虚拟机至其他物理机的通信。因此主要是在一些实验环境中使用。

4.1.3
创建专用虚拟交换机

在虚拟交换机管理选项卡,创建一个新的专用网络虚拟交换机,如图 4-12
所示,专用网络虚拟交换机仅在本物理机上虚拟机之间进行通信,创建个数不受限制。专用网络虚拟交换机不与网卡绑定,无需进行网卡选择,并且由于不与物理机通信,因此不会也不需要创建新的虚拟网卡。

www.hj8828.com 14

图 4-12
专用虚拟网络交换机由于专用虚拟网络交换机无法与任何外部主机通信,因此其实际应用场景仅限于部分测试环境,如导出线上服务器的数据,在专用虚拟网中进行测试、排错。

4.1.3
删除虚拟交换机

删除外部网络、内部网路、专用网络的虚拟交换机的操作均一致,在虚拟交换机管理选项卡中,检查左侧的虚拟交换机列表,单击需要删除的虚拟交换机,并点击右侧的”移除”
按钮即可。点击”移除”后,左侧被先选中的虚拟交换机会以附带下划线的方式显示,继续点击”确认”或”应用”即可完成删除,如图
4-13 所示。如果删除的是外部网络虚拟交换机,则有可能会有短暂的网络中断。

www.hj8828.com 15 图 4-13 删除虚拟网络交换机

如果出现如图 4-14
的错误提示,则说明该虚拟交换机已分配给某台虚拟机,当这台涉及的虚拟机没有选择其他虚拟交换机时,该虚拟交换机不可被删除。

www.hj8828.com 16 图 4-13
删除虚拟网络交换机容易出现的错误提示

使用虚拟DHCP Server

1、Windows PowerShell commands for Hyper-V Virtual Switch

4.2VLAN 的配置和使用

Hyper-V 虚拟交换机是一个二层交换机,同时其支持 VLAN 技术,通过 VLAN
技术,可以有效的隔绝广播风暴,限制跨 VLAN 之间的相互访问。在宏观上将
Hyper-V 虚拟交换机等同于一台硬件交换机会更容易理解一些,Hyper-V
虚拟交换机所提供的 VLAN 功能和物理交换机所提供的 VLAN 功能完全一致。

4.2.1VLAN
配置

在思科的交换机上,主要有两种 VLAN 类型,分别是 Access VLAN 和 Trunk
VLAN,其中 Acccess VLAN 是基于端口的,该物理端口配置的是什么
VLAN,就只允许这个 Access VLAN 通过;而 Trucck VLAN
一般是作为与其他交换机的汇聚使用的,Trunk VLAN 可以标记 tag
信息,一般只允许打了 tag 信息的 VLAN 通过,所以 Trunk 可以允许多个打了
tag 信息的受到许可的 VLAN 通过。而 Trunk VLAN
和虚拟化结合使用可以实现很多功能。

Hyper-V 的 VLAN 仅在虚拟交换机所对应的物理网卡之上联端口是 Trunk
时方可正常工作。Hyper-V 虚拟交换机并不参与路由,所有 VLAN
的通信完全依赖局域网中的物理交换机所设定的规则来完成。

 

4.2.2
典型应用

财务部门将一台位于 VLAN44
的物理机迁移到了虚拟化平台上,部门领导要求迁移后的虚拟机依然保留之前的网络限制策略,因此在完成迁移后,首先保证连接虚拟交换机的物理端口为
Trunk,然后修改”财务用服务器”这台虚拟机的属性,依次打开虚拟机的”属性”
→”网络适配器”→”虚拟 VLAN 标识”,输入 44 即可,如图 4-14
所示。经过配置后,该虚拟机可以继承物理交换机配置的一切 VLAN 属性。

www.hj8828.com 17 图 4-14 启用 VLAN 标识

如果没有网卡配置为 Trunk 上联口的物理环境,则配置 VLAN ID
无法发挥定义网络通信策略的功效,仅能做到不同 VLAN ID
之间的通信完全阻断。依据这种特性,也可以在测试环境中为部分虚拟机配置不存在的
VLAN ID 来简单的为几组虚拟机实现网络隔离,如图 4-15 所示。

www.hj8828.com 18 图 4-15 利用 VLAN
ID,简单对测试环境进行隔离

Virtual Server的内嵌HDCP
Server可以为虚拟网络启用,它能帮助你在同一物理网络部分创建逻辑单独网络。通过使用不同IP地址范围,这个技术可以帮助分隔网络通信,而且在交换机中不需要VLAN配置或其它设备。

You can now use WindowsPowerShell commands, run manually or in scripts,
to configure Hyper-V VirtualSwitch and related features.

4.3 带宽管理和网络高级功能

4.3.1
带宽管理

自 Windows Server 2012 起,微软为 Hyper-V
的网卡提供了带宽管理属性,通过带宽管理,可以对虚拟机网卡的流量进行限制,以达到区分服务级别的目的。

开启带宽管理功能非常简单,依次打开虚拟机的”属性”→”网络适配器”→”启用带宽管理”,输入最大带宽和最小带宽即可,如图
4-16 所示。此处单位为 Mbps,最小值为

10Mbps,即限制每秒数据流量为 1.25MB。最大值可根据需求进行设置。

需要注意的是,如果希望最大值小于 10Mbps,则最小值只能设置为
0,即不限制最小带宽。

www.hj8828.com 19

图2是一种可能的配置。

VMNetworkAdapter

图 4-16Hyper-V 带宽限制功能

开启带宽限制后,可以为不同级别的虚拟机提供不同的网络带宽,进而为更重要的业务预留宝贵的带宽,以实现精细化的管控。
带宽限制的实际效果可以在复制文件、上传下载等方面看到直观的效果。

4.3.2
网络硬件加速功能

在虚拟机的网络适配器下,可以进行”硬件加速”的选项配置。

虚拟机队列(VMQ)是一种硬件虚拟化技术,支持
VMQ
的网卡可对传入的帧进行分类,虚拟机队列(VMQ)使得宿主机的网络适配器可以绕过
DMA
数据包,直接参与到特定虚拟机的内存栈中。Windows Server 2012
可用动态的方式将传入网络通讯的处理工作分散到宿主机的处理器上。在网络负载较重时,动态
VMQ
可自动征用更多处理器。在网络负载较轻时,动态 VMQ
会释放这些处理器。值得注意的是,该选项默认是开启的,即使网卡不支持该技术也不会对系统的稳定性造成任何影响。然而如果网卡支持改选项,则可以为网络带来更好的用户体验。如果希望检测网卡是否支持虚拟机队列,可以在”控制面板”→”系统”→”设备管理器”→”网卡”→”属性”→”高级”下进行查找,如果有”VMQ”或”虚拟机队列”,即表示支持该功能。如图
4-17 所示,说明 Broadcom BCM5709C
芯片的网卡支持该技术。

www.hj8828.com 20 图 4-17Hyper-V 带宽限制功能

IPsec
任务卸载同样是一种硬件虚拟化技术,由于很多加密算法是处理器密集型的业务,因此大量的加密数据经过会消耗宿主机的
CPU 资源。IPsec
任务卸载拥有虚拟机卸载加密过程到网卡的能力,从而节省大量的 CPU
运算,,为系统提供更好带宽质量。该技术同样可以通过在”设备管理器”中检测”网卡”的”属性”进行验证,如图
4-18 所示,说明 Intel

82579LM
芯片的网卡支持该技术。使用 IPsec
任务卸载有两个必须的要求:

  • 物理机的网卡必须支持该技术。
  • 虚拟机的操作系统至少是 Windows Server 2008 R2
    或以上版本。

 

www.hj8828.com 21 图 4-18IPsec 卸载功能

 

单根 I/O
虚拟化不仅可以在创建虚拟交换机时使用,在虚拟机中同样可以使用。同时,这依然是一种需要硬件支持才可以实现的技术,默认情况下该选项不被勾选,只有确信自己的网卡支持该技术,才可以手动勾选该选项,以提升网卡性能,如图
4-19 所示。

www.hj8828.com 22 图 4-19Hyper-V
网络硬件加速功能。

4.3.3
网络高级功能

虚拟机的网络适配器下,除了”硬件加速”以外,还可以进行”高级功能”的定制。

默认创建的虚拟机的 MAC
地址均为动态地址,动态地址使用方便,但存在一个缺点,在使用 Hyper-V
的高级功能”实时迁移”时,会造成用户的 IP 变动。因此能够手动设置 MAC
地址适用范围更广泛一些。首先关闭虚拟机,然后依次打开虚拟机的”属性”→”网络适配器”→”高级功能”,修改
MAC 地址为静态,如图 4-20 所示。

注:我在自己的真实环境真的机器都是开启了静态mac的,这样随便怎么迁移mac不变,ip也不会变了

www.hj8828.com 23

www.hj8828.com 24

VMNetworkAdapterAcl

图 4-20Hyper-V 修改静态 MAC 地址

除了静态 MAC
地址外,Hyper-V
还提供了以下几种高级功能:

  • DHCP 防护:这是自
    Windows Server 2012
    以来的一项新功能,由于 DHCP 的特性是客户端向
    68 端口(bootps)广播请求配置,服务器向
    67 端口(bootpc)广播回应请求。DHCP
    防护正是基于此理论的一项实践,在为虚拟机开启 DHCP
    防护后,即使该虚拟机安装有 DHCP
    服务端,也无法在局域网内进行广播。可以防止虚拟机中恶意或假冒的用户进行
    DHCP
    欺骗。该功能实现简单,仅勾选选项即可。
  • 路由器保护:此功能有助于保护防范未经授权的路由器等,这个功能可以丢弃来自未经授权的虚拟机所假冒的路由器发出的路由器公告和重定向消息。
  • 受保护的网络:该功能在群集环境中有效,当检测到网卡连接断开后,该虚拟机会自动迁移到其他节点,以保障业务的连贯性,默认情况下该选项被勾选。
  • 端口镜像:在物理服务器配合三层交换机的时代,端口镜像是一种非常有用的功能,它可以帮助网络工程师实时的去分析网络流量,检查网络中存在的问题。来到虚拟化时代,这项功能依然得以保留,只需要将安装了网络监控软件的虚拟机的镜像模式设置为”目标”,被监视的虚拟机镜像模式设置为”源”即可。如图
    4-21 所示。

www.hj8828.com 25 图 4-21Hyper-V 配置端口镜像

图2:使用DHCP进行网络通信逻辑分割

VMNetworkAdapterVlan

4.4NIC 组合

 

4.4.1
什么是 NIC 组合

NIC 组合即 NIC Teaming,也有被称为”网卡绑定”,此技术是 Windows Server
2012/2012 R2
的内置功能,可以为用户提供具有冗余和容错功能的网络适配器,NIC
组合允许一次性绑定最多 32
个网卡接口成一个逻辑组,供用户使用。当组中某一个网卡发生故障时,组合中依然存活的网卡还可以正常使用。值得称道的是,NIC
组合技术对网卡厂商没有硬性要求,这是一种通用的技术。并且在特定前提下,NIC
组合还可以实现带宽叠加的效果。

实现 NIC 组合需要满足以下条件:

  • 至少一个网卡接口,为了实现冗余特性,至少需要链各个网卡接口。
  • 组合接口需要处于同一个网络环境中,如果上联交换机采用的是 Access
    VLAN,则接口需要处于同一个 Access VLAN 中。
  • 组合网卡接口不可超过 32
    个。

NIC
组合拥有如下成组模式:

  • 静态成组,这是一个静态配置的解决方案,这种模式通常需要较高级别的交换机支持,如果插入配置错误的交换机,可能会导致成组失败。
  • 交换机独立,由于交换机不知道网卡接口是某一个 NIC 组合的一部分,因此
    NIC
    组合中的网卡可以连接到不同的交换机上,同时这种方式也是对交换机依赖最小的模式。
  • LACP,链路聚合控制协议(LACP)用来动态的识别计算机和特定交换机之间的关系,一般来说这项技术主要用在交换机和交换机之间,用来带宽叠加,但现在已经可以在
    Windows Server 2012/2012
    R2 上使用了。
注:lacp需要接入的是同一个交换机的2个不同端口,不能接入2台不同的交换机,我直接用我的cisco交换机来测试的。

NIC
组合拥有如下负载平衡模式:

  • 地址哈希,该算法会根据数据包的组成部分哈希,然后将其分配给具有该散列值的可用网卡。这就可以保证相同的数据流能够流向相同的网卡。可以用作哈希的组成部分包括源和目的的
    MAC
    地址、源和目的的 IP
    地址,源和目的的 TCP 端口,
  • Hyper-V
    端口,当虚拟机都具有独立的 MAC 地址时,虚拟机的
    MAC
    地址可以为流量分配提供依据,因为虚拟机的 MAC
    地址是有规律的,交换机可以平衡负载到多条链路上,这个特性和”虚拟机队列”组合使用是非常有用的。值得注意的是,

    Windows Server 2012/2012
    R2 中使用 Hyper-V
    的交换机端口作为识别符,而不是用MAC
    地址,因为在某些情况下,一台虚拟机可能会使用多个 MAC 地址。

  • 动态,该选项类似于”自动”,也被称为智能负载均衡或自适应负载均衡。

     

 

4.4.2NIC
组合基本配置

 

第 1 步,打开服务器管理器,点击左侧的本地服务器,在右侧找到 NIC
组合,点击

“已禁用”字样,如图 4-22 所示。

www.hj8828.com 26 图 4-22NIC 组合配置 1

第 2 步,启动”NIC
组合”,在”适配器和端口”对话框,选中未被使用的网卡接口,本例中为”以太网
2″、”以太网 3″,如图 4-23 所示。

 

www.hj8828.com 27 图 4-23NIC 组合配置 2

第 3 步,在”适配器和端口”对话框中,点击”任务”,选择添加到新组,如图 4-24
所示。

www.hj8828.com 28 图 4-24NIC 组合配置 3

第 4
步,在”新建组”对话框中,输入容易记忆的组名称,点击”确定”后返回上一级菜单,完成
NIC 组合配置,如图 4-25 所示。

www.hj8828.com 29 图 4-25NIC 组合配置 4

第 5 步,在”组”对话框中,可以看到刚才创建的 NIC
组合的状态是”错误”,错误原因在”适配器和接口”中有所显示,原因均为媒体已断开连接,即未插入网线。如图
4-26 所示。

www.hj8828.com 30 图 4-26NIC 组合配置 5

第 6 步,在”组”对话框中,右键点击已创建的组合,选择”属性”,如图 4-27
所示。

www.hj8828.com 31 图 4-27NIC 组合配置 6

使用NIC teaming聚合)

VMSwitch

第 7 步,在弹出的对话框中,点击”其他属性”,出现下拉菜单,依次选择成组模式为

“交换机独立”、负载平衡模式为”动态”,点击”确定”返回上一层,如图 4-28
所示。

www.hj8828.com 32 图 4-28NIC 组合配置 7

第 8 步,进入”控制面板”→”网络和共享中心”→”更改适配器设置”,可以看到

NIC 组合创建了一张新的虚拟网卡,并且图标异于其他,如图 4-29 所示。

www.hj8828.com 33 图 4-29NIC 组合配置 8

第 9 步,将 NIC 组合中涉及的两个网卡接上网线,直接插入同一个 VLAN
下的交换机,此时检查该网卡状态,发现其已连接,并且该网卡的带宽速度为两张网卡的叠加。如图
4-30 所示。

需要注意的是,NIC 组合中所涉及的网卡无需配置 IP,在 NIC
组合完成后,所涉及的网卡的 IP 信息均会丢失,并且丢失的 IP 不参与通信。

www.hj8828.com 34

NIC
teaming允许多个网络端口作为一个逻辑单元工作,主要有两个目的。第一,自动故障排除failover)。如果其中一个连接变为不可用由于端口或交换机故障),其它端口可以准确无误地接管工作任务。

2、Multiple Virtual NICs

图 4-30NIC 组合配置 9

成组模式为”交换机独立”、负载平衡模式为”动态”的 NIC
组合,其建立不依赖交换机,任意一台普通交换机均可实现该功能。但这种 NIC
组合只能实现端口冗余和负载均衡,无法实现带宽叠加。

 

4.4.3NIC
组合高级配置最理想的情况是使用交换机的
LACP 功能进行 NIC
组合,当成组模式为”LACP”、负载平衡模式为”地址哈希”时,物理链接的网卡可以额外获得带宽叠加的优势,将服务器定义为文件共享服务器时,该功能的作用会体现的非常明显。

使用 LACP 成组模式,需要满足以下两个条件:

  • 支持 LACP
    的物理交换机,如思科的 2960S 交换机。
  • 一定的前期配置。

第 1 步,使用 telnet 连接思科 2960S 交换机(其他支持 LACP
的思科交换机均可,由于做演示的设备为某生产环境的交换机,因此涂黑做无害处理),进入特权模式后,输入

“show run”,查看现有交换机配置,并进行接下来的配置,如图 4-31 所示。

www.hj8828.com 35 图 4-31NIC 组合高级配置 1

交换机中关于配置 LACP 的部分如下:关键部分以”!”的形式作为注释,供参考。

 

!首先定义 NIC 组合的 Port-channel,每一个 Port-channel 即一个 NIC 组合。

 

!这里定义了 6 组 NIC 组合,均放在
VLAN25 中。 interface Port-channel1 switchport access vlan 10

!

interface Port-channel2 switchport access vlan 25

!

interface Port-channel3 switchport access vlan 25

!

interface Port-channel4

 

switchport access vlan 25

!

interface Port-channel5 switchport access vlan 25

!

interface Port-channel6 switchport access vlan 25

!…………………………

!…………………………

!从第 5 个端口开始配置 NIC 组合,这里定义了 description hv-manager,即指定该端口的注释是"hv-manager"该选项可以方便后期运维的时候对端口的识别。同时该端口配置为 Access VLAN,因此需要加一句 switchport access vlan 25。关于如何确定 NIC 成组,需要将 NIC 组合的成员端口添加一句 channel-group x mode active,其中 x 为 Port-channel,示例中 5 端口和 13 端口即为一个组合;15 和 16 为一个组合。

 

interface GigabitEthernet1/0/5 description hv-manager switchport access vlan 25 spanning-tree portfast channel-group 6 mode active

!

interface GigabitEthernet1/0/6 description HAHV-3-4-0 switchport access vlan 25 spanning-tree portfast

!

interface GigabitEthernet1/0/7 description HAHV-2-4-0 switchport access vlan 10 spanning-tree portfast

!

interface GigabitEthernet1/0/8 description HAHV-1-4-0 switchport access vlan 10 spanning-tree portfast

!

interface GigabitEthernet1/0/9 switchport access vlan 25 spanning-tree portfast

!

interface GigabitEthernet1/0/10

switchport access vlan 25 spanning-tree portfast

!

interface GigabitEthernet1/0/11 switchport access vlan 25 spanning-tree portfast

!

interface GigabitEthernet1/0/12 switchport access vlan 25 spanning-tree portfast

!

interface GigabitEthernet1/0/13 description HAHV-manager-1 switchport access vlan 25 spanning-tree portfast channel-group 6 mode active

!

interface GigabitEthernet1/0/14 switchport access vlan 25 spanning-tree portfast channel-group 4 mode active

!

interface GigabitEthernet1/0/15 description HyperV1 switchport access vlan 25 spanning-tree portfast channel-group 2 mode active

!

interface GigabitEthernet1/0/16 switchport access vlan 25 spanning-tree portfast channel-group 2 mode active

!……………………………………

interface Vlan25 ip address 192.168.x.x 255.255.255.0

!

ip default-gateway 192.168.x.x ip http server ip http secure-server

第 2
步,在配置交换机的过程中只要注意提前定义”Port-channel”,并在成组的端口上使用”channel-group
2 mode active”即可。此时可以登录交换机的 web 界面,检查配置情况,如图
4-32 所示。

www.hj8828.com 36 图 4-32NIC 组合高级配置 2

第 3
步,输入交换机的用户密码后登录到交换机的主界面,此时可以看到交换机的运行健康状况,如图
4-33 所示。

www.hj8828.com 37 图 4-33NIC 组合高级配置 3

第 4 步,将鼠标移至顶部的虚拟交换机面板处,选择第 8
个端口,可以看到在交换机配置中为该端口写的注释”description
HAHV-1-4-0″的直观体现。在牵扯到较多的宿主机时,配置相应的端口注释是非常重要的一个环节,这可以减少后期维护时误操作的可能性,如图
4-34 所示。

www.hj8828.com 38 图 4-33NIC 组合高级配置 4

第 5 步,回到 NIC
组合中,修改”成组模式”为”LACP”,负载平衡模式为”地址哈希”,点击应用。此时会有短暂的网络中断,同时所涉及的网卡接口会出现”已出错
LACP
协商”的错误提示。这种情况是正常的错误提示,此时交换机会与网卡进行协商,如图
4-

34 所示。

www.hj8828.com 39 图 4-34NIC 组合高级配置 5

第 6 步,等待 5 到 10
秒钟的时间,当交换机与网卡的协商完成后,在”组”对话框中,可以看到该 NIC
组合的状态已经变成了”确定”,证明其已经开始生效,如图 4-35
所示。如果同时配置两台这种硬件物理服务器,则这两台服务器之间拷贝数据可以达到带宽叠加的效果。

www.hj8828.com 40

还有一个目的是为了提高性能。让多个端口在一个组共同工作可以有效提高带宽。请注意,有些配置还会依赖于网络基础设施的支持,比如交换机的端口分组port
grouping)选项。

In previous versions ofHyper-V, only one parent virtual NIC was
supported, however in Windows Server2012 Hyper-V, multiple NICs are
supported. In addition, you can share thephysical NIC that is bound to
the Hyper-V Switch with the management operatingsystem. You can create
multiple parent virtual NICS that you use for livemigration, storage,
and management; and you can assign each virtual NIC to adifferent
virtual Local Area Network (VLAN). You can also create differentQuality
of Service (QoS) polices for each virtual NIC.

图 4-35NIC 组合高级配置 6

4.4.3
虚拟机中的 NIC 组合

NIC 组合不仅可以在物理机中使用,在虚拟机中一样可以配置 NIC
组合,这使得虚拟机具有同时连接多张物理网卡获得冗余的特性,同物理机上的
NIC 组合一样,即使某一张网卡失效,依然不影响业务的持续运行。然而这种 NIC
组合只能提供故障转移的功能,当某一个网卡失效时,另外一张网卡可以迅速切换。

建议用户直接在物理机上配置 NIC
组合,这样更为简单,同时一次配置即可使其上所有对应的虚拟机的网卡获得冗余、分流等特性。

4.4.4 NIC
组合的不兼容性

已知的在 Windows Server 2012 R2 中,NIC 组合与以下三项技术不兼容:

  • SR-IOV,单根 I/O
    虚拟化技术,由于其是一种硬件级的网络加速技术,因此数据直接传送到网卡,不通过网络堆栈,自然不可能数据重定向到一个虚拟的
    NIC 成组上。

  • RDMA,远程直接内存访问技术,该技术多用于
    10Gbps
    网卡,是一种硬件级的网络加速技术,无法支持的原因同上。

  • TCP
    Chimney,不受支持。

4.4.5
通过命令行快速打开 NIC 组合

通过图形界面打开 NIC 组合需要依次打开”服务器管理器”→”本地服务器”→”NIC
组合”,而在运行中只需在输入一条命令”lbfoadmin”即可打开 NIC
组合工具,如图 4-36 所示。

www.hj8828.com 41

此外,还有一个优化网络的办法是更改TCP包大小的默认值。如果你经常在服务器之间传输大型文件如VHD),使用Jumbo
Frames可以大大地减少额外开支和提高性能。

 Add-VMNetworkAdapter –ManagementOS –Name
ManagementAdd-VMNetworkAdapter–ManagementOS–Name Storage

图 4-36 命令行运行 NIC 组合工具 1

如果希望一次对多台服务器(同一域内)配置 NIC 组合,可以使用”lbfoadmin

/servers servername1 servername2 …”这条命令来实现,如图 4-37 所示。

www.hj8828.com 42 图 4-37 命令行运行 NIC 组合工具

Virtual Server和防火墙

Add-VMNetworkAdapter–ManagementOS–Name“Live Migration”

4.5 小结

本章为大家介绍了 Hyper-V
的基础网络配置,通过创建虚拟交换机,可以为接下来虚拟机和物理网络的通信打下基础。VLAN
的配置和应用则可以将物理网络的 VLAN
特性带到虚拟环境中。而带宽管理和相应的网络高级功能能够为企业的虚拟化运维带来更具有颗粒度的管理。NIC
组合是一项从 Windows Server 2012 中带来的新功能,通过 NIC
组合,我们能够从网络层面为虚拟机带来高可用性,其实现简单,效果明显,同时基础配置无需高级交换机的配合,因此可以说,这是一项无论如何也值得一试的功能。

 

不言而喻,防火墙和端口级过滤器port-level filter)是Virtual
Server主机和虚拟机的重要保护层。从理论上来看,如果一个未认证的用户获得了Virtual
Server主机的访问权,它就可以访问虚拟机。

3、Port Access Control Lists (ACLs)

如果你想在Virtual
Server和可能的用户之间放置一个防火墙,要记住你可能需要打开的端口见表1)。

A port ACL is a rulethat you can apply to a Hyper-V switch port. The
rule specifies whether apacket is allowed or denied on the way into or
out of the VM. ACLs have threeelements with the following
structure:Local or Remote Address | Direction |Action.You can
specifyeither a local address or a remote address inLocal or Remote
Address,but you cannot specify both. The value that you supply forLocal
or RemoteAddress can be an IPv4 address, an IPv6 address, or a media
access control(MAC) address. Optionally you can use an IP address range
if you provide therange prefix.You can configure multiple port ACLs for
a Hyper-V switch port.During operations, the port ACL whose rules match
the incoming or outgoingpacket is used to determine whether the packet
is allowed or denied.

www.hj8828.com 43 

Add-VMNetworkAdapterAcl -VMName MyVM –LocalMacAddress
12-34-56-78-9A-–Direction Both –Action Allow

监视网络相关性能

Add-VMNetworkAdapterAcl -VMName MyVM –LocalMacAddressFF-FF-FF-FF-FF-FF
–Direction InBound–ActionAllowAdd-VMNetworkAdapterAcl -VMNameMyVM
–LocalMacAddressAny –Direction Both–Action
DenyAdd-VMNetworkAdapterAcl–VMName MyVM –RemoteIPAddress
192.168.0.0/16–Direction Outbound–Action Meter

在规划虚拟化网络配置时,主机和子机接口的一些通信统计数据非常有用。表2是一个统计数据示例,可以使用Windows
System Monitor收集这些数据。

4、MacAddressSpoofing

在主机级进行测量时,可以得到正在被使用的带宽总数和outbound
queue如果有的话)。如果要深究网络资源的信息,每个子操作系统都可以受监测,你可以进一步过滤每个网络适配器的细节数据。

MacAddressSpoofingallows you to specify whether a VM is allowed to
change its source MAC addressfor outgoing packets.

www.hj8828.com 44 

1.Set-VMNetworkAdapter –VMName MyVM–MacAddressSpoofing On

综述

2.Set-VMNetworkAdapter –VMName MyVM–MacAddressSpoofing Off

你可以通过很多种方法配置网络,从而更好地支持虚拟机。在本文中,我们了解了各种分隔通信、提高流量、配置防火墙和监测网络数据的方法。无论你的虚拟化环境规模如何,本文所有这些内容都可以帮助你优化网络性能。

5、RouterGuard

  1. 微软Virtual Server 2005虚拟化技术方案简介
  2. 在实验环境中使用”Virtual Server 2005″
  3. Virtual Server使用指南之一:安装和配置Virtual Server

RouterGuard allows youto specify whether the router advertisement and
redirection messages fromunauthorized VMs should be dropped

1.Set-VMNetworkAdapter –VMName MyVM–RouterGuard Off

2.Set-VMNetworkAdapter–VMName MyVM–RouterGuard On

6、DHCPGuard

DHCPGuard allows you tospecify whether DHCP server messages coming from
a VM should be dropped.

1.Set-VMNetworkAdapter –VMName MyDhcpServer1–DhcpGuard Off

2.Set-VMNetworkAdapter –VMName CustomerVM–DhcpGuard On

7、Port Virtual Local Area Network(PVLAN)

Network isolation isrelated to security, but unlike IPsec – which
encrypts the network traffic -isolation logically segments the traffic.
VLANs, however, suffer scalabilityissues. A VLAN ID is a 12-bit number,
and VLANs are in the range 1-4095. In amulti-tenant data center, if you
want to isolate each tenant by using a VLAN,configuration is complex and
difficult. These scalability issues of VLANs aresolved when you deploy
Hyper-V Network Virtualization, where tenants each havemultiple virtual
subnets. However, a simple solution when each tenant only hasa single VM
is to use PVLAN.PVLAN addresses some of the scalability issues ofVLANs.
PVLAN is a switch port property. With PVLAN there are two VLAN IDs,
aprimary VLAN ID and a secondary VLAN ID. A PVLAN may be in one of three
modes.

1.Isolated:Communicates only with Promiscuous ports inthe PVLAN

2.Promiscuous:Communicates with all ports in the PVLAN

3.Community :Communicates with ports in thesame community and any
promiscuous ports in the PVLAN

PVLAN can be used to create anenvironment where VMs may only interact
with the Internet and not havevisibility into other VMs’ network
traffic. To accomplish this put all VMs(actually their Hyper-V switch
ports) into the same PVLAN in isolated mode.Therefore, using only two
VLAN IDs, primary and secondary, all VMs are isolatedfrom each other.
The following PowerShell script puts a VM’s switch port into
PVLANisolated mode

8、Trunk Mode

In addition to PVLAN, Hyper-V Virtual Switch also provides support for
VLANtrunk mode. Trunk mode provides network services or network
appliances on a VMwith the ability to see traffic from multiple VLANs.In
trunk mode, a switchport receives traffic from all VLANs that you
configure in an allowed VLANlist. You can also configure a switch port
that is connected to a VM – but isnot bound to the underlying NIC – for
trunk mode .In the following examplecmdlet, MyVM can send or receive
traffic on any VLAN in the allowed list. Ifthere is no VLAN specified in
the packet, the packet is treated as if it isfrom VLAN 10.

Set-VMNetworkAdapterVlan–VMName
MyVM–Trunk–AllowedVlanIdList1-100–NativeVlanId 10

9、Port Mirroring

With Port Mirroring, traffic sent to or from a Hyper-V Virtual Switch
portis copied and sent to a mirror port. There are a range of
applications for portmirroring – an entire ecosystem of network
visibility companies exist that haveproducts designed to consume port
mirror data for performance management,security analysis, and network
diagnostics. With Hyper-V Virtual Switch portmirroring, you can select
the switch ports that are monitored as well as theswitch port that
receives copies of all the traffic.The followingexamples configure port
mirroring so that all traffic that is sent and receivedby both MyVM and
MyVM2 is also sent to the VM named MonitorVM.

Set-VMNetworkAdapter–VMName MyVM –PortMirroring Source

Set-VMNetworkAdapter–VMName MonitorVM –PortMirroring Destination

10、IPsec Task Offload(IpsecTO)

Many encryptionalgorithms are processor-intensive, which can slow the
performance of VMs.Hyper-V Virtual Switch now provides VMs with the
ability to use IPsecTO, whichallows the VM to offload encryption
processes to the NIC. Offloading theper-packet encryption operations
from the VM to the NIC results in substantialCPU savings.

Set-VMNetworkAdapter–VMName MyVM
-IPsecOffloadMaximumSecurityAssociation200

IPsec includes aSecurity Association (SA) with which it performs
encryption, and when youenable IPsecTO, the VM offloads the SA to the
NIC for processing.IPsecTO-capable NICs have a limited number of SAs
that can be offloaded, so youcan use Windows PowerShell to designate the
number of SAs that the VM canoffload to the NIC. Following are the
requirements for using IPsecTO.

1.Only VMs runningWindows Server(R) 2008 R2 and Windows Server 2012 are
supported,because the VM’s network stack must support IPsecTO.

2.The physical NIC must also support IPsecTO.

11、Receive Side Scaling (RSS) andDynamic Virtual Machine Queue (dVMQ)

In networking it is important to resolve circumstances where
networktraffic is blocked or slowed down, thereby causing latency. For
native traffic,Receive Side Scaling (RSS) processes incoming network
traffic so that it isn’t sloweddown by a single CPU. RSS processes the
IP source and destination fields andTCP source and destination ports to
spread the receive traffic across multipleCPU cores. For receive network
traffic coming externally from the server andinto the Hyper-V Virtual
Switch, Dynamic Virtual Machine Queue (dVMQ) performsa function similar
to RSS. With dVMQ, the destination MAC address is hashed toput the
traffic destined for a virtual NIC into a specific queue. Theinterrupts
to the CPU cores are also distributed to avoid being slowed by asingle
CPU core. If your VMs on a Hyper-V Virtual Switch receive a lot
ofexternal network traffic, it’s a good idea to use dVMQ.dVMQ
alsoincludes dynamic load balancing. Previously, the MAC hashing was
donestatically, and it was difficult to manage dVMQ. Management of dVMQ
is nowsimple– it is enabled by default, and no other management steps
are required .If for some reason youhavedisabled dVMQ, you can enable it
again by using the following cmdlet. The NICin this example is a
physical NIC that is bound to the virtual switch, and itis named
GuestTrafficNic.

Enable-NetAdapterVmqGuestTrafficNic

12、Hyper-vQuality of Service (QoS)

QoS is a set of technologies for managing networktraffic in a cost
effective manner, to enhance user experiences in enterpriseenvironments,
as also in home and small offices. QoS technologies allow you tomeasure
bandwidth, detect changing network conditions (such as congestion
oravailability of bandwidth), and prioritize or throttle traffic. For
example,you can use QoS to prioritize traffic for latency-sensitive
applications (suchas voice or video), and to control the impact of
latency-insensitive traffic(such as bulk data transfers)。You can use
Hyper-V QoS to manage network traffic on the virtualnetwork. In Windows
Server? 2012, QoS includes new bandwidth managementfeatures that enable
cloud hosting providers and enterprises to provideservices that deliver
predictable network performance to virtual machines on aserver that is
running the Hyper-V server role. Hyper-V QoS supports themanagement of
upper-allowed and lower-allowed bandwidth limits, commonlyreferred to as
maximum bandwidth and minimum bandwidth.

In hosted environments, Hyper-V QoS enables you toguarantee specific
performance levels based on the service level agreements(SLAs) to which
you have agreed with your customers. Hyper-V QoS helps ensurethat your
customers are not impacted or compromised by other customers on
theirshared infrastructure, which can include computing, storage, and
networkresources.

In addition, enterprise networks might requiresimilar functionality. By
using Hyper-V QoS in your enterprise, you can runmultiple virtual
machine-based application servers on a host server that isrunning
Hyper-V, and have confidence that each application server
deliverspredictable performance.

Hyper-V QoS provides the ability to:

Enforce minimum bandwidth and maximum bandwidth for atraffic flow, which
is identified by a Hyper-V Virtual Switch port number.

Configure minimum bandwidth and maximum bandwidth perHyper-V virtual
switch port by using either PowerShell cmdlets or WindowsManagement
Instrumentation (WMI).

Configure multiple virtual network adapters inHyper-V and specify QoS on
each virtual network adapter individually.

enforce QoS policies on Single Root I/OVirtualization (SR-IOV)-capable
network adapters that support bandwidthreservation per Virtual Port

Windows Server 2012 Hyper-V QoS can also use hardwarethat is compatible
with data center bridging (DCB) to converge multiple typesof network
traffic on a single network adapter with a guaranteed level ofservice
provided to each type of traffic. With Windows PowerShell, you
canconfigure these new features manually or enable automation in a
script tomanage a group of servers, regardless of whether they are
joined to a domain.

13、Hyper-v SR-IOV

  在虚拟机管理程序虚拟化的早期,英特尔和AMD认识到:如果它们把某些功能从软件卸载到处理器本身上面,就有助于提供更好的性能。这项机制现在分别被称为Intel-VT和AMD-V,也是大多数现代虚拟机管理程序的一项要求。SR-IOV同样将网络功能从软件转移到硬件上,以提高性能和灵活性。如果你有一台BIOS里面支持SR-IOV的服务器,又有能够支持SR-IOV的网卡,该服务器就能向虚拟机提供虚拟功能(Virtual
Functions)——实际上这些就是服务器本身的虚拟副本。如果你想广泛使用SR-IOV,就要明白如今支持它的网卡在它们所提供的虚拟功能数量方面很有限;有些网卡每块只支持4项虚拟功能,有些支持32项,有些最多支持64项。

  并不是因带宽而需要SR-IOV,因为只有万兆以太网连接才能被Hyper-V虚拟机总线塞满,但是它占用大约一个处理器核心用于计算。所以,如果你要求处理器的使用率很低,那么SR-IOV是最稳妥的选择。如果延迟时间极其重要,SR-IOV为你提供了近似本地裸机的网络性能,所以那是SR-IOV大放异彩的另一个场景。

  它有特定的应用和局限性,你在规划部署新的Hyper-V集群时需要注意。如果你使用Hyper-V可扩展交换机,又配置了端口的访问控制列表(ACL),可能还配置了一个或多个扩展,这些都会因SR-IOV而被绕过,因为交换机从来看不到SR-IOV流量。你也无法聚合主机上多块支持SR-IOV的网卡;不过,你可以在主机上有两块(或更块)物理SR-IOV网卡,把这些网卡提供给虚拟机;而且可以在虚拟机里面,利用虚拟网卡组建一个网卡群,以提升性能和故障切换机制。

SR-IOV的确可与实时迁移(Live Migration)协同使用,这是VMware的vSphere
5.1所做不到的。在每项虚拟功能的后台,Hyper-V利用平常的虚拟机总线网卡组建“轻型”网卡群;如果你把虚拟机实时迁移到没有SR-IOV网卡的主机,它只是切换到软件网卡。