在 VMware 中运行 VMware?
Posted
技术标签:
【中文标题】在 VMware 中运行 VMware?【英文标题】:Running VMware in VMware? 【发布时间】:2010-10-01 03:42:53 【问题描述】:我们有一台运行 VMware 并托管用于 SharePoint 部署测试的虚拟机的物理机。那台机器已经过时了,而且我雇主的网络沙皇正在大力推动托管虚拟机来替代过时的物理服务器。我很好奇是否可以在 VMware 内部运行 VMware,如果可以,是否会对性能产生严重影响。我们不需要此设置具有极高的性能,因为它仅用于 SharePoint 测试,并且关联的 SQL Server 位于不同的盒子上。我的猜测是,我们不能只使用主要托管的 VM 进行测试,因为我们希望偶尔回滚,否则对它有更多的控制权,并且不太可能从网络人员那里获得支持。有人有这方面的经验吗?
编辑:我知道这种嵌套肯定不是首选选项,但是 (1) 我们希望能够灵活地随意使用 VMware 快照,以及 (2) 网络人员不允许我们任意回滚到之前的时间点,因为可能会删除强制的安全更新。我的猜测是,运行 VMware Workstation 的本地台式机可能只是要走的路。托管选项似乎很有吸引力,如果它可以工作的话,因为它减少了我需要处理的机器维护。
【问题讨论】:
你好,我们听说你喜欢虚拟化。 也许是虚拟接收? 【参考方案1】:在 VMware 中运行 VMware 的技术限制是 VMware、Virtual PC 等利用现代 CPU 中的Virtualization features。
如果您有两个或多个虚拟机管理程序都试图控制Ring 0,那么就会出现问题,这是我在桌面上同时运行 VMware 和 Virtual PC 时遇到的问题 - 一个会出错/崩溃。
如果您的管理程序可以与“父”管理程序交互,那么您就可以了。或者,如果子管理程序不尝试使用 CPU 虚拟化功能,或者完全模拟 CPU(例如 QEMU),那么您也应该没问题。
基本上,旧 CPU 上的旧式虚拟机管理程序使用 Full virtualization(速度慢),它能够嵌套,从而对性能造成严重影响。现代虚拟机管理程序/CPU 使用hardware assisted virtualization(接近本机性能),您很难找到设计或能够嵌套虚拟机的虚拟机管理程序。
最后,我真的建议不要在运行生产虚拟机的同一物理服务器上运行开发/测试虚拟机。有太多错误和安全隐患 - 您需要管理开发/测试环境,听起来您不应该访问生产环境。同样,您可能不希望运维团队弄乱您的测试环境。
更新: ESXi 4 现在支持虚拟化自身。更多信息请见this article
【讨论】:
+1 给你民粹主义徽章,享受 :) 当然我喜欢你的回答 我记得我无法在 Microsoft Azure VM 中运行 VMware。是不是因为 Azure VM 的 CPU 不支持虚拟化? @KenT 请参阅azure.microsoft.com/en-us/blog/nested-virtualization-in-azure,了解有关今天支持的内容的更多信息。【参考方案2】:我从未在 VMware 中运行 VMware,但我在 VirtualBox 中运行 VirtualPC 没有任何问题,所以我想没有根本原因它不应该工作......
在我看来,您的“网络沙皇”不灵活,而不是任何技术问题。如果您是开发人员或 QA,您需要一个测试环境,您可以在其中玩转过时(并且可能不安全)版本的操作系统和应用程序,而不会使公司网络的其他部分处于危险之中。
【讨论】:
是的,这就是关键。我们需要在不危及网络的情况下搞砸。【参考方案3】:这里是前 VMware 员工。
首先,当您说嵌套 VMware 时,我假设您指的是嵌套 ESXi。 (您也可以指 Workstation、Fusion 或 Player)。
嵌套的 ESXi 环境不受支持,不应用于生产。这些场景未在 QA 中进行测试,也不保证可以正常工作。简而言之,如果您遇到任何问题,VMware 将不会帮助您进行嵌套 ESXi 设置。
话虽如此,是的,你可以做到,是的,它确实有效。很多人在他们的实验室中使用嵌套的 ESXi,但不在生产中。以前,嵌套 ESXi 工作需要进行特殊的配置文件编辑。我见过甚至有 3 层嵌套 ESXi 服务器的环境(ESXi vm on 和 ESXi vm on a physical ESXi host)。最近有 ESXi 设备使这变得更容易。
看看这里: http://www.virtuallyghetto.com/2015/12/deploying-nested-esxi-is-even-easier-now-with-the-esxi-virtual-appliance.html
【讨论】:
【参考方案4】:我遇到了同样的问题。我在一家大公司工作,我们的整个基础架构都是虚拟的,所以如果你需要一台服务器,你可以得到一个 VMware VM。所以我有几个基于 Windows 2003 Server Standard Edition 的 Guest VM,它们有 6GB 内存和 200GB 磁盘空间,但我想在它们上面运行 linux 和 LAMP 堆栈。因此,我尝试在其中安装 VMware Workstation,但收到一条错误消息,提示无法在 VM 中安装它。我还尝试了 Microsoft Virtual PC 并收到了类似的错误消息。我安装了 Sun 的 VirtualBox 并且安装得很好,但我无法让网络在来宾 Ubuntu 操作系统中工作。我的下一步是尝试QEMU,尽管性能可能会成为问题。
【讨论】:
【参考方案5】:您应该看看大型机——它们从一开始就是虚拟化的:
硬件 - 运行 Hypervisor Type 1 - Level 1 在这你有 zVM - Type 2 Hypervisor - Level 2 在这你有 zOS - 你的主要大型操作系统 - 3 级 和/或 在这你有zLinux - 3级 和/或 在这你有 zVM 用于测试下一个版本 - 3 级 和/ 在这一点上,你有 zOS 用于测试 zVM 和 zOS 都在下一个版本 - 4 级
所以降到 4 级是很常见的 请注意,在大型机上,您可以同时运行 1000 台虚拟机 - 大多数开始使用 zVM/CMS 和 zVM/Linux 的站点通常都会这样做。
【讨论】:
【参考方案6】:我可以看到两种解决方案(如果你在一个疯狂的虚拟机中计算一个虚拟机,则三个)。
新硬件,它应该足够强大,可以处理几个专门用于测试的 VM(sharpoint 等)。在这种情况下,您的团队可以被授予更多权利,而不会影响非测试虚拟机。
Sharepoint 测试 VM 被移动到主 VM 池,需要访问的用户可以签出/部署/回滚测试资源。这可以直接通过 VMWare 工具或通过使用 VMWare API 的内部项目进行。
这应该是网络/开发/测试之间的共同决定。
【讨论】:
我同意这对虚拟机中的虚拟机来说表面上听起来很疯狂,但真的如此吗?我一直无法找到任何类型的性能数据。我同意你的 #1 可能是最好的选择。【参考方案7】:JFY: 我尝试安装和运行 VMware ESXi 服务器主机(子 ESXi 服务器)作为虚拟机(在父 ESXi 服务器上)并且它运行但是你不能在子 ESXi 服务器下运行任何虚拟机。
【讨论】:
【参考方案8】:我正在单台物理机上练习 VMware vSphere 数据中心虚拟化。在 Windows 8 操作系统上安装了 VMware Workstation。在 VM Workstation 中,我安装了 Windows Server 2008 操作系统、VMware ESXi 操作系统并创建了 VMware Data center LAB。在 LAB 中运行着虚拟机,它确认我们可以在 VMware 中使用 VMware。但这取决于您的需求和选择的产品。
【讨论】:
【参考方案9】:你可以在VMware Workstation上安装ESXi,学习ESXi很有用,所以没有理由在VMware中运行VMware。
【讨论】:
【参考方案10】:是的。您可以在 VMWare 中运行 VMWare。虽然它不受官方支持,但您可以在子 ESX 中部署 VM。我检查了一个高级功能,例如通过 HBA 卡但在子 ESX 中不可用,因此我无法从阵列提供 LUN。 所以在生产中最好不要使用它。 但是对于培训和实践,可以使用它。
【讨论】:
【参考方案11】:你可以这样做。
您可以在另一个 vmware esxi 的虚拟机中安装 vmware esxi。
但是性能会很差。
【讨论】:
【参考方案12】:完全有效.. 除了某种测试或某种教育目的之外,完全不能这样做,因为你不会得到支持。而且从我有限的经验来看,它的表现并不好。
【讨论】:
【参考方案13】:“是否可以在 VMware 内部运行 VMware”什么?
我可以在托管在某处的 VMWare 机器上运行带有 Sharepoint 的 Windows。
或者,我可以在 WMWare 机器上运行带有 Sharepoint 的 Windows,该机器实际上是托管在某处的 VMWare 机器。
我到底为什么要添加一个嵌套级别?为什么不直接使用 Windows,Sharepoint 托管在某处?
您可以在单个主机上运行任意数量的 VMWare。很多不同的版本做很多不同的事情。
嵌套它们没有意义。
【讨论】:
一个问题是我们不能在主硬件上随意创建新的虚拟机。这些是托管的虚拟机,设置一个需要文书工作和美元,所以我们不能像在桌面工作站上那样轻松地创建这些。 @Chris Farmer:嵌套它们仍然没有意义。支付$$$。 在繁文缛节中,嵌套绝对有意义。 我希望你永远不必用 Java 编写模拟器。听起来虚拟机中的虚拟机会让您大吃一惊。 :) @bzlm:我的回答与用 Java 编写模拟器无关。这很明显也很容易。我的回答是,为什么还要在另一个 VM 下运行 VM?有什么意义?以上是关于在 VMware 中运行 VMware?的主要内容,如果未能解决你的问题,请参考以下文章
我可以运行Vmware Workstation安装的vagrant机器吗? [关闭]