我们最近从戴尔购买了许多服务器,所有这些服务器都在 BIOS 中禁用了硬件辅助虚拟化。
据我所知,硬件辅助虚拟化是一件好事——那么戴尔为什么要禁用它呢?如果机器不充当虚拟机主机,是否会产生性能开销?有没有安全问题?
如果它与您的答案相关,我们将主要使用:
- 主机操作系统:Windows Server 2003 Enterprise R2(32 位)
- 来宾操作系统:Windows Server 2003 Enterprise R2(32 位)
- VMM:虚拟服务器 2005 Enterprise R2 SP1
戴尔(和索尼等)禁用 Intel-VT 和 AMD-V 的原因是他们无法支持它。启用该功能将意味着他们必须为其提供支持,这主要是由于支持台的知识不足,根本无法做到这一点。
也就是说,至少,索尼是如何制定它的。
我试图从索尼支持人员那里窥探原因,这是他们唯一能给我的。不过,我终于能够自己修补我的 BIOS 并启用 VT。
至于其余的,像 Bluepill 这样的东西并不完全是主流。据我所知——而且我经常使用虚拟化的东西——启用它没有任何缺点。如果有的话,我真的很想知道它......
一个很好的理由是安全性。已知黑客会在您的操作系统和硬件之间插入恶意管理程序。这允许任何人以完全透明的方式捕获任何数据。
我会大胆猜测,并非所有可用于给定主板和 BIOS 组合的 CPU 都支持 VT 扩展。因此,为了兼容性,他们在 BIOS 中将其作为禁用状态发送。
时代在变,VT 现在变得非常普遍。所以也许我们会看到变化?
我在The Register上找到了这个:
根据您打算使用的虚拟化方法,您可能不需要在支持 Intel-VT 和 AMD-V 的 CPU 中启用硬件虚拟化功能。当您需要使用这些功能时,虚拟化方法在安装未经修改的操作系统(通常是 Microsoft Windows)时无法正常工作。
使用 VMware 时,通常不需要 Intel-VT 和 AMD-V 芯片组添加的硬件虚拟化功能,因为 VMware 在其内部提供了所有必要的功能,它可能导致虚拟服务器本身的性能下降。
使用 Xen 虚拟化,如果您打算在非特权来宾域 (domU) 中运行 Windows 并使用完全虚拟化而不是半虚拟化进行安装,则需要使用这些功能。根据我的经验,必须启用这些功能可能会导致整体性能显着下降,但它允许您安装 Windows。其他操作系统,如 Linux、*BSD 和 OpenSolaris,我在没有硬件虚拟化的情况下安装没有问题,并且在禁用硬件虚拟化功能时看到了更好的改进。
最后,它归结为您计划采用的虚拟化路径,以及您看到正在安装的操作系统,这可能是决定是否将其禁用或继续启用它的决定因素。
在戴尔服务器支持中工作后,所有支持 VT 的服务器默认在 bios 中禁用该功能,但如果您需要它很容易启用。
至于索尼 - 由于上述原因,他们在笔记本电脑中禁用了它。
我从未见过完全禁用 VT/SVM 功能的服务器,以至于您无法启用它。
我可能落后于时代,但在很多情况下,像 VMWare 这样的东西实际上会让很多事情变慢:
有关该主题的 VMWare 白皮书
正如上面提到的 wzzrd,这一切都与支持有关。关闭 VT 可以减少 VT 成为影响因素的支持方案的数量,从而为大多数尚未尝试虚拟化路线的客户提供更快的问题解决方案。
我注意到的一件事是,在 Windows 7 中,当我的戴尔上启用 VT 时,运行 xp 模式 beta 会导致与 vmware 工作站发生冲突。两者都希望“掌握”VT 扩展,并且由于 xp 模式即使在退出后也会使 VPC 进程继续运行,因此它不会“放开”VT。因此,当您启动 vmware 时,您尝试运行的任何虚拟机都会在启动时死机。在 bios 中禁用 VT 扩展可以防止这种情况发生,但会显着降低性能。
我很确定当您只运行本机操作系统时,硬件辅助虚拟化不会产生任何开销。
我能想到能够禁用它的唯一原因(实际上我以前从未想过这一点)是某些应用程序/工作负载在启用 HAV 时实际上可能比在本机运行时运行得更糟,因为某些开销例如在 MMU 中。
我根本不会担心。
启用 Intel VT 会使 CPU 更热,我有一台台式机和笔记本电脑都有这种行为,两者都带有库存的 CPU 冷却器。我指的是家用电脑,但它具有相同的功能。
我知道 AMD-V 默认启用,但我不知道它是否会使 CPU 更热。