在服务器进入生产环境之前,应该更改某些Hyper-V的默认配置以获得更好的性能表现。
有多种因素会促使你调整技术产品的默认配置。将默认配置更改为推荐配置可以帮助提升产品的性能表现。根据所使用的Hyper-V版本不同,你可能想要在生产环境当中进行特定调整以获得更好的整体性能表现。这篇文章介绍了Windows Server 2012 R2中Hyper-V的默认配置以及你可以做出的一些重要调整。
存储虚拟机文件的默认位置
当你在服务器上启用Hyper-V角色之后,默认情况下,它会选择本地磁盘作为存储不同虚拟机文件的目标位置。你可以更改存储虚拟机文件的默认位置,这里的虚拟机文件包括虚拟硬盘(VHD)文件、虚拟机配置文件以及快照文件。Hyper-V的默认存储位置:
虚拟机配置文件(XML):
C:\ProgramData\Microsoft\Windows\Hyper-V\virtual machines location
虚拟机VHD文件:
C:\Users\Public\Public Documents\Hyper-V\Virtual Machines
虚拟机快照文件:
C:\ProgramData\Microsoft\Windows\Hyper-V\Snapshots
不论何时在Hyper-V服务器当中创建新的虚拟机,虚拟机文件的存储位置,包括VHD、XML和快照,都将会从Hyper-V服务器配置中读取。在生产环境当中,推荐将存储位置更改为基于块或者基于文件的存储,比如CSV(Cluster Shared Volumes)或者 SMB(Server Message Block)。因为大多数生产环境都配置了高可用性,并且在大规模环境当中使用实时迁移,因此最好在CSV存储当中部署虚拟机文件。
实时迁移和存储实时迁移配置
实时迁移和存储实时迁移特性的默认配置为同时处理20个并发实时迁移请求。你可能想要将其更改为更小的数值,以避免影响网络负载。除此之外,默认实时迁移可以任何网络上接收迁移数据包,但是推荐使用专用网络来处理实时迁移请求,意味着这个网络不能用于Hyper-V主机上的任何其他服务。
从Windows Server 2012 R2开始,Hyper-V提供了三种实时迁移方式:TCP/IP、压缩和SMB,默认采用压缩的方式。如果采用这种方式,首先系统会压缩虚拟机当前使用的内存,之后通过TCP/IP连接将压缩的内容复制到目的服务器上。尽管压缩可以帮助改善性能表现,但是SMB仍然要比另外两种方式快得多。SMB的基础是Hyper-V服务器之间的高速网络连接,其使用SMB Multichannel聚合多块网卡的带宽,并且通过SMB Direct(RDMA)将处理器的部分负载分配给网卡。
Hyper-V Replica配置
从Windows Server 2012开始,Hyper-V支持将虚拟机内容复制到Replica Hyper-V服务器。默认情况下,复制功能是关闭的。换句话说,Hyepr-V主机默认情况下不能作为Replica服务器。如果你想要在生产环境当中使用这个特性,就要考虑启用Hyper-V Replica。默认情况下,Hyper-V Replica会允许任何从经过验证的Hyper-V服务器发起的连接。但是我们推荐创建一个信任组(Trust Group),只允许从已知Hyper-V服务器发起的复制连接。还推荐更改位置,以便你不会在Hyper-V Replica服务器上存储复制的内容。
增强会话模式策略
增强会话模式(Enhanced Session Mode)允许在没有网络连接的情况下将本地资源重定向到虚拟机。你可以配置两种增强会话模式策略:服务器策略和用户策略。默认情况下,服务器策略——在本地Hyper-V服务器上启用本地资源重定向——是禁用的。如果你想要允许管理员和用户重定向本地资源到运行在Hyper-V 2012 R2主机上的虚拟机,那么应该启用它。如果使用用户策略,当用户连接到虚拟机之后,可以看到本地重定向窗口。
NIC teaming
Windows Server 2012和之后版本的操作系统支持NIC teaming。尽管NIC teaming和Hyper-V配置之间并没有直接关系,但还是推荐在Hyper-V主机上配置NIC teaming,来聚合带宽以及在网络层实现高可用性。
扩展Port ACL安全特性
Windows Server 2012 R2加强了 Port ACL安全特性,这种特性最初出现在Windows Server 2012当中。Port ACL可以帮助你保护虚拟机流量。默认情况下,Port ACL没有被使用。如果你想要阻止或允许任何进入/发出的流量,就要使用Port ACL了。
Hyper-V虚拟网络交换机
默认情况下,Hyper-V服务器并不会创建Hyper-V虚拟网络交换机,除非你在启用Hyper-V角色时选中它们。你必须创建必要的Hyper-V虚拟网络交换机,以保证虚拟机之间以及和外部网络能够正常通讯。