在Windows Server 2012 R2的Hyper-V中创建支持RemoteFX的虚拟机
今天一个网友问在Hyper-V创建中,支持3D的内容。有一段时间不用Hyper-V了,今天在家里的PC机上,安装测试一下。
1、在Windows 10计算机安装Windows 2012 R2
我当前的计算机是Windows 10,有1个128GB的M.2的SSD(图中标号为1的),1个3TB的硬盘作数据磁盘,前几天为了装Windows 7,又添加了一个2TB的硬盘,之后在这个2TB的硬盘上创建了3个主分区、1个扩展分区,其中第1个扩展分区安装了64位的Windows 7企业版(这个版本不会自动升级到Windows 10,图中标号为2的),创建的第2个分区规划是用于Windows Server 2012 R2(图中标号为3的),剩下的两个分区就作数据盘了,如图1-1-1所示。为了容易区分,你可以在每个卷上加上卷标名称。
图1-1-1 分区状态
当前的Windows 10版本是14279,这是一个预览版。我当前的实验计算机是一个华硕Z97-K的主板、8GB内存、Intel I5-4690K的CPU,没有配独立显卡就是用的CPU中集成的显卡(Intel HD 4600)。
图1-1-2 当前Windows 10
现在做测试,大多数都是在虚拟机中,但有的时候,就没有办法在虚拟机中,例如要测试这个Hyper-V、支持RemoteFX功能的虚拟机,需要在物理机上做测试。这时候就需要安装多系统了。实际上,到了Windows 7之后,安装多系统很容易:
(1)进入Windows 7(或Windows 8、Windows 10、Windows 2008 R2等系统),在Windows 界面开始安装。
(2)有多个"空闲"的分区,每个分区装一个系统,不能将多个系统安装在同一个分区。例如在图1-1-1中,Windows 10安装在128GB的M.2硬盘上,Windows 7安装在标号为2的这个主分区中,Windows 2012将要安装在标号为3的分区中。如果你还要安装更多的"Windows系统",再创建更多的分区就行。如果你的硬盘,没有单独的分区,则可以压缩现有分区,在压缩出的分区中,创建新的分区,或者新建VHDX或VHD文件,挂载虚拟硬盘也是没有任何问题的。
在当前的计算机中,已经安装好了Windows 7、Windows 10的多系统。那么接下来简单的介绍一下,在Windows 10中安装Windows Server 2012 R2的内容(安装Windows 7、Windows 8与此类似)。
(1)进入Windows 10图形界面,加载Windows Server 2012 R2的安装光盘镜像,并将安装光盘镜像里面的所有文件复制到硬盘的一个文件夹中,如图1-1-3所示。在我的这个文件夹中,有Windows 7、Windows 10及Windows 2012的安装文件。
图1-1-3 复制Windows 2012 R2安装文件
(2)之后运行setup.exe,进入安装程序,如图1-1-4所示。
图1-1-4 安装Windows
(3)之后安装就比较简单了,输入安装序列号,如图1-1-5所示。
图1-1-5 输入序列号
(4)在安装位置,选择图1-1-1中所标记的、卷标为2T_WS12R2-OS的分区,如图1-1-6所示。
图1-1-6 选择安装Windows 2012 R2的分区
(5)之后等待安装安装完成,在安装完成第一阶段重新启动之后,在启动菜单项中会添加Windows Server 2012 R2,如图1-1-7,这就是安装好的、带有多系统的启动选择菜单了,之后你可以选择要进入的系统。
图1-1-7 多系统启动菜单
2 安装Hyper-V并创建虚拟机
进入Windows Server 2012 R2之后安装Hyper-V及远程桌面服务中的"虚拟化主机"功能。安装完成之后,多次重启之后,进入Hyper-V管理器。
(1)选择"Hyper-V设置",如图2-1-1所示。
图2-1-1 Hyper-V设置
(2)在"物理GPU"选项上中,在右侧下拉列表中选择要用于物理GPU的显卡,当前是Intel HD 4600,选中"将此GPU用于RemoteFX",如图2-1-2所示。
图2-1-2 物理GPU
(3)创建虚拟机,设置虚拟机名称为Windows 10,将虚拟机保存在一个单独的文件闪中,如图2-1-3所示。
图2-1-3 创建虚拟机
(4)在"指定代数"中,选择"第一代",如图2-1-4所示,目前只有第一代虚拟机才支持RemoteFX功能。
图2-1-4 选择第一代虚拟机硬件
(5)其他选择默认值,或者根据情况选择,在本示例中为虚拟机分配2GB内存(我当前主机只有8GB,如果你的主机配置高,根据你的需要设置更大的内存也可)、设置127GB硬盘,如图2-1-5所示。
图2-1-5 指定虚拟硬盘
(6)设置虚拟机完成,如图2-1-6所示。
图2-1-6 创建虚拟机
(7)修改虚拟机的设置,如图2-1-7所示。
图2-1-7 修改虚拟机设置
(8)在"添加硬件"选项中,选择"RemoteFX 3D视频适配器",单击"添加"按钮,如图2-1-8所示。
图2-1-8 添加Remote3D 适配器
(9)添加之后,单击"确定"按钮,完成设置,如图2-1-9所示。在此还可以设置监视器的数目、最大监视器的分辨率。
图2-1-9 完成设置
(10)之后启动虚拟机,并在虚拟机中安装Windows 10,如图2-1-10所示。
图2-1-10 安装Windows 10
(11)安装完成之后,在Windows 10虚拟机中,执行dxdiag,在"显示"选项卡中,可以当前已经支持3D加载,显卡名称为"Microsoft RemoteFX 图形设备-WDDM",如图2-1-11所示。
图2-1-11 3D加载己启用
(12)返回到Hyper-V管理器,在"Hyper-V设置→物理GPU"中,在"GPU详细信息"中看到,有1个虚拟机当前正在使用此GPU,如图2-1-12所示。
图2-1-12 GPU详细信息
如果关闭Windows 10的虚拟机,删除"RemoteFX 3D视频适配器",再次启动虚拟机并进入系统,执行dxdiag,看到的显示名称是"Microsoft Hyper-V视频",如图2-1-13所示。
图2-1-13 Hyper-V视频
3 Windows 7虚拟机测试
如果你是在Hyper-V中创建Windows 7的虚拟机,并且安装Windows 7的操作系统,如果添加"RemoteFX 3D视频适配器",则不能使用控制台的方式进入Windows 7的虚拟机,如图3-1-1所示,这是在添加了"RemoteFX 3D视频适配器"的虚拟机,安装完Windows 7之后的提示。
图3-1-1 不能显示
对于这种情况,你需要关闭虚拟机,修改虚拟机配置,先移除"RemoteFX 3D视频适配器",如图3-1-2所示。
图3-1-2 移除显卡
再次启动虚拟机,进入Windows 7操作系统之后,设置IP地址、启动远程桌面连接功能,并为当前的用户设置一个密码(或者为Administrator设置密码并启用该账户),之后关闭虚拟机,修改虚拟机设置,并重新添加"RemoteFX 3D视频适配器",再次启动虚拟机。
当虚拟机再次启动之后使用"远程桌面连接",连接到这个Windows 7的虚拟机,如图3-1-3所示,执行dxdiage,可看信息。
图3-3-3 RDPUDD显卡
如果没有添加"RemoteFX 3D视频适配器"显卡,则看到的是"Microsoft Hyper-V视频",如图3-3-4所示。
图3-3-4 标准虚拟显卡
4 RemoteFX的要求
最后我再简单介绍一下RemoteFX的要求。
显卡:Windows Server 2012中对RemoteFX的硬件需求较低,一般支持支持DirectX 11的显卡并安装驱动程序即可。
CPU:你服务器上的处理器也必须支持Second Level Address Translation (SLAT)扩展、Data Execution Prevention (DEP),并在服务器固件中启用虚拟化。
SLAT(Second Level Address Translation)二级地址转换技术,在Intel和AMD处理器中均有所支持,但名称有所不同,Intel叫做EPT(Extended Page Tables),在Nehalem架构中开始支持;AMD叫做RVI(Rapid Virtualization Indexing),在第三代Opteron处理器Barcelona中才开始支持。
如果你想看你的计算机,是否启用这一功能,执行msinfo32,在"系统摘要"最后四行可以看到,如图4-1-1所示。
图4-1-1 系统摘要
支持RemoteFX的Hyper-V VM必须配置最低数量的RAM。对于x86 VM,必须配置至少1024 MB RAM,x64 VM必须至少2048 MB RAM。
虚拟机操作系统必须是Windows 7 SP1企业版或旗舰版,或者Windows 8.1、Windows 10,需要"第一代"虚拟硬件。
最后说明,Hyper-V 我有一段时间不用了,我写的比较仓促,本文如有错误,欢迎指正。
关于Hyper-V的较为详细的使用,请观看我的视频课程"如何组建Hyper-V实验环境实战视频课程",链接为http://edu.51cto.com/course/course_id-2446.html
或者参考我的图书《Microsoft虚拟化与云计算应用案例详解》,链接