The*_*ner 32 virtualization hyper-v vmware-esxi windows-server-2012
我在 ServerFault 上发现了一些暗示这个主题的问题,虽然它可能有点基于意见,但我认为它可以根据以下内容归入“良好的主观”类别:
建设性主观题:
* tend to have long, not short, answers
* have a constructive, fair, and impartial tone
* invite sharing experiences over opinions
* insist that opinion be backed up with facts and references
* are more than just mindless social fun
Run Code Online (Sandbox Code Playgroud)
就这样吧。
我正在帮助一位正在更换运行 Windows 2003 的旧物理服务器的系统管理员同事,他希望不仅更换硬件,而且在此过程中“升级”到 2012 R2。
在我们关于他的替换硬件的讨论中,我们讨论了他安装 ESXi,然后将 2012 年“服务器”设为虚拟机并将旧应用程序/文件/角色从 2003 年服务器迁移到虚拟机而不是非虚拟机安装的可能性在新硬件上。
他认为在接下来的几年里,任何时候都不需要将其他任何东西移动到虚拟机或创建额外的虚拟机,因此最终这将是运行正常安装的新硬件或在 ESXi 上运行单个虚拟机的新硬件。
我自己的经验仍然倾向于虚拟机,除了可能会出现创建额外虚拟机的可能性之外,没有真正令人信服的理由这样做。但是现在虚拟机管理程序有额外的开销和管理方面,尽管我使用 VM 体验了更好的管理功能和报告功能。
因此,在希望这可以留在“良好的主观”类别以在未来帮助他人的前提下,您需要哪些经验/事实/参考/建设性答案来帮助支持任一结果(虚拟化或不是单个“服务器”) ?
Hop*_*00b 27
在一般情况下,将独立服务器放在虚拟机管理程序上的优势是面向未来。它使未来的扩展或升级更容易、更快,因此更便宜。主要的缺点是额外的复杂性和成本(不一定是经济上的,但从工时和时间的角度来看)。
所以,为了做出决定,我问自己三个问题(通常更喜欢将服务器放在管理程序上,因为它的价值)。
eww*_*ite 16
我认为被虚拟化的操作系统是一个重要因素,还有性能要求和扩展/增长的潜力。今天的服务器对于我们使用的应用程序和操作系统来说往往过于强大。根据我的经验,大多数标准 Windows 系统无法有效利用现代双插槽服务器中的可用资源。对于 Linux,我利用了一些细粒度的资源管理工具 ( cgroups ) 和容器 ( LXC ) 来更好地利用物理系统。但市场绝对是面向虚拟化优化的硬件。
也就是说,在某些情况下,我已经虚拟化了单个系统而不是裸机安装。常见的原因有:
许可- 基于刚性核心、插槽或内存限制(不考虑现代计算的趋势)许可的应用程序数量正在减少。请参阅:在 bios 中禁用 CPU 内核?
可移植性- 虚拟化服务器从硬件中抽象出 VM。这使得平台更改的破坏性较小,并允许 VM 引用标准的虚拟化设备/组件。使用这种方法,我已经能够使破旧(但至关重要)的 Windows 2000 系统保持生命支持。
未来扩展- 我现在有一个客户,他有一个在 2001 时代硬件上运行的 Windows 2003 域控制器。我正在为他们构建一个新的单主机 ESXi 系统,该系统将在此期间容纳一个 2012 R2 新域控制器。但更多的虚拟机将随之而来。在这种配置中,我可以提供可靠的资源扩展,而无需额外的硬件成本。
使用单个主机/单个 VM 执行此操作的缺点是管理。我是从 VMware 的角度来看的,但在过去,ESXi 对这种安排更友好一些。今天,vSphere Web Client 的要求和对基本功能的限制访问,使得运行单主机(和单虚拟机)解决方案的吸引力降低。
其他考虑因素是硬件监控功能受损,以及常见外部外围设备(USB 设备/磁带驱动器/备份/ UPS 解决方案)的复杂性。今天的虚拟机管理程序确实希望成为更大的管理套件的一部分。
Saf*_*ado 10
虚拟化单个服务器有几个好处。首先想到的几件事是
我认为其中最重要的是快照功能。我们公司到处都在使用 VMWare,所以对我们来说,当需要更多 VM 时,让服务器“准备好”是有意义的。
Sve*_*ven 10
这不是一个很长的答案,但无论如何:
对单个服务器使用虚拟机管理程序的最令人信服的理由,尤其是像 Windows Server 这样的东西,是您拥有生产操作系统的完整硬件抽象,并且可以在需要时将其移动到全新的服务器硬件而不会出现任何问题。我认为这是一个真正有价值的功能,它远远超过了在后台运行实际不必要的虚拟机管理程序的缺点。
我不会像其他人那样在这里提供详细的答案,所以我只想说,这些天我发现越来越难证明在裸机上安装服务器操作系统而不是安装虚拟机管理程序(您的选择)并虚拟化工作负载。在我看来,这样做的好处是:
成本效益。从长远来看,如果我需要部署额外的工作负载,我不必为这些额外的工作负载购买更多硬件。在某些情况下,使用 Hyper-V 时,我什至可以节省许可成本。
易于部署和重新部署。
易于实施高可用性和故障转移。
可移植性。如果我需要停用或外包当前主机,我可能几乎可以将虚拟机移动到任何地方。
未来证明。您的系统管理员同事目前可能看不到对基于虚拟机管理程序的基础架构的任何未来需求,但我的猜测是在 12 到 24 个月内他会并且他会很高兴他选择走虚拟化路线,如果他确实选择了这条路线.
灾难恢复。我可以在几分钟内备份整个 VM,然后将其还原或复制到另一台主机。
等等等等...
以下是我认为 VM 更好的几个原因:
内置“KVM over IP”(某种形式) - 您可以在控制台上远程访问您的服务器,而无需 KVM over IP。有时您只是不想通过 RDP 执行某些操作并需要控制台访问权限。有了虚拟机,您就可以启动所选的管理工具(XenCenter、vSphere Client 等),然后您就在虚拟机的控制台上。
使用虚拟机(对于非虚拟机服务器,使用我的 KVM over IP),我不再需要在寒冷的服务器机房里待上几个小时。
迁移到新硬件 - 除了操作系统升级之外,为了安装新硬件,您必须迁移系统、移动设备等。使用 VM,您(通常)不需要做任何事情。您升级硬件,将 VM 文件放在新硬件上并启动。
虽然人们无法预见未来的 VM,但“如果您构建它,它们就会出现”。你会想要启动一个新的虚拟机来测试一些东西并尝试新的东西等等。还有更多的可能性。
虚拟机使您能够使用快照进行恢复、获取它的副本、制作虚拟机的克隆(在运行时)然后启动它 - 无论是在将其投入使用之前进行测试,还是仅仅拥有一秒钟的第一的。您可以使用 VM 快照等来做很多事情。
冗余 - 如果您投入第二台 VM 服务器,您可以拥有冗余硬件,虽然我不了解当前的 VMWare 许可方案,但 XenServer 现在显然已将 XenMotion 包含在免费包中,因此成本开销可能不适用。
我不使用虚拟机的原因:
开销 - 几乎没有,但显然有一些开销。
管理更复杂 - 稍微复杂一点,但很容易学习。如果您不打算使用大型虚拟化环境,则培训是微不足道的。
我来晚了,感觉人们已经提出了我想要提出的一些观点,但我将简要回顾一下:
但是,尚未有人提及并且可能应该提及的事情是:如果您所在的商店可能需要测试服务器,并且可能会通过获取备用桌面并安装服务器操作系统来解决该需求就其而言,能够为他们提供 VM 可能会更好地满足您和他们的需求。虚拟化新服务器可能是允许未来虚拟扩展的“原因”。(而且,坦率地说,如果你不在那种商店里,你可能已经有了虚拟化。)
当然,并非一切都可以虚拟化。我通过向他们描述关闭 TCP Segment Offloading 需要做什么来为包含 PXE 的管理软件的物理硬件打分(PXE 在 TSO 开启的情况下像一只单腿狗一样运行,但他们不得不关闭它对于整个虚拟 VLAN,他们不愿意这样做)。因此,如果新服务器足够专业以至于不合适,那么,没关系。
但是,除非有这种类型的专业化,否则现在或将来摆脱一堆运行服务器操作系统的(可能不受管理的)PC 级机器对我来说是值得的。