我们主要在我的公司Hyper-V上使用虚拟机,但我们也使用了ESXi和vCenter。 除了能够将多台物理机整合到一台服务器上的传统优势之外,我们还发现了pipe理和configuration极其引人注目的特性。 高可用性和灾难恢复的重要性远没有那么重要。
我们经常需要在一台机器上安装我们的应用程序,因为硬件可能会有一些不同。 这一次的供应商是惠普,下次可能是戴尔。 刀片服务器与否,等等。这个应用程序安装起来很复杂,有时涉及几台(多达30台)机器。 能够安装基础虚拟机pipe理程序,复制一些文件,并启动并运行是非常好的。 这为我们节省了大量的时间。
在虚拟机上运行也有其缺点。 这是一个更深层次的东西。 pipe理员可能不熟悉他们。 VMware的许可模式似乎惩罚了拥有大量服务器的公司,但是每台服务器只有一两个虚拟机(pipe理工具非常昂贵)。 虚拟机pipe理程序通常会限制对我们的应用程序非常重要的虚拟机。 由于我们的应用程序将使用任何CPU能力,Hyper-V的4个CPU内核的限制让我们感到非常恼火。 虽然这种configuration方式几乎总是胜出,因为我们是一个开发商店,并且不断为自己和客户build立和重build服务器。
所以我的一般问题是:如果你至less有select硬件的权力,并且正在使用基于Windows的操作系统,那么你应该怎么做才能在不采用虚拟化的情况下尽可能地减less类似的机器呢? 解决scheme的其他要点允许以最小的痛苦迁移到不同的硬件configuration。 或者这只是要求太多,我们应该继续与虚拟机?
那么,对于基于Windows的裸机,您应该使用AIK 。 至于在硬件之间迁移系统,您需要像Acronis或ShadowProtect这样的工具,允许将映像应用到不同的硬件,尤其是存储控制器。
我想不出任何不涉及其他许可证痛苦的东西,比如Altiris或者Ghost。 看看这样:机器 – 你拥有它们,还是你的客户? 如果是客户,那么你可以做的不多。 我的意思是,即使除了Ghost或VMware许可,Windows许可又如何? 如果您开始使用MSDN密钥服务器对硬件进行映像,那么每个人都将面临糟糕的一天。
最好的做法可能是编写一个非常聪明的安装程序,可以远程连接到其他机器,并远程安装其他组件。 我已经看到了AV和备份软件这样做 – 你启动服务器A上的MSI,你可以告诉它安装A上的主控,B上的报告服务器,CG上的代理。 当然,你需要开放的端口和有效的Windows信誉,但无论如何你会。
其他人已经提供了一些你所要求的function的好的指针。 我的感觉是,你会发现任何这些解决scheme比虚拟机器更多的工作和更复杂的。 显然你会想自己检查一下,但这是人们虚拟化的关键原因之一。