作者:ZDnet

        服务器虚拟化可以节约成本吗?这个问题似乎问得有些多余,现在几乎找不到哪篇文章会说服务器虚拟化不是数据中心成本节约的最佳策略。由此看来,服务器整合应该是虚拟化服务器的最大好处。
        对这个说法的论据支持也是显而易见的,估计大多数IT经理都不会对此有什么疑问。用一台物理服务器替代十台物理服务器似乎是所能想到成本节约的最佳策略——自从绿色IT盛行起来之后,连企业CEO都在谈论关于数据中心节能的话题。计算起来也十分简单:10匹马所需的干草是1匹马的10倍,每位CEO都能理解。那么挑战服务器虚拟化带来成本节约的说法还有意义吗?答案是肯定的。
    计算服务器虚拟化成本的时候需要考虑四个因素:硬件成本、能源成本、软件成本和人力成本。这里我们将讨论的是第一个因素:硬件成本,其他因素我们将在以后的文章中详细讲到。
    有人说10台服务器的成本一定高于一台服务器的成本,这个说法并不总是正确的。我们可以拿汽车做类比:10辆大众汽车的总价格还不及一部法拉利汽车,这种情况同样适用于服务器虚拟化。
    一台服务器的价格与它的计算能力是不成比例的。高端服务器不成比例的程度更甚于普通服务器。这其中有很多原因,例如,一个4GB RAM模块的价格高于两个2GB RAM模块。而且,一台托管了10个虚拟服务器的物理服务器显然需要很多RAM。这种情况同样适用于服务器中的其他组件,例如CPU和存储等。
    另外一个主要原因就是服务器厂商生产出更多小型服务器而不是高端服务器,这就推动了高端服务器价格的增长。这意味着,如果你用一台足够强大的服务器就可以替代十台服务器的话,却并不一定会带来硬件成本的节约。
    那么为什么许多IT部门在应用服务器虚拟化的时候会节约成本,这是因为他们之前的物理服务器已经非常庞大了。这当然是服务器虚拟化的一个有点,而且很容易调节硬件利用率。然而,之所以经常有人说他们能够大幅节约成本,是因为他们之前根本就不关注服务器利用率问题。
    实际上,将每个后端应用托管都托管在一台服务器上是完全没有必要的,这可能导致不同服务器应用之间的冲突,这同时也证明了服务器虚拟化可能存在一些问题,因为它增加了新一层的复杂性。除此之外,我们不要忘记一点,性能是基于虚拟化开支的,这提高了服务器硬件所需的投资。
    服务器虚拟化是否能够带来成本节约以及节约多少取决于自身的服务器架构。如果你已经通过其他方法完成了硬件利用率的优化,那么服务器虚拟化可能在削减硬件成本方法的成效就不那么明显了。有一点可以肯定:不要轻易相信服务器虚拟化厂商提供的成本计算工具,实际上是不可能仅仅通过一个通用的公式就计算出这些成本的。
    还有其他一些你需要考虑的因素。为什么像英特尔或者IBM这样的硬件厂商积极推行服务器虚拟化呢?为什么这项技术没有导致他们的灭亡呢(也就是说,如果每个人都可以通过采用服务器虚拟化大幅削减硬件成本的话,那么服务器厂商可能会陷入严重的经济困境了)?从某种程度上来说,厂商希望能够卖出更多高价的高端服务器。就好比,你只卖出一辆法拉利就可以赚到更多的钱,即使十辆大众汽车的价钱和这辆法拉利是接近的。
    除此之外,即使你可以通过将十台服务器整合成为一台服务器削减成本的话,那么同时你也可能降低了冗余性。如果主机因为硬件故障宕机的话,一切工作都不得不中断。是的,你可以增加第二台或者第三台服务器,但这再次增加了硬件成本,同时增加新一层的复杂性。如果你将十台普通服务器整合成本两台或者三台高端服务器的话,就更难以节约成本了。
 
        上一篇文章中我们谈论的话题是服务器虚拟化的成本。那么什么是“干草理论”:10匹马所需的干草是1匹马的10倍?10台服务器消耗的能源总是比一台服务器少吗?我并不这么认为。消耗掉多少干草或者能源都不仅仅取决于承担某项工作的工作者数量。
        我想,一位身体肥胖的相扑摔跤手的饭量可能是一位芭蕾舞演员的10倍。但是10位芭蕾舞演员却是有可能打败一位相扑摔跤手的。能源消耗量适合必须完成的工作量有关系的。因此,如果一台高端服务器必须完成10台普通服务器的工作量的话,显然它需要的能源高于任何一台普通服务器。
        当然,大多数节能提倡者意识到了这一点。他们的观点就是服务器在工作时候的能耗量高于空闲时候的能耗量。因为一台运行了10个虚拟服务器的高端服务器很少有空闲时间,所有它的能源效率更高一些。这个理论当然就是正确的,如果假设10台普通服务器运行着大量工作负载的话,因此他们消耗能量却没有完成有价值的工作。
        然而,这里还要考虑到其他因素。一台服务器消耗的大部分电能都转化成了热量,这些热量必须扩散出去。问题是,热量在小面积内的扩散要比在大面积的扩散更难。这就是为什么近几年计算机产品中的散热风扇做得越来越大。我清楚地记得,我买的第一台计算机甚至根本没有安装风扇。这里还有一点,风扇也是需要消耗能源的。一台计算机CPU的功率越大,那么你就需要越多的能源来排放热量。显然,一台高端服务器的容量小于10台普通服务器,也就是说,对这一台服务器的冷却要比对配置了大型风扇的多台服务器来讲需要更多的能源。
        即使高端服务器很好地配置了风扇、CPU、电力供应以及硬盘等,但是这台高端服务器的温度仍然高于那10台普 通服务器。这就引出了第二个理论:如果你以更高温度运行系统的话,那么你就会浪费掉更多的热能。想象一下,一名赛跑选手要在10秒内跑完100米,即使他受过良好的训练,但是跑完仍然是大汗淋漓。在想象一下,10个普通人一起在10秒内走10米,他们加起来是走了100米,但是他们并没有流汗,不会像赛跑运动员那样感到精疲力尽。
        也许这种比喻有些不恰当,但是你可以明白一个道理了:你不可能仅仅通过削减工人的数量来节约能源。我们还要考虑其他一些因素。如果你要用一台新的高端服务器取代十台普通服务器的话,事后你可能无法测量出能耗减少量。或许5台没有配置虚拟化技术的普通服务器也可以完成相同的任务?这5台普通服务器能耗量更低吗?
        你是否能够通过虚拟化技术节约能源成本、以及节约多少,这些都要取决于你自身的环境。我不认为会存在一个通用的模式来帮助你计算出这个数字。就我个人来看,我们可以通过某些虚拟服务器应用来节省能源。但是,我认为这些好处和优点通常都被那些希望卖出高价高端服务器或者虚拟化软件的厂商夸大了。
当谈到服务器虚拟化的成本,还有其他一些因素超过了能源节约。这就是我们下一篇将要谈到的话题。