教程之家 > 操作系统 > Win10 > 正文

Win10嵌套虚拟化技术是什么 内置虚拟机Hyper-V新增功能嵌套技术开启步骤

2019-09-23 11:17  教程之家  媛媛  
字号:T|T

Win10自带虚拟机Hyper-V,在Hyper-V中可以像独立王国那样独立操作。Hyper-V新增一个功能,叫嵌套虚拟化技术。什么意思?就是Hyper-V虚拟机里可以再次使用Hyper-V技术,就是虚拟机中可以再建立其他虚拟机,环环相套。虚拟机就是模拟的系统,可以像沙箱那样隔离使用,不会感染病毒、留下垃圾等。虚拟机中再建立虚拟机,这就是虚拟机中的战斗机。下面来看看Win10嵌套虚拟化技术使用注意事项和技巧。

Win10嵌套虚拟化技术是什么?

嵌套虚拟化技术英文名Nested Virtualization,意思是虚拟机里面再运行一个虚拟机。通过嵌套虚拟化技术,用户可以在Hyper-V虚拟机中运行Hyper-V容器,即在Hyper-V虚拟机中跑Hyper-V虚拟机,该技术是针对系统自带Hyper-V虚拟机的。

从本质上讲,此功能上是把在虚拟机中运行虚拟机监控程序所需的一些硬件功能进行了虚拟化。Hyper-V虚拟化技术依靠硬件虚拟化支持(如英特尔VT-x和AMD-V)来运行虚拟机。通常情况下,一旦Hyper-V的安装,管理程序隐藏了客户虚拟机这种能力,防止来宾虚拟机再次安装Hyper-V。

该功能本质上是把在虚拟机中运行虚拟机监控程序所需的一些硬件功能进行了虚拟化。在最新预览版本10565中,宿主机的Hyper-V虚拟机监控程序则对客户机开放虚拟化扩展功能,因此客户机也可以拥有自己的虚拟机,在Hyper-V虚拟机中再次启用Hyper-V技术。

简单的说,在Win10中你建立一个虚拟机后,在虚拟机中安装一个win10系统,然后你还可以在虚拟机的Win10系统中再建立一个虚拟机再安装一个Win10系统,没错,说起来有点绕口,这就是虚拟机中的虚拟机,当然这只针对自带Hyper-V虚拟机。

该功能本质上是把在虚拟机中运行虚拟机监控程序所需的一些硬件功能进行了虚拟化。

非嵌套虚拟化技术:

嵌套虚拟化技术:

如下图所示,你可以看到在一台电脑中运行了一个Hyper-V虚拟机,而这个Hyper-V虚拟机里面又运行了一个虚拟机。

嵌套虚拟化界面

如何开启套虚拟化技术?

关于如何使用套虚拟化技术,使用过Hyper-V虚拟机的朋友应该比较了解,当在Win10创建Hyper-V虚拟机后,虚拟一个Win10系统,然后在虚拟机中Win10系统中,又创建一个基于Hyper-V虚拟机的win10系统。

当然,这个功能目前也算是在测试阶段,不可避免的会出现一些问题。

在宿主机中运行下面的Powershell命令即可:

Set-VMNetworkAdapter -VMName-MacAddressSpoofing on

此时就可以在客户机中继续安装嵌套的客户机了。

嵌套虚拟化技术使用注意事项

1、使用最新的Windows 10预览版本10565,10565之前所有的版本都不支持,包括最新的Windows Server 2012 R2 With update

2、一旦开启了虚拟化嵌套技术,以下功能将无法兼容,使用这些功能将导致虚拟机停止工作或功能不起作用:

1) 动态内存必须被关闭;

2) Runtime内存大小调整失败;

3) 虚拟机中的检查点功能不能正常工作;

4) 不能进行实时迁移操作;

5) 无法使用虚拟机“保存”和“恢复”;

3、必须关闭Virtualization Based Security (VBS)以确保能够开启嵌套虚拟化;

4、当前预览版本10565中只支持Intel VT-x虚拟化技术,尚不支持AMD-V;

5、必须开启MAC欺骗技术才能保证客户机正常网络连接;

6、为了虚拟机能够正常运行,需要至少4G内存,推荐8G内存以上的机器。

Win10 10565中开启微软嵌套虚拟化技术步骤

1、确保您已经通过Windows insider会员计划升级到Windows 10最新预览版10565

2、在控制面板中启用Hyper-V功能。

3、登陆GitHub网站下载嵌套虚拟化所需的脚本,也可以使用Invoke-WebRequest 直接调用该PS脚本。

https://github.com/Microsoft/Virtualization-Documentation/blob/master/hyperv-tools/Nested/Enable-NestedVm.ps1

4、创建一个Hyper-V虚拟机,然后关闭

5、使用如下命令开启嵌套虚拟化技术,并在执行过程检查是否满足相关需求

1Invoke-WebRequest https://raw.githubusercontent.com/Microsoft/Virtualization-Documentation/master/hyperv-tools/Nested/Enable-NestedVm.ps1 -OutFile ~/Enable-NestedVm.ps1

1~/Enable-NestedVm.ps1 -VmName 《VmName》

如果您的虚拟机配置为小于4G内存,此时将会提示您

当前我的虚拟机“NestedVM” 配置为16G内存,提示您会启用虚拟化扩展和MAC地址欺骗将被启用

选择“Y”,键入回车

由于当前仍处于开发的预览版阶段,提示您相关警告

6、登陆客户机启用Hyper-V功能

也可以使用如下命令行安装Hyper-V

1Invoke-Command -VMName “NestedVM” -ScriptBlock { Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -Online; Restart-Computer }

7、创建一个嵌套虚拟化技术的Hyper-V虚拟机。

创建完新的虚拟机之后,发现相较Windows 10 RTM版本上的Hyper-V配置文件版本再一次升级由6.0到7.0

通过使用发现,开启微软的Nested Virtualization之后,再次创建虚拟机并使用一段时间发现在使用性能上可以接受。

Win10如何使用命令PowerShell安装Hyper-V

如果您希望使用Windows PowerShell安装,则打开PowerShell窗口,执行以下命令,然后重启机器;

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All

安装完成之后,点击开始菜单,点击Windows管理工具,此时您将能够看见Hyper-V管理器的快捷方式。(PS:在Windows 10 preview阶段,不能直接启用Hyper-V所有选项,需要将Hyper-V安装完成之后,再次安装管理工具,好在RTM之后修复了该选项);

点击Hyper-V管理器,将会打开Hyper-V管理器的管理控制台

Hyper-V作用

Hyper-V 提供了基础结构,这样你可以虚拟化应用程序和工作负载,用来支持旨在提高效率和降低成本的各种商业目标,如:

1、建立或扩展私有云环境。Hyper-V 可帮助你接触或扩展共享资源的用途,并随着需求的变化而调整利用率,以根据需要提供更灵活的 IT 服务。

2、提高硬件利用率。通过将服务器和工作负载合并到数量更少但功能更强大的物理计算机上,可以减少对资源(如电源和物理空间)的消耗。

3、改进业务连续性。Hyper-V 可帮助你将计划和非计划停机对工作负载的影响降到最低限度。

4、建立或扩展虚拟机基础结构 (VDI)。包含 VDI 的集中式桌面策略可帮助你提高业务灵活性和数据安全性,还可简化法规遵从性以及对桌面操作系统和应用程序的管理。在同一物理计算机上部署 Hyper-V 和远程桌面虚拟化主机(RD 虚拟化主机),以制作向用户提供的个人虚拟机或虚拟机池。

5、提高部署和测试活动的效率。使用虚拟机可以无需获取或维护所有硬件而再现不同的计算环境,否则的话则会需要。

Hyper-V硬件要求

Hyper-V 需要一个 64 位处理器,包括以下要求:

硬件协助的虚拟化。包括虚拟化选项(具体来说是 Intel 虚拟化技术 (Intel VT) 或 AMD 虚拟化 (AMD-V) 技术)的处理器提供此功能。

硬件强制实施的数据执行保护 (DEP) 必须可用且已启用。具体地说就是,你必须启用 Intel XD 位(执行禁用位)或 AMD NX 位(无执行位)。

Hyper-V历史

1、 Windows Server 2008 With Hyper-V

Hyper-V首次出现是在Windows Server 2008中,作为windows server安装角色出现。主要功能有:

①每个VM支持最大64G内存

②每个VM最多支持4个虚拟CPU

③使用.VHD格式作为Hyper-V虚拟机硬盘,支持最大2T,默认使用IDE设备

④使用windows故障转移群集功能作为Hyper-V高可用

⑤支持在群集间实施快速迁移

⑥虚拟机快照

⑦支持10Gbps虚拟网络以及VLANs支持

2、Windows Server 2008 R2 With Hyper-V

Windows Server 2008 R2问世之后,在原有的基础上新增已经增强了一些功能,包括:

实时迁移。实时迁移使您能够以透明方式从一个故障转移群集节点移动到同一群集中的另一个节点,而无需断开网络连接,也不会感觉到停机时间。 实时迁移要求在运行 Hyper-V 的服务器上添加和配置故障转移群集角色。 此外,故障转移群集需要群集节点的共享存储。 这可以包含一个 iSCSI 或光纤信道存储区域网络 (SAN)。 所有虚拟机都存储在共享存储区域中,且运行的虚拟机状态是由其中一个节点管理的。

在运行 Hyper-V 的指定服务器上,在给定的时间点只能执行一次实时迁移(迁移到服务器或从服务器迁移)操作。这意味着将无法使用实时迁移同时移动多个虚拟机。

实时迁移需要 Windows Server 2008 R2 中的故障转移群集的新的群集共享卷 (CSV) 功能。 CSV 提供单个一致的文件命名空间,这样运行 Windows Server 2008 R2 的所有服务器都会看到同一个存储。如下图所示。

通过实时迁移带来了更大的灵活性和价值:

提供更好的灵活性。降低成本。提高生产效率。

动态虚拟机存储。对虚拟机存储的改进包括对热插入存储器和热移除存储器的支持。 通过在虚拟机运行时支持添加或移除虚拟硬盘和物理磁盘,有可能快速重新配置虚拟机来满足不断变化的要求。还可以对虚拟机的现有 SCSI 控制器添加或移除虚拟硬盘和物理磁盘。 热插入和热移除存储器要求在来宾操作系统上安装 Hyper-V 集成服务(在 Windows Server 2008 R2 中附带)。

增强的处理器支持。现在最多可以有 32 个物理处理器内核。 增加的处理器支持使得在单个主机上运行更高要求的工作负荷成为可能。此外,还具有对第二层地址转换 (SLAT) 和 CPU 内核放置的支持。 CPU 内核放置使 Windows 和 Hyper-V 能够将处理过程合并到可能的最少数量的服务器内核,并挂起不活动的处理器内核。 SLAT 在 x86/x64 处理器的体系结构 x86/x64 分页表下添加了第二个分页级别。它提供一个从虚拟机内存访问到物理内存访问的间接层。 在虚拟化方案中,基于硬件的 SLAT 支持会提升性能。 在基于 Intel 的处理器上,这称为扩展页表 (EPT),而在基于 AMD 的处理器上,这称为嵌套页表 (NPT)。

增强的网络支持。已将对 Jumbo 帧的支持(先前在非虚拟环境中提供)扩展到虚拟机上。 此功能使虚拟机能够使用最大为 9,014 字节的 Jumbo 帧(如果基础物理网络支持)。

3、Windows Server 2008 Service Pack 1

尽管Windows Server 2008 R2针对Hyper-V做了很大的改进,但是仍然有许多功能确实,比如动态内存,它允许了在Hyper-V中实施最大内存。在VDI方面增加了RemoteFX功能实现vGPU。

4、Windows Server 2012 With Hyper-V

微软发布的Windows Server 2012(Hyper-V3.0)在企业级应用中更具优势,在高可用方面提供更多的解决方案,比如虚拟机复制,基于SMB3.0的共享虚拟机部署、Hyper-V群集、虚拟机迁移等,更符合企业实际应用环境(网卡捆绑,HBA卡支持)。实施更为强大的虚拟化平台。

利用 Windows Server 2012 Hyper-V,组织现在比以前更容易利用虚拟化带来的成本节约,将多个服务器角色合并为独立的虚拟机,从而最优化地利用服务器硬件投资。可以使用 Hyper-V 在一台服务器上高效地并行运行多个操作系统,包括Microsoft Windows、Linux和其他操作系统。Windows Server 2012 用更多功能、更好的伸缩性、以及内置的可靠性机制对此进行了扩展。

在数据中心,在桌面,以及现在的云,Microsoft 虚拟化平台在 Hyper-V 及管理工具的引导下,让您的资金创造更大的价值。

5、 Windows Server 2012 R2新增功能

以上就是Win10自带虚拟机Hyper-V新增功能嵌套虚拟化技术的使用方法。嵌套虚拟化技术的意思,就是虚拟机中再有虚拟机,这叫虚拟机中的战斗机,毕竟连环套的虚拟机,你用得上这么多吗?虚拟机是系统中的一个模拟系统,是独立王国那样,不会把虚拟机中运行的病毒、垃圾带到外面的系统中,对于测试软件的用户来说用处很大,毕竟安装软件、运行软件的缓存都随着虚拟机的关闭而消失,不会给外面的系统带来麻烦。关注教程之家,解锁更多系统资讯。

点击加载更多