Server 2016网卡组合模式
2019-02-15
网卡组合实现的功能
例如,在一台Hyper-V主机中,网络通讯涉及到很多不同的类型。例如通过管理网络来说,可以将Hyper-V主机加入到域环境中。通过远程连接的方式,对Hyper-V主机进行有效管理。在Windows Server 2016的Hyper-V运行环境中,可以使用SMB或者iSCSI的存储方式,这就需要和文件服务器以及iSCSI服务器进行通讯。对于Hyper-V复制功能来说,需要定期的将虚拟机复制到其他的Hyper-V主机中。
对于Hyper-V实时迁移来说,也必须通过网络将VHD文件以及状态信息同步到别的Hyper-V主机中。即使在同一台Hyper-V之间中不同虚拟机之间也会使用到大量的网络流量,对于Hyper-V主机以及物理网络来说,流量也会成倍增加。为了扩大Hyper-V主机的整个通讯能力,必然会为其配置多块网卡,利用网卡组合功能,可以将其组合成一块逻辑的网卡,来扩展网络通讯的能力。
在Windows Server 2016中,最多可以将32块网卡聚合成逻辑网卡,可以提供极大的带宽流量。对于虚拟机来说,也具有网卡聚合能力。最多可以聚合12块网卡。当实现了网卡聚合之后,如果其中的某块网卡出现故障,其他的网卡还是可以正常工作的。
利用NIC网卡组合机制,可以将出现问题的网卡排除在外,同时利用热备机制,可以使用备用网卡替代损坏的网卡。
网卡组合成组模式
网卡组合模式包括两种,一种为交换机独立成组模式,该模式可以将Hyper-V中的网卡连接到不同的交换机上,对于所有的网卡组合配置以及负载均衡的设置来说,是完全由Windows Server 2016中的网卡组合的组件来对其进行控制的,交换机只是起到连接的作用。另一种为交换机相关的成组模式,该模式不仅仅需要在Windows Server 2016中完成网卡组合的配置,同时还需要在交换机中配置相关的参数,使其可以感知到网卡组合的配置。
对于交换机来说,存在两个不同的设置方式,一种方式是通过配置交换机端口的LDAP协议,将这些网卡聚合起来。另一种方式是在Windows Server 2016中设置网卡聚合的功能,并设置静态的成组模式,而且在交换机中也需要进行相应的配置。因为如果将Hyper-V主机的所有网卡连接掉一台交换机上,如果该交换机出现故障,就会对网络通讯造成极大的影响。
网卡组合负载平衡模式
对 于Windows Server 2016的网卡组合模式来说,存在两种负载均衡方式,其一为地址哈希方式,对于该方式来说,当客户对目标主机发起请求时,会先由组合中的一块随机网卡来接受该请求,例如当客户端访问文件存储服务器时,该机就会使用组合中的所有网卡,将目标文件通过传送给客户。该模式适用于请求的数据很小,但是送出的数据非常大的情况。
该模式会对传入/传出的TCP/IP数据包的一些特征进行判断,例如其会匹配数据包中的端口/IP/MAC信息,并据此计算出哈希值。地址哈希模式很适用于物理主机。另一种为Hyper-V端口模式,该模式适用于Hyper-V主机,在其中会运行很多虚拟机,这些虚拟机会连接到虚拟交换机的虚拟端口上。对于Hyper-V主机的特定流量来说,就会由组合中的特定网卡来完成虚拟机中的流量的传递。在Windows Server 2016中,默认使用的是动态成组模式,该模式会依据当前服务器的环境和数据流量情况,自动的选择以上某种平衡模式。
在独立主机中使用网卡组合
在本例中,在某台Windows Server 2016中安装好了Hyper-V角色,配置了五块网卡,其中的一块网卡用于管理只用,例如和域控进行通讯,允许管理员对该机进行远程管理和配置等操作。将其余的从NIC1到NIC4等网卡聚合成逻辑网卡,来增加网卡层面的网络通讯带宽。在服务器管理器中左侧选择“本地服务器”项,在右侧的“NIC组合”栏中的点击“已禁用”链接,打开NIC组合的管理和查看窗口。
在“组”面板右侧点击菜单“任务”→“新建组”项,在打开窗口(如图1)中输入NIC组的名称,选择所有可用的网卡,点击“其他属性”项,在扩展面板中选择所需的成组模式(默认为交换机独立),负载平衡模式(默认为动态)等参数。对于成组模式来说,在默认情况下Windows Server 2016中来配置网卡组合的,和交换机没有关系。如果交换机支持网卡组合功能,则可以选择LACP或者静态成组模式。
图1 创建NIC组
对于负载平衡模式来说,Windows Server 2016会依据服务器当前配置情况,来最优的选择地址哈希或者Hyper-V端口模式。在“备用适配器”列表中可以选择某块网卡,将其设置为备用状态。该网卡平时是不会工作的,不会参与流量的分发操作。当组合中的某网卡损坏后,该备用网卡就会接替其工作。当然,在网卡组合中就需要去除该网卡可以承担的流量。在“主要组接口”栏中点击“默认VLAN”项,在打开窗口中可以选择“特定的VLAN”项,来指定VLAN的标识信息。这适用于使用VLAN的情况。点击确定按钮,就可以将这些网卡聚合为逻辑的网卡。
打开网络连接端口,就可以看到该逻辑网卡。打开其属性窗口,可以根据需要设置其IP地址,默认网关等参数。对于物理主机来说,逻辑网卡的配置和使用比较简单,对于Hyper-V主机来说,需要在Hyper-V管理器右侧点击“虚拟交换机管理器”项,在打开窗口选择外部类型的虚拟交换机。点击“创建虚拟交换机”按钮,输入虚拟交换机的名称(例如“Switch1”),在“连接类型”面板中选择“外部网络”项,在列表中选 择“Microsoft Network Adapter Multiplexor Driver”项,取消“允许管理操作系统共享此网络适配器”项的选择状态,点击应用按钮,将逻辑网卡和该虚拟交换机进行绑定。在配置虚拟机时,使其连接到该虚拟交换机,就可以让其使用逻辑网卡来传输流量了。
在虚拟机中使用网卡组合
在Hyper-V虚拟机中,同样可以进行网卡的组合配置。例如Hyper-V管理器中选择某个虚拟机,在右侧点击“设置”项,在打开窗口左侧选择“网络适配器”→“高级功能”项,在右侧选择“允许将此网络适配器作为来宾操作系统中的组的一部分”项,允许在虚拟机中将网卡进行组合配置(如图2)。如果有多块虚拟网卡,可以分别进行配置。登录到该虚拟机中,在服务器管理器中按照上述方法,来激活网卡组合功能,将多块虚拟网卡聚合为逻辑网卡。
交换机嵌入NIC组合功能
在Windows Server 2016中,提供了交换机嵌入NIC组合功能,其适用于Hyper-V运行环境,其是针对于Hyper-V中的虚拟机进行配置的。不同的是,只能通过PowerShell命令行或者SCVMM进行具体的配置。虽然两者都是实现网卡聚合功能,但是还是存在区别的。NIC组合最多支持32块网卡,且不限定网卡的类型。交换机嵌入NIC组合功能必须要求使用同类型的网卡,最多支持8块网卡,不支持备用模式,只能使用独立交换机模式。只有网卡支持RDMA机制时,才可以使用该功能,RDMA机制可以增强网络通讯的性能。
图2 在虚拟机中使用NIC功能
例如,在虚拟机中的服务器管理器中打开NIC组合的管理和查看窗口,删除已经存在的组。之后打开虚拟机设置窗口,在左侧分别选择存在的虚拟网卡,在对应的“虚拟交换机”列表中选择“未连接”项。对应的,在Hyper-V主机上删除上述虚拟机交换机(例如“Switch1”)。 在 Hyper-V 主机上打开NIC组合的管理和查看窗口,删除已经存在的组,这样就可以配置交换机嵌入NIC组合功能了。交换机嵌入NIC组合功能,其本质上就是创建一个虚拟交换机,该虚拟交换机已经具备了网卡组合的功能。这样,虚拟机使用到的虚拟网卡就已经完成了聚合的配置。
在PowerShell窗口中 执 行“New-VMSwitch-N e t A d a p t e r N a m e nic1,nic2,nic3,nic4-Name vSwitch1-Enabl eEmbededTeaming $true-AllowManagement $fa lse”命 令,创 建 名 为“vSwitch1”的嵌入NIC组合类型的虚拟交换机,可以对指定的物理网卡进行聚合操作。其中的“nic1”等表示网卡的名称,“-AllowManagement”参数表示无需在Hyper-V主机中对网卡进行组合配置。之后查看Hyper-V主机的NIC组合的状态,可以看到其依然处于未激活状态。在Hyper-V管理器中打开虚拟交换机管理器,可以看到创建的名为“vswitch1”的虚拟交换机已经处于聚合的状态了。选择目标虚拟机,在其设置窗口左侧分别对应的虚拟网卡,在右侧“虚拟交换机”列表中选择上述“vSwitch1”虚拟交换机,即可激活其聚合能力。当该交换机产生网络流量时,就会在上述多块物理网卡上产生负载平衡,来扩展其传输能力。