在過(guò)去的一年半,虛擬服務(wù)器造成一股流行,顧客往往要求產(chǎn)品具備廠商所吹噓的那些功能。然而這個(gè)技術(shù)并不是什么新東西,任何了解Unix跟大型服務(wù)器的人都知道–大型服務(wù)器在1970年代時(shí)就可以使用虛擬磁區(qū)。那么,到底這股流行是怎么出現(xiàn)的?
虛擬程序的含義十分廣泛,包含輸出/輸出(I/O)、存儲(chǔ)設(shè)備已經(jīng)其他部分的虛擬化技術(shù),然而最近大家的焦點(diǎn)都放在服務(wù)器的虛擬化–即可以在一臺(tái)硬件上執(zhí)行多套操作系統(tǒng)的能力。
雖然這樣的技術(shù)老實(shí)說(shuō)也是十分有歷史,但在x86平臺(tái)上使用1998年出現(xiàn)的VMware軟件來(lái)進(jìn)行服務(wù)器虛擬—這個(gè)軟件目前主宰了x86平臺(tái)的虛擬市場(chǎng)—卻是相對(duì)來(lái)說(shuō)較新的。
在過(guò)去的幾個(gè)月,虛擬化在x86的世界里便蔚為一股風(fēng)潮。這是因?yàn)閹讉€(gè)不同的因素–服務(wù)器汰換的周期快要來(lái)臨、市面上出現(xiàn)更多更成熟的虛擬服務(wù)器管理工具、電腦服務(wù)器多了一些新功能的支持,如同步多緒(SMP)功能可以讓兩個(gè)以外的處理器連到一個(gè)內(nèi)存,以及市場(chǎng)逐漸認(rèn)識(shí)到目前虛擬技術(shù)的良好運(yùn)作。
也因此,VMware公司(在2003年底被EMC收購(gòu))最近突破了每季1億美元營(yíng)收的重要關(guān)卡,同時(shí)營(yíng)收也逐年成倍數(shù)增長(zhǎng)。在二月,根據(jù)Forrester對(duì)1221家千名員工以上的北美公司所做的調(diào)查,發(fā)現(xiàn)其中有41%的公司已經(jīng)在使用虛擬技術(shù)或已經(jīng)在進(jìn)行先期測(cè)試;同時(shí)有60%的公司表示在接下來(lái)的12個(gè)月中會(huì)對(duì)虛擬技術(shù)進(jìn)行投資。43%的公司表示在使用x86平臺(tái)的虛擬技術(shù)時(shí)最??紤]VMware,而其競(jìng)爭(zhēng)對(duì)手Windows Virtual Server只有24% 。
然而VMware似乎無(wú)法獨(dú)占這個(gè)金雞母太久,因?yàn)槲④浉渌径际址e極地推出其他產(chǎn)品。微軟的Virtual Server可能是其中最不成熟的軟件,但它進(jìn)步速度非常快速,該公司也總是會(huì)四處分送他們的軟件。同時(shí)在數(shù)月后推出Longhorn Server時(shí),虛擬化技術(shù)也會(huì)被內(nèi)建到該操作系統(tǒng)中。
在另一方面,開(kāi)放源代碼的虛擬化技術(shù)也在慢慢進(jìn)行,也有不少?gòu)S商在暗中角力。Xen這個(gè)軟件使用跟微軟以及VMware不同的技術(shù),同時(shí)已經(jīng)被內(nèi)建到Red Hat、Novell跟其他公司最新的Linux版本中,在幾個(gè)月之內(nèi)也會(huì)得到Solaris平臺(tái)的支持。
更彈性的方法
所謂的虛擬化,其實(shí)就是把電腦的資源,如運(yùn)算能力、存儲(chǔ)空間以及應(yīng)用程序抽離出來(lái),讓資源的使用方式更具效率。VMware是x86平臺(tái)虛擬化技術(shù)的先驅(qū),甚至連其競(jìng)爭(zhēng)對(duì)手都會(huì)同意,VMware是目前x86虛擬器市場(chǎng)的帶動(dòng)者。
“VMware發(fā)掘了服務(wù)器虛擬這個(gè)市場(chǎng)。他們?yōu)榇蠹医榻B了這個(gè)市場(chǎng)的存在,”XenSource的首席技術(shù)官Simon Crosby這樣表示。Crosby創(chuàng)造了Xen技術(shù),同時(shí)也成立了XenSource這家公司。
在操作系統(tǒng)的虛擬化這個(gè)領(lǐng)域,也有數(shù)種不同的方法,可以依他們虛擬的層級(jí)來(lái)分類(lèi)。以PowerPC版的軟件Virtual PC為例,是將硬件平臺(tái)完整地用軟件來(lái)模擬,可以讓你執(zhí)行給別的硬件來(lái)使用的操作系統(tǒng)。但這樣會(huì)對(duì)性能造成相當(dāng)大的影響。
相反地,VMware跟微軟的Virtual Server只虛擬必要的硬件,以讓多個(gè)操作系統(tǒng)可以分別執(zhí)行,但只有為這個(gè)硬件設(shè)計(jì)的操作系統(tǒng)才能順利執(zhí)行。然而這樣依舊會(huì)造成相當(dāng)?shù)奶幚碡?fù)荷。
而其它像Solaris Containers、BSD jail以及SWsoft的Virtuozzo,都只對(duì)操作系統(tǒng)層級(jí)來(lái)進(jìn)行模擬,可以讓處理的負(fù)荷大幅降低。在一臺(tái)實(shí)體的電腦上,只執(zhí)行一個(gè)操作系統(tǒng),而所有的程序都使用同樣的操作系統(tǒng)核心來(lái)運(yùn)算。只要能合于這個(gè)限制,就可以得到低負(fù)荷、高性能以及高延展性(潛在來(lái)說(shuō)一臺(tái)機(jī)器上可以執(zhí)行上百個(gè)不同的程序)等等優(yōu)點(diǎn)。
Xen也是使用稱(chēng)之為“平行虛擬”的類(lèi)似方法,提供硬件直接存取的API給各不同的操作系統(tǒng),而不是完整地模擬硬件。這代表所造成的負(fù)荷十分小,性能也會(huì)突飛猛進(jìn)。但這樣的技術(shù)牽涉到操作系統(tǒng)的修改。對(duì)開(kāi)放源代碼的操作系統(tǒng)來(lái)說(shuō)不是問(wèn)題,但在像Windows之類(lèi)的平臺(tái)上,就造成問(wèn)題了。
最近推出的支持虛擬技術(shù)的硬件–如英特爾的Virtualization Technology (VT)以及AMD的Secure Virtual Machine (SVM)–都可以讓W(xué)indows系統(tǒng)在不經(jīng)修改下,直接在平行虛擬的管理程序,比方Xen上面執(zhí)行。
吸引力何在?
所以到底虛擬技術(shù)的吸引力在哪里?我們先回到過(guò)去的1990年代,VMware的顧客開(kāi)始發(fā)現(xiàn)虛擬技術(shù)十分好用,可以在實(shí)際部署到產(chǎn)品之前,建立的一個(gè)特定的虛擬環(huán)境,測(cè)試一些應(yīng)用程序或軟件更新。
在2001年前后–因?yàn)轭A(yù)算削減,以及過(guò)去1990網(wǎng)絡(luò)泡沫年代充斥過(guò)多的服務(wù)器–使用者開(kāi)始認(rèn)真考慮公司服務(wù)器的合并動(dòng)作(Sun估計(jì),大多數(shù)公司的服務(wù)器只使用了15%的性能)。主要的想法就是讓亂七八糟的服務(wù)器配置變得精簡(jiǎn),同時(shí)借由將數(shù)個(gè)獨(dú)立的服務(wù)器放到同個(gè)服務(wù)器,更有效地使用電腦的運(yùn)算性能。這也是所謂“效用計(jì)算”這個(gè)大趨勢(shì)里的一部分。所謂“效用計(jì)算”是指將大量不同的服務(wù)器串聯(lián)起來(lái),變成一個(gè)單一的資源庫(kù),然后使用虛擬技術(shù)來(lái)依照需求分割。
“基本上,隨著主從架構(gòu)的誕生,我們已經(jīng)漸漸接近復(fù)雜度的臨界點(diǎn),”O(jiān)vum的分析師Gary Barnett表示“因?yàn)榧夹g(shù)的過(guò)度演進(jìn),自從過(guò)了千禧年后,為不同的技術(shù)平臺(tái)購(gòu)買(mǎi)各種小容量的存儲(chǔ)空間便快把人們累個(gè)半死。大家總是希望這件事可以快點(diǎn)被控制下來(lái),而虛擬技術(shù)可以不用去管分割硬盤(pán)的事,可以說(shuō)是解決這個(gè)問(wèn)題的關(guān)鍵之一?!?/P>
先進(jìn)的技術(shù)
根據(jù)VMware的說(shuō)法,他們的產(chǎn)品已經(jīng)從簡(jiǎn)單的硬盤(pán)集合演進(jìn)到所謂的硬件虛擬化。這包含了各種不同的進(jìn)階功能,VMware也表示各種功能都吸引了可觀的顧客。
其中一個(gè)功能是災(zāi)難復(fù)原,其精髓就是當(dāng)硬件故障時(shí),可以在幾乎沒(méi)有中斷的情況下,自動(dòng)把執(zhí)行的服務(wù)器從一臺(tái)轉(zhuǎn)到另一臺(tái)上。而現(xiàn)今大部分的虛擬技術(shù)都提供可以在不中斷服務(wù)的情況下,自動(dòng)執(zhí)行此功能的軟件。
虛擬化同時(shí)也讓備份信息變得容易許多;VMware表示他們的某個(gè)客戶(hù),可以在二十分鐘之內(nèi)為兩百臺(tái)虛擬服務(wù)器提供備份。該公司同時(shí)表示,有三分之二的顧客都是因?yàn)闉?zāi)難復(fù)原這個(gè)功能使用虛擬技術(shù)。
“在過(guò)去,因?yàn)橛布?、操作系統(tǒng)跟應(yīng)用程序緊密結(jié)合,所以當(dāng)你要做災(zāi)難復(fù)原時(shí),備援系統(tǒng)必須要有完全一樣的硬件、應(yīng)用程序跟其他部分,還要讓上面的信息完全同步,”VMware的信息管理與個(gè)人平臺(tái)產(chǎn)品副總裁Raghu Raghuram表示:“若使用虛擬系統(tǒng),你便可以帶著那個(gè)虛擬文件,利用存取網(wǎng)絡(luò)、磁帶,或其它的存儲(chǔ)設(shè)備,把它傳到另個(gè)硬件上,然后立即開(kāi)機(jī)執(zhí)行?!?/P>
能夠按照意愿把虛擬服務(wù)器從一臺(tái)電腦轉(zhuǎn)換到另一臺(tái)這個(gè)功能,讓硬件維護(hù)跟平衡負(fù)載可以更容易進(jìn)行。VMware表示有超過(guò)一半的客戶(hù)都使用一個(gè)提供該功能,名叫VMotion的工具。其他的進(jìn)階應(yīng)用,像是應(yīng)用程序的快速配置、操作系統(tǒng)模擬也吸引了許多VMware的使用者。許多公司喜歡操作系統(tǒng)模擬功能所提供的安全性。