虚拟
技术最近造成一股潮流,然而它并不是一个多新的观念,也不是一些厂商所宣称的万灵丹。在过去的一年半,虚拟
4 g7 ]1 O7 g3 x7 \0 g& e3 W! \服务器
' A w; H2 D2 [& B8 H造成一股流行,顾客往往要求产品具备厂商所吹嘘的那些
功能。然而这个技术并不是什么新东西,任何了解
Unix跟大型
2 j9 D6 I0 b( A# a5 C0 U. o服务器+ f6 ?4 l! }: g' b+ S, i$ O
的人都知道--大型
6 y7 M* y3 x2 @" s0 z服务器7 r! e& p2 } |' ~
在1970年代时就可以使用虚拟磁区。那么,到底这股流行是怎么出现的?虚拟
程序的含义十分广泛,包含输出/输出(I/O)、存储设备已经其他部分的虚拟化技术,然而最近大家的焦点都放在
_' C5 c2 X4 E" l服务器
0 n! l/ I: p2 v0 [5 r' \9 N8 H4 @的虚拟化--即可以在一台
硬件上执行多套操作
系统的能力。虽然这样的技术老实说也是十分有历史,但在x86平台上使用1998年出现的VMware
软件来进行
& w% q, d1 m% S; l- K' \, b9 A* l
服务器
# q G4 S7 i% O1 C6 n虚拟---这个软件目前主宰了x86平台的虚拟市场---却是相对来说较新的。在过去的几个月,虚拟化在x86的世界里便蔚为一股风潮。这是因为几个不同的因素--
" N- B8 _/ ?; O8 U3 j2 G' Y服务器
/ z+ q9 f* j) {4 P汰换的
周期快要来临、市面上出现更多更成熟的虚拟
- b @. L. g R- M2 N* l
服务器
! z5 r2 N6 q# c+ \ \管理工具、
电脑; X6 l; [9 g% D
服务器
. F9 Y7 Y+ H; B. X: g多了一些新功能的支持,如同步多绪(SMP)功能可以让两个以外的
处理器连到一个
内存,以及市场逐渐认识到目前虚拟技术的良好运作。也因此,VMware公司(在2003年底被EMC收购)最近突破了每季1亿美元营收的重要关卡,同时营收也逐年成倍数增长。在二月,根据Forrester对1221家千名员工以上的北美公司所做的调查,发现其中有41%的公司已经在使用虚拟技术或已经在进行先期
测试;同时有60%的公司表示在接下来的12个月中会对虚拟技术进行投资。43%的公司表示在使用x86平台的虚拟技术时最常考虑VMware,而其竞争对手
WindowsVirtual
Server只有24%。然而VMware似乎无法独占这个金鸡母太久,因为
微软跟其他公司都十分积极地推出其他产品。微软的VirtualServer可能是其中最不成熟的软件,但它进步
速度非常快速,该公司也总是会四处分送他们的软件。同时在数月后推出LonghornServer时,虚拟化技术也会被内建到该
操作系统中。在另一方面,开放
源代码的虚拟化技术也在慢慢进行,也有不少厂商在暗中角力。Xen这个软件使用跟微软以及VMware不同的技术,同时已经被内建到RedHat、Novell跟其他公司最新的
Linux版本中,在几个月之内也会得到
Solaris平台的支持。更弹性的方法所谓的虚拟化,其实就是把电脑的资源,如运算能力、存储
空间以及应用程序抽离出来,让资源的使用方式更具效率。VMware是x86平台虚拟化技术的先驱,甚至连其竞争对手都会同意,VMware是目前x86虚拟器市场的带动者。“VMware发掘了
+ o, B" E Y* M! i6 H4 K2 |
服务器: W; k U/ ]. w
虚拟这个市场。他们为大家介绍了这个市场的存在,”XenSource的首席技术官SimonCrosby这样表示。Crosby创造了Xen技术,同时也成立了XenSource这家公司。在操作系统的虚拟化这个领域,也有数种不同的方法,可以依他们虚拟的层级来分
类。以PowerPC版的软件VirtualPC为例,是将硬件平台完整地用软件来模拟,可以让你执行给别的硬件来使用的操作系统。但这样会对性能造成相当大的影响。相反地,VMware跟微软的VirtualServer只虚拟必要的硬件,以让多个操作系统可以分别执行,但只有为这个硬件设计的操作系统才能顺利执行。然而这样依旧会造成相当的处理负荷。而其它像SolarisContainers、BSDjail以及SWsoft的Virtuozzo,都只对操作系统层级来进行模拟,可以让处理的负荷大幅降低。在一台实体的电脑上,只执行一个操作系统,而所有的程序都使用同样的操作系统核心来运算。只要能合于这个限制,就可以得到低负荷、高性能以及高延展性(潜在来说一台
机器上可以执行上百个不同的程序)等等优点。Xen也是使用称之为“平行虚拟”的类似方法,提供硬件直接存取的API给各不同的操作系统,而不是完整地模拟硬件。这代表所造成的负荷十分小,性能也会突飞猛进。但这样的技术牵涉到操作系统的修改。对
开放源代码的操作系统来说不是问题,但在像Windows之类的平台上,就造成问题了。最近推出的支持虚拟技术的硬件--如
英特尔的VirtualizationTechnology(VT)以及AMD的SecureVirtualMachine(SVM)--都可以让Windows系统在不经修改下,直接在平行虚拟的管理程序,比方Xen上面执行。吸引力何在?所以到底虚拟技术的吸引力在哪里?我们先回到过去的1990年代,VMware的顾客开始发现虚拟技术十分好用,可以在实际部署到产品之前,建立的一个特定的虚拟
环境,测试一些应用程序或软件更新。在2001年前后--因为预算削减,以及过去1990
网络泡沫年代充斥过多的
% u* C5 r7 Q/ h3 W; P' @5 t! v服务器
' q8 ~4 i8 c! t% I& x. M--使用者开始认真考虑公司
/ {1 e H# D& W+ X4 P; L+ z, E服务器# |8 N) w, f/ q9 _* F
的合并
动作(Sun估计,大多数公司的
- d$ ] f1 G1 b1 y, V
服务器6 V0 T! F) Q. d4 w# Y( U7 o4 D
只使用了15%的性能)。主要的想法就是让乱七八糟的
- q. s2 _6 f0 A& k" r7 h# E服务器
( F5 U t+ `' G( ]( G配置变得精简,同时借由将数个独立的
; h1 f6 m2 b O9 R/ Y, k5 N
服务器( {. @. x0 p8 f/ m& b' X
放到同个
U3 E/ Q$ M9 K/ z2 ^3 M服务器, o7 g* [% l- z' K: ~
,更有效地使用电脑的运算性能。这也是所谓“效用计算”这个大趋势里的一部分。所谓“效用计算”是指将大量不同的
+ c" @7 b+ a3 y2 P- H' a2 h/ n e* b服务器# t: Q5 ?$ Z& Q. Y9 F% b
串联起来,变成一个单一的资源库,然后使用虚拟技术来依照
需求分割。“基本上,随着主从架构的诞生,我们已经渐渐接近复杂度的临界点,”Ovum的分析师GaryBarnett表示“因为技术的过度演进,自从过了千禧年后,为不同的技术平台购买各种小容量的存储空间便快把人们累个半死。大家总是希望这件事可以快点被控制下来,而虚拟技术可以不用去管分割
硬盘的事,可以说是解决这个问题的关键之一。”先进的技术根据VMware的说法,他们的产品已经从简单的硬盘集合演进到所谓的硬件虚拟化。这包含了各种不同的进阶功能,VMware也表示各种功能都吸引了可观的顾客。其中一个功能是灾难复原,其精髓就是当硬件
故障时,可以在几乎没有中断的情况下,自动把执行的
. n2 a5 }2 Q( Y& o. U. Q服务器
1 ?: m9 Z7 \" ?' |7 @* Q8 K: A从一台转到另一台上。而现今大部分的虚拟技术都提供可以在不中断服务的情况下,自动执行此功能的软件。虚拟化同时也让备份
信息变得容易许多;VMware表示他们的某个客户,可以在二十分钟之内为两百台虚拟
, i9 Q* [2 F. T: f
服务器/ i ~; z7 [. i7 T
提供备份。该公司同时表示,有三分之二的顾客都是因为灾难复原这个功能使用虚拟技术。“在过去,因为硬件、操作系统跟应用程序紧密结合,所以当你要做灾难复原时,备援系统必须要有完全一样的硬件、应用程序跟其他部分,还要让上面的信息完全同步,”VMware的信息管理与个人平台产品副总裁RaghuRaghuram表示:“若使用虚拟系统,你便可以带着那个虚拟文件,利用存取网络、磁带,或其它的存储设备,把它传到另个硬件上,然后立即开机执行。”能够按照意愿把虚拟
0 N( c! R1 O4 L9 v, r s; B2 [服务器
5 U( K2 c" ~/ X/ q1 P2 `/ R从一台电脑转换到另一台这个功能,让硬件维护跟平衡负载可以更容易进行。VMware表示有超过一半的客户都使用一个提供该功能,名叫VMotion的工具。其他的进阶应用,像是应用程序的快速配置、操作系统模拟也吸引了许多VMware的使用者。许多公司喜欢操作系统模拟功能所提供的
安全性。