我从StackOverflow中移动了这个问题,因为在这里它更有意义
我们决定为我们的一些开发服务器提供虚拟化解决scheme。 如果我们购买了单独的物理服务器,我就知道硬件规格会是什么样子,但我不知道如何将这些信息整合到通用虚拟服务器的规范中。
我直观地知道规格不是叠加的 – 我不应该把每台机器的RAM要求加起来,以获得虚拟服务器所需的RAM。 我不能真正把它们当作并行系统,因为不pipe虚拟化软件有多好,它都不能抽象出两台试图同时挂住CPU的服务器。
所以我的问题是,在虚拟化系统的硬件需求估计中,有没有一种标准的方法来估计虚拟化系统的硬件需求? 对于VMWare / MS虚拟服务器开销是否存在+ C常量(如果是这样,C是什么?)?
虚拟服务器利用了大多数服务器不能在任何时间长度运行的事实,并且可以共享cpu周期/内存。 因此,这取决于虚拟机的繁忙程度。
这也取决于你正在使用的虚拟环境,以及它可以共享内存的能力。 (我似乎记得,当我用XEN进行实验时,根本没有共享内存 – 但我认为现在已经改变了)。
一个开发环境是一个完美的地方让你的虚拟环境变得潮湿,如果需要的话,在5分钟内“创build一个新的服务器”是非常方便的(甚至允许你临时过度分配你的资源在捏)。
举例来说,我们可以在5台物理服务器上使用VMWare基础架构托pipe大约100台虚拟机。 这些物理机器中的每一个都有4个双核Xeon 2.6Ghz CPU,16Gb Ram和8-Gigabit nics。 (所以每个平均20个虚拟机)。 我们发现我们最大的限制是可用内存的数量。
我可以说,现在在虚拟环境中工作了好几年,我不想回去。
希望这可以帮助。
跨如何改进Hyper-V性能 :
从我的经验来看,磁盘I / O是最大的瓶颈。 经过大量的实验,我们为标准的Hyper-V服务器解决了这个问题:
我们可以舒适地在每个盒子上运行6-10个客人,做类似的事情(CI,开发服务器,负载testing等)。