微软私有云测试01-Windows Server 2016虚拟化新功能概述

Windows Server 2016从2015年Preview到2016年10月13日发布至今已经过去了3年多的时间,Windows Server 2016 不断秉承微软“移动为先云为先”的战略,为我们带来了很多新的功能,并对其他某些功能做了一些增强。

其中包括:

虚拟化层面:

1) 支持连接待机:

在老的版本中,Hyper-V对电脑进入待机、休眠状态支持不是很好,一个典型的问题,如下链接所示https://support.microsoft.com/en-us/help/2973536/connected-standby-is-not-available-when-the-hyper-v-role-is-enabled ,在Windows Server 2016中,支持基于电池的笔记本或台式机进入休眠状态。

2) 独立设备分配:

VMware和Citrix在很早之前就支持基于PCI-E设备直接透传到虚拟机使用,Hyper-V 2016终于支持了该功能,此功能的支持为我们带来了很大的可用性,可以直接在虚拟机中使用原生的基于PCI-E接口的显卡、NVME SSD高速磁盘等,使得虚拟机能够满足新型的图形应用程序(包括支持通过RemoteApp在虚拟机中发布虚拟应用程序)、基于AI的数据计算、或某些对磁盘IO较高的应用等。

详情可参考如下链接:

https://blogs.technet.microsoft.com/virtualization/2015/11/19/discrete-device-assignment-description-and-background/

3) 虚拟化安全:

第一代虚拟机的磁盘加密:Windows Server 2016 提升了虚拟化的安全性,当前支持在第一代虚拟机操作系统中使用Bitlock技术对磁盘进行加密,此项新功能,使用一个小的、专用的虚拟驱动器存储系统磁盘的BitLock密钥.Hyper-V 二代虚拟机支持使用虚拟TPM功能对磁盘进行加密,与第二代虚拟机方式实现不同的是,要解密磁盘并启动虚拟机,Hyper-V主机必须是启用了受保护的虚拟机功能,并且已经获得授权或者拥有其中一个受防护虚拟机的私钥,密钥存储需要虚拟机的配置版本为版本8.

4) 主机资源保护:

此功能通过查找过多的活动级别来帮助防止虚拟机使用超过其共享的系统资源。这有助于防止虚拟机的过度活动降低主机或其他虚拟机的性能。当监视检测到具有过多活动的虚拟机时,将为虚拟机提供更少的资源。默认情况下,此监视和强制执行已关闭。

5) 虚拟机网卡、内存的热添加、删除

支持在二代虚拟机开机状态下热添加、删除虚拟机的内存、网卡资源。支持Windows和Linux。降低内存资源时一定要确保降低的目标值高于当前虚拟机已经使用的内存资源。

6) Hyper-V管理器改进

备用凭据支持:在老的Hyper-V管理器中如果要从本机连接到另外一台Hyper-V服务器,则仅能使用当前主机所使用的凭据,无法在连接时手动指定凭据。当前在Win10和Win2016中,支持在Hyper-V管理器连接到其他主机时手动输入指定凭据,并且可以保存该凭据,以便再次登陆,此功能可以为管理员带来方便,允许管理员使用个人的Win10电脑在不切换账户的情况下连接到Hyper-V 主机进行管理。

管理早期版本:使用Windows Server 2016和Windows 10中的Hyper-V Manager,您可以管理在Windows Server 2012,Windows 8,Windows Server 2012 R2和Windows 8.1上运行Hyper-V的计算机。

更新的管理协议:Hyper-V Manager现在使用WS-MAN协议与远程Hyper-V主机通信,该协议允许CredSSP,Kerberos或NTLM身份验证。使用CredSSP连接到远程Hyper-V主机时,可以执行实时迁移,而无需在Active Directory中启用约束委派。基于WS-MAN的基础架构还可以更轻松地启用主机进行远程管理。WS-MAN通过端口80连接,端口80默认打开。

7) 通过Windows Update提供的集成服务更新

在老版本的Windows Server 2012、R2或Windows Server 2008、R2中,部署完虚拟机后,需要手动从Hyper-V主机挂载vmguest.iso 为虚拟机安装集成服务组件,在Win 2016中,Hyper-V主机将不再提供vmguest.iso文件,转由Windows Update来提供集成服务,虚拟机安装完操作系统后,通过Windows Update更新补丁时会自动获取集成服务组件。

8) Linux安全启动

在第2代虚拟机上运行的Linux操作系统现在可以在启用安全启动选项的情况下启动。在运行Windows Server 2016的主机上启用Ubuntu 14.04及更高版本,SUSE Linux Enterprise Server 12及更高版本,Red Hat Enterprise Linux 7.0及更高版本以及CentOS 7.0及更高版本以进行安全启动。首次启动虚拟机之前,您必须配置虚拟机以使用Microsoft UEFI证书颁发机构。您可以从Hyper-V管理器,Virtual Machine Manager或提升的Windows Powershell会话执行此操作。对于Windows PowerShell,请运行以下命令:

Set-VMFirmware TestVM -SecureBootTemplate MicrosoftUEFICertificateAuthority

9) 更大的可伸缩性

Windows Server 2016提供了更强大的性能,在二代虚拟机中可支持最高 12 TB内存(Windows Server 2012 R2为1TB),240核CPU(Windows Server 2012 R2为64)

详细的资料可参考如下连接:

https://cloudblogs.microsoft.com/windowsserver/2016/09/28/windows-server-2016-hyper-v-large-scale-vm-performance-for-in-memory-transaction-processing/

https://docs.microsoft.com/zh-cn/windows-server/virtualization/hyper-v/plan/plan-hyper-v-scalability-in-windows-server

10) 嵌套虚拟化

以往我们测试虚拟化,硬件资源不够时,往往希望采用虚拟机中运行虚拟机的模式,原来仅有VMware vSphere、VMware Workstation支持嵌套虚拟化。当前Windows Server 2016也对嵌套虚拟化予以了支持,允许在虚拟机中部署Hyper-V Hypervisor,并支持在虚拟机的Hyper-V上再运行虚拟机,为我们日常的开发和测试带来了极大的方便。

其实微软推崇嵌套虚拟化估计更多的是为了推行自己在VM中运行容器应用所考虑。

不过与VMware不同的是,微软的老套路,嵌套虚拟化仅支持Windows Server 2016和Windows 10。

更多信息可参考:

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/nested-virtualization

11) 网络功能

新的网络功能包括:

· 远程直接内存访问(RDMA)和交换机嵌入式组合(SET):当前支持在虚拟机的网卡上启用RDMA,以满足大多对数据延迟敏感的应用程序需求。并且在传统网络绑定模式下,推出了SET的嵌入式网卡组合模式,此模式具有与传统网卡绑定类似的功能,但是比传统网卡绑定提供了更多高级功能,如QoS等,详细参考如下:

https://technet.microsoft.com/library/mt403349.aspx

· 虚拟机多队列(VMMQ):通过为每个虚拟机分配多个硬件队列来提高VMQ吞吐量。默认队列成为虚拟机的一组队列,流量在队列之间传播。

· 软件定义网络的服务质量(QoS):在默认类带宽内管理通过虚拟交换机的默认流量类别。

12) 生产检查点(快照)

在原来的时候,我们并不建议快照长时间保留在生产环境中,是因为快照具有不稳定性。在Windows Server 2016中,微软推出了生产检查点功能,生产检查点基于guest虚拟机内的备份技术而不是通过Hyper-V存储虚拟机磁盘状态已保存的状态。对于Windows虚拟机,使用卷快照服务(VSS)。对于Linux虚拟机,刷新文件系统缓冲区以创建与文件系统一致的检查点。如果您更愿意使用基于已保存状态的检查点,请选择标准检查点。在Windows Server 2016中,默认将生产检查点作为默认检查点方式,但用户如需切换回普通检查点模式,也可以进行切换。

13) 滚动群集升级

支持将Windows Server 2016加入到运行Windows Server 2012 R2的群集中,可以使用户在不停机的情况下升级群集,在混合模式下,群集级别默认运行在Windows Server 2012 R2级别下,只有整个群集内的主机全部升级为Windows Server 2016后,群集级别才会更新为Windows Server 2016。

14) 共享虚拟磁盘

微软在Windows Server 2012 Hyper-V中支持 共享虚拟磁盘技术,允许多个虚拟机挂载同一个虚拟磁盘,以实现在虚拟机中部署群集等技术。在Windows Server 2016中,针对共享虚拟磁盘进行了更新:

支持在开机状态下,对共享虚拟磁盘的大小进行调整(增大或缩小);

可以使用Hyper-V复制技术备份共享虚拟磁盘;

15) 屏蔽虚拟机Shielded VM

Shielded VM又称之为虚拟机防护,屏蔽虚拟机使用多种功能,使Hyper-V管理员和主机上的恶意软件更难以检查、篡改或窃取Shielded VM上的数据。虚拟机的数据和状态已经加密,Hyper-V管理员无法查看Shielded VM的视频输出和磁盘,并且虚拟机可以限制为仅在已知的、健康的、已启用Host Guardian Service的主机上运行。并且当前屏蔽虚拟机与Hyper-V 复制兼容,要复制屏蔽虚拟机,必须在复制目标主机上授权允许运行此屏蔽虚拟机。

16) 群集虚拟机启动顺序

此功能是您可以更好地控制首先启动或重新启动的群集虚拟机,此功能类似于VMwrae的DRS功能,可以通过设置虚拟机的启动顺序,来预先启动提供服务的虚拟机,后启动部分依赖提供服务的虚拟机。可以通过PowerShell命令设定集合(类似于VMware的DRS规则),并将虚拟机放置到集合中,并设置依赖关系。

17) 存储服务质量(QoS)

存储服务质量QoS在Windows Server 2012中首次提供,在Windows Server 2016中,支持在SOFS(横向扩展文件服务器)上创建存储QoS策略,并将他们分配给Hyper-V虚拟机上的一个或多个虚拟磁盘,存储性能会根据策略自动重新调整,以便在存储负载波动时满足策略。

18) 虚拟机配置文件格式

虚拟机配置文件使用新格式,使读取和写入配置数据更加高效。如果发生存储故障,该格式还会降低数据损坏的可能性。虚拟机配置数据文件使用.vmcx文件扩展名,运行时状态数据文件使用.vmrs文件扩展名。

.vmcx文件为二进制文件,不支持编辑.vmcx或.vmrs文件。

19) 第二代虚拟机的虚拟化基线安全

虚拟机化基线安全功能支持Device Guard(设备防护)和Credential Guard(凭据防护)等功能,可增强对操作系统的保护,使其免受恶意软件的共计。虚拟机安全极限策略在版本8开始在第二代虚拟机中得到支持。

20) Windows 容器

在Windows Server 2016中,微软首次实现了原生容器的支持,并且支持原生的Docker命令,加上近期收购github,频频投资Linux内核,足以见得微软在开源领域的雄心。

Windows容器允许许多独立的应用程序在一个计算机系统上运行。它们构建速度快,可扩展性和可移植性高。有两种类型的容器运行时可用,每种类型都有不同程度的应用程序隔离。Windows Server Containers使用命名空间和进程隔离。Hyper-V容器为每个容器使用轻量级虚拟机。

主要功能包括:

使用HTTPS支持网站和应用程序

新开发的Nano服务器可以托管Windows Server和Hyper-V容器

能够通过容器共享文件夹管理数据

能够限制容器资源

21) Windows PowerShell Direct

在Windows Server 2016中,支持物理机直接通过PowerShell连接到虚拟机,即时虚拟机中没有IP地址也可直接使用。Windows PowerShell Direct在主机和虚拟机之间运行,这意味着它不需要网络或防火墙要求,无论您的远程管理配置如何,它都能正常工作。

Windows PowerShell Direct是Hyper-V管理员用于连接Hyper-V主机上的虚拟机的现有工具的替代方法:

· 远程管理工具,如PowerShell或远程桌面

· Hyper-V虚拟机连接(VMConnect)

22) 存储-存储空间设备直通

当前在Windows Server 2016上,微软针对存储空间进行了提升,支持每台服务器直接调用服务器本地磁盘,并可以在群集内将所有服务器的磁盘汇总构建为一个存储空间存储池,实现类似于VMware VSAN的分布式存储功能。

存储空间直通允许通过使用具有本地存储的服务器构建高可用性和可缩放存储。 该功能简化了软件定义的存储系统的部署和管理并且允许使用 SATA SSD 和 NVMe 磁盘设备等新型磁盘设备,而之前群集存储空间无法使用共享磁盘。

远程虚拟桌面:

微软从Windows Server 2008 R2开始推出自己的桌面虚拟化功能,最早的MED-V、APP-V、USMT等都是为了丰富微软的虚拟化桌面战略,但是微软处理虚拟桌面时又比较微妙,一方面与Citrix大力合作,极为推崇Citrix的虚拟桌面,一方面又推广自己的产品,双管齐下策略。

1) GPU加速

RemoteFX技术是微软早年收购的一家公司产品,主要用于虚拟机中的显示加速(类似于Nvidia公司的Vgpu,但原理不同),下图为微软近几年对RemoteFX技术的改进。

在Windows Server 2016之前,微软RemoteFX一直不支持OpenGL、OpenCL协议,仅支持自己的DirectX,使得AutoCAD、3DMax等应用程序在虚拟桌面下无法发挥较高的性能;在Windows Server 2016中微软终于支持了OpenGL4.4和OpenCL 1.1,使得RemoteFX当前已经支持主流的显示协议,能够较高的运行各种图形软件,显存大小由Win 2012的330M提升为了1GB,支持4K分辨率显示,支持Windows Server虚拟机(使得可以在RemoteApp中发布图形应用程序)。

此外除了RemoteFX外,微软还支持DDA(设备直通分配),可以将安装在物理机上的显卡直接映射给虚拟机使用,虚拟机可以像物理机一样使用整个显卡的所有功能、性能,使得某些对图形性能要求较高的应用程序能够得到支持。

2) RDP V10

微软在Windows Server 2016和Windows 10中推出了RDP V10,在RDP 10中,微软引入了全屏AVC 444模式以几in一步提升AVC /H.264的支持,根据某些对比显示,当前RDPV 10+DDA的性能已经可以媲美VMware 的显卡虚拟化。

相关信息参考如下:

https://cloudblogs.microsoft.com/enterprisemobility/2016/01/11/remote-desktop-protocol-rdp-10-avch-264-improvements-in-windows-10-and-windows-server-2016-technical-preview/

https://www.rdsgurus.com/rdp10-versus-pcoip-on-hyper-v-with-dda/

好了,关于Windows Server 2016的虚拟化改进先介绍到这里,下一篇我们开始部署测试环境。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券