虛擬化是繼互聯(lián)網(wǎng)后,又一個(gè)對(duì)信息產(chǎn)業(yè)有著突破性意義的信息技術(shù)。隨著各行各業(yè)信息化建設(shè)工作的相繼展開,各企事業(yè)單位機(jī)房建設(shè)、運(yùn)行成本等信息化建設(shè)支出急劇增長(zhǎng),數(shù)據(jù)中心壓力以及硬件標(biāo)準(zhǔn)不斷攀升,急需采用先進(jìn)的科學(xué)技術(shù)來(lái)指導(dǎo)企事業(yè)單位的信息化建設(shè)工作,虛擬化技術(shù)由此應(yīng)運(yùn)而生。
“虛”是相對(duì)“實(shí)”而言的。在IT行業(yè),所謂的“實(shí)”,就是指看得見、摸得著的服務(wù)器、CPU等硬件產(chǎn)品以及部分可視化軟件等,用“虛”的軟件來(lái)代替或者模擬這些實(shí)際存在的東西就是虛擬化。
虛擬化的本質(zhì)就是把軟件變成可以按需遞交的動(dòng)態(tài)服務(wù),從而減輕IT管理的成本,提升IT服務(wù)的響應(yīng)速度。計(jì)算機(jī)系統(tǒng)的抽象層次通過(guò)分層組織,由底層的硬件和高層的軟件實(shí)現(xiàn),虛擬化就是由位于底層的軟件,通過(guò)向上一層軟件提供一個(gè)與它原來(lái)所運(yùn)行環(huán)境完全一致的接口的方法,抽象出一個(gè)虛擬的軟件或硬件接口,使高層的軟件可以直接運(yùn)行在虛擬的環(huán)境上。
虛擬化技術(shù)是一種將操作系統(tǒng)及其應(yīng)用從平臺(tái)硬件資源中互相分離出來(lái)的解決方案。虛擬化技術(shù)可以擴(kuò)大硬件的容量,簡(jiǎn)化軟件的重新配置過(guò)程,大幅度提高系統(tǒng)中資源和應(yīng)用程序的效率和可用性。虛擬化技術(shù)也被稱為虛擬機(jī)監(jiān)視器(virtualMachineMonitor,vMM),虛擬機(jī)監(jiān)視器可以提供一種完全模擬硬件的應(yīng)用環(huán)境,使客戶操作系統(tǒng)在使用虛擬機(jī)時(shí),認(rèn)為其自身直接運(yùn)行在硬件之上。虛擬機(jī)監(jiān)視器是一個(gè)軟件組件層用來(lái)分配資源,從而使多個(gè)虛擬機(jī)能夠同時(shí)利用所有資源。某種程度上說(shuō),虛擬機(jī)監(jiān)視器所起的作用就是提供一種抽象,讓多個(gè)虛擬實(shí)例運(yùn)行在一個(gè)硬件平臺(tái)上。虛擬機(jī)監(jiān)視器除了提供虛擬CPU的功能之外,還提供包括內(nèi)存管理等系統(tǒng)設(shè)備的虛擬化功能。

所謂的虛擬環(huán)境和真實(shí)環(huán)境,他們的區(qū)別主要體現(xiàn)在底層的不同實(shí)現(xiàn)機(jī)制。對(duì)于應(yīng)用程序來(lái)說(shuō),虛擬世界可呈現(xiàn)出完全不同于硬件平臺(tái)的環(huán)境,讓應(yīng)用程序產(chǎn)生錯(cuò)覺(jué)。簡(jiǎn)單來(lái)說(shuō)就是虛擬化把物理資源轉(zhuǎn)變?yōu)檫壿嬌峡梢怨芾淼馁Y源,以打破物理結(jié)構(gòu)之間的壁壘,所有的資源都透明地運(yùn)行在各種各樣的物理平臺(tái)上。同時(shí),資源的管理都將按邏輯方式進(jìn)行,實(shí)現(xiàn)資源的自動(dòng)化分配。用戶在信息化應(yīng)用過(guò)程中,感覺(jué)不到物理設(shè)備的差異,這是因?yàn)樘摂M化技術(shù)將此過(guò)程完美實(shí)現(xiàn),并使用戶按照自己日常的操作習(xí)慣,進(jìn)行所需信息資源的調(diào)用和交互。
當(dāng)前的虛擬化技術(shù)主要有:服務(wù)器虛擬化、CPU虛擬化、程序虛擬化、操作系統(tǒng)虛擬化、硬件虛擬化、完全虛擬、超虛擬化、桌面虛擬化、操作系統(tǒng)級(jí)的虛擬化等。
早在上世紀(jì)60年代,虛擬化技術(shù)在美國(guó)的計(jì)算機(jī)學(xué)術(shù)界開始萌芽。1959年,克里斯托弗發(fā)表了一篇名為《大型高速計(jì)算機(jī)中的時(shí)間共享》(Time Sharing in Large Fast Computers)的學(xué)術(shù)報(bào)告,他在文中提出了虛擬化的基本概念,這篇文章被認(rèn)為是虛擬化技術(shù)的最早論述。
最初,虛擬化技術(shù)只是應(yīng)用在大型主機(jī)上。大型機(jī)上的虛擬分區(qū)技術(shù)最早可以追溯到上世紀(jì)六、七十年代。上世紀(jì)60年代,IBM公司發(fā)明了一種操作系統(tǒng)虛擬機(jī)技術(shù),允許用戶在一臺(tái)主機(jī)上運(yùn)行多個(gè)操作系統(tǒng),讓用戶盡可能地充分利用昂貴的大型機(jī)資源。之后,IBM公司開發(fā)的“M44/44X”計(jì)算機(jī)項(xiàng)目,定義了虛擬內(nèi)存管理機(jī)制,用戶程序可以運(yùn)行在虛擬的內(nèi)存中,對(duì)于用戶來(lái)說(shuō)虛擬內(nèi)存就好像一個(gè)個(gè)“虛擬機(jī)”,為多個(gè)用戶的程序提供了獨(dú)立的運(yùn)行環(huán)境。
IBM提出的虛擬機(jī)技術(shù),使一批新產(chǎn)品不斷涌現(xiàn)了出來(lái),例如:IBM360/40、IBM360/67以及VM/370,這些機(jī)器在當(dāng)時(shí)都具有虛擬機(jī)功能。通過(guò)一種叫VMM(虛擬機(jī)監(jiān)控器)的技術(shù)在物理硬件之上生成很多可以運(yùn)行獨(dú)立操作系統(tǒng)軟件的虛擬機(jī)實(shí)例。
由于虛擬化技術(shù)在商業(yè)應(yīng)用上的優(yōu)勢(shì),RISC服務(wù)器與小型機(jī)成為了虛擬化技術(shù)第二代受益者。1999年,IBM公司在AS/400上提出了“邏輯分區(qū)(LPAR)”技術(shù)和新的高可用性集群解決方案。2002年,IBM 更進(jìn)一步,首次實(shí)現(xiàn)動(dòng)態(tài)邏輯分區(qū)(DLPAR),DLPAR允許在無(wú)需重啟系統(tǒng)的情況下,將包括處理器、內(nèi)存和其它組件在內(nèi)的系統(tǒng)資源分配給獨(dú)立的分區(qū)。這種在不中斷運(yùn)行的情況下進(jìn)行資源分配的能力不僅令系統(tǒng)管理變得更加輕松,而且能夠更好地使用資源從而幫助降低總擁有成本。
隨后,惠普、Sun公司等也跟隨IBM腳步,在自己的RISC服務(wù)器上提供了虛擬化技術(shù),但由于真正使用大型機(jī)和小型機(jī)的用戶數(shù)量有限,加之各家產(chǎn)品和技術(shù)之間互不兼容,虛擬化技術(shù)不太被公眾所關(guān)注。而隨著VMware創(chuàng)造性的將虛擬化引入x86平臺(tái),讓x86芯片可以同時(shí)運(yùn)行不同的幾種操作系統(tǒng),并且確保性能的穩(wěn)定性和安全性,虛擬化技術(shù)首次向人們展示了其應(yīng)用的廣闊前景。
此前,虛擬化技術(shù)在x86架構(gòu)上進(jìn)展緩慢的主要原因是x86架構(gòu)本身不適合進(jìn)行虛擬化,不過(guò)這個(gè)障礙已經(jīng)由英特爾、AMD改變,x86處理器的指令集得到解決。還有一個(gè)原因是x86處理器的性能不足,這一原因也由于x86處理器在性能上的飛速提高得到了解決。x86架構(gòu)的廣泛普及,使x86架構(gòu)上的虛擬化技術(shù)也得到了比以前更大的關(guān)注,由于x86平臺(tái)可以提供便宜的、高性能和高可靠的服務(wù)器,一些用戶已經(jīng)開始配置虛擬化的生產(chǎn)環(huán)境,利用新的信息技術(shù)來(lái)獲取更多的收益。
目前的x86平臺(tái)上能夠?qū)崿F(xiàn)在處理器級(jí)別的虛擬化,但在I/O以及其他方面的虛擬化還需要進(jìn)一步的發(fā)展。不僅如此,x86架構(gòu)上的虛擬化技術(shù)還無(wú)法完美實(shí)現(xiàn)虛擬分區(qū)之間動(dòng)態(tài)遷移,而這些在UNIX平臺(tái)、大型主機(jī)上早已不是問(wèn)題。目前,x86架構(gòu)上的虛擬化技術(shù)的最高規(guī)劃是支持8路SMP系統(tǒng),可以實(shí)現(xiàn)對(duì)單個(gè)CPU資源的配置。
2006年以來(lái),從處理器層面的AMD到Intel再到操作系統(tǒng)層面的微軟的加入,從數(shù)量眾多的第三方軟件廠商的涌現(xiàn)到服務(wù)器系統(tǒng)廠商的高調(diào)加盟,一個(gè)趨于完整的虛擬化技術(shù)產(chǎn)業(yè)生態(tài)系統(tǒng)正在逐漸形成。虛擬化開始成為廣受關(guān)注的熱點(diǎn)話題之一,隨著計(jì)算機(jī)新技術(shù)的快速發(fā)展,虛擬化技術(shù)的前景較為樂(lè)觀。
提到虛擬化技術(shù),很多人第一反應(yīng)是主機(jī)虛擬化,這個(gè)定義太過(guò)狹窄。在虛擬化技術(shù)發(fā)展的幾十年間,虛擬化技術(shù)已經(jīng)從最初的主機(jī)虛擬化發(fā)展到了今天的服務(wù)器虛擬化、網(wǎng)絡(luò)虛擬化、存儲(chǔ)虛擬化、桌面虛擬化、內(nèi)存虛擬化、操作系統(tǒng)虛擬化等多個(gè)方面,而每種虛擬化都有其所對(duì)應(yīng)的優(yōu)勢(shì)與技術(shù)。
服務(wù)器虛擬化又稱主機(jī)虛擬化,它將服務(wù)器物理資源抽象成邏輯資源,讓一臺(tái)服務(wù)器變成幾臺(tái)甚至上百臺(tái)相互隔離的虛擬服務(wù)器,不再受限于物理上的界限,讓CPU、內(nèi)存、磁盤、I/O等硬件變成可以動(dòng)態(tài)管理的“資源池”,從而提高資源的利用率,簡(jiǎn)化系統(tǒng)管理,實(shí)現(xiàn)服務(wù)器整合,讓IT對(duì)業(yè)務(wù)的變化更具適應(yīng)力。

通過(guò)將服務(wù)器資源分配到多個(gè)虛擬機(jī),同一物理平臺(tái)能夠同時(shí)運(yùn)行多個(gè)相同或不同類型的操作系統(tǒng),作為不同業(yè)務(wù)和應(yīng)用的支撐平臺(tái)。其中,虛擬機(jī)并不是真正的機(jī)器,但它能夠像真正的機(jī)器一樣工作,每個(gè)虛擬機(jī)如同一臺(tái)獨(dú)立運(yùn)行的服務(wù)器,有自己的一套虛擬硬件(如 RAM、CPU、網(wǎng)卡等)。在上層的操作系統(tǒng)和軟件看來(lái),它們就是一臺(tái)臺(tái)相對(duì)獨(dú)立的服務(wù)器,就像在自己的硬件上運(yùn)行一樣。如此一來(lái),在一臺(tái)服務(wù)器上運(yùn)行多個(gè)虛擬機(jī)不僅能夠提高服務(wù)器的效率,減少管理和維護(hù)費(fèi)用,同時(shí),當(dāng)應(yīng)用需求增加時(shí),還可以迅速創(chuàng)建更多虛擬機(jī)而不增加物理服務(wù)器,從而降低硬件成本。
服務(wù)器虛擬化的實(shí)現(xiàn)通常使用兩類虛擬化技術(shù),一類是硬件輔助虛擬化技術(shù),代表廠商為VMware和微軟;另一類是軟件虛擬化技術(shù),SWsoft 的Virtuozzo 和Sun的Solaris容器(Sun Containers)是其主要代表。
桌面虛擬化,顧名思義就是一種將桌面的軟件進(jìn)行虛擬化改造的技術(shù)。即通過(guò)某種技術(shù)在中央服務(wù)器上虛擬出大量的虛擬桌面,并提供給成千上萬(wàn)的用戶使用,以達(dá)到桌面使用的安全性和靈活性,使得用戶可以通過(guò)任何設(shè)備,在任何地點(diǎn),任何時(shí)間訪問(wèn)網(wǎng)絡(luò)上屬于個(gè)人的桌面系統(tǒng)。
一種方式是通過(guò)遠(yuǎn)程登錄使用服務(wù)器上的桌面。典型的有Windows下的Remote Desktop以及VNC(Virtual Network Computing)等,他們的特點(diǎn)是所有的軟件都在服務(wù)器端執(zhí)行,客戶端只需運(yùn)行一個(gè)遠(yuǎn)程的登錄界面,登錄到服務(wù)器就能夠看到桌面,并打開遠(yuǎn)程的程序。還有一種方式是通過(guò)網(wǎng)絡(luò)服務(wù)器的方式,運(yùn)行改寫過(guò)的桌面。典型的有Google的Office軟件,它通過(guò)對(duì)原來(lái)的桌面軟件進(jìn)行重寫,從而能夠在瀏覽器里運(yùn)行完整的桌面或者程序。再有就是通過(guò)應(yīng)用層虛擬化的方式提供桌面虛擬化。這種方式是通過(guò)軟件打包,將軟件在需要的時(shí)間推送到用戶的桌面,在不需要的時(shí)候收回,可以減少軟件許可的使用。
簡(jiǎn)單來(lái)說(shuō),桌面虛擬化可以支持企業(yè)或者政府機(jī)構(gòu)實(shí)現(xiàn)桌面系統(tǒng)的遠(yuǎn)程動(dòng)態(tài)訪問(wèn)與數(shù)據(jù)中心統(tǒng)一托管的技術(shù)。例如企業(yè)高層領(lǐng)導(dǎo)在外出過(guò)程中需要做出重要決策,就可以利用桌面虛擬化技術(shù),通過(guò)任何設(shè)備、在任何地點(diǎn),任何時(shí)間訪問(wèn)在網(wǎng)絡(luò)上自己的郵件系統(tǒng)或者網(wǎng)盤。
網(wǎng)絡(luò)虛擬化技術(shù)是目前業(yè)界關(guān)于虛擬化細(xì)分領(lǐng)域界定不明確,存在爭(zhēng)議較多的一個(gè)概念。網(wǎng)絡(luò)虛擬化指虛擬專用網(wǎng)絡(luò) (VPN)。VPN 對(duì)網(wǎng)絡(luò)連接的概念進(jìn)行了抽象,允許遠(yuǎn)程用戶訪問(wèn)組織的內(nèi)部網(wǎng)絡(luò),就像物理上連接到該網(wǎng)絡(luò)一樣。網(wǎng)絡(luò)虛擬化可以幫助保護(hù)IT環(huán)境,防止來(lái)自網(wǎng)絡(luò)的威脅,同時(shí)使用戶能夠快速安全的訪問(wèn)應(yīng)用程序和數(shù)據(jù)。

基于網(wǎng)絡(luò)的虛擬化產(chǎn)品還處在初級(jí)發(fā)展階段,網(wǎng)絡(luò)虛擬化技術(shù)分布在企業(yè)網(wǎng)絡(luò)應(yīng)用的各個(gè)層面與各個(gè)方面,不管是用戶還是企業(yè)網(wǎng)絡(luò)管理者都離不開網(wǎng)絡(luò)虛擬化,利用這一技術(shù)可以對(duì)數(shù)據(jù)進(jìn)行高度加密,達(dá)到安全使用互聯(lián)網(wǎng)的目的。
存儲(chǔ)虛擬化是將實(shí)際的物理存儲(chǔ)實(shí)體與存儲(chǔ)的邏輯表示分離開,通過(guò)將一個(gè)或多個(gè)目標(biāo)服務(wù)或功能與其它附加的功能集成,統(tǒng)一提供有用的全面功能服務(wù)。
從專業(yè)的角度來(lái)看,虛擬存儲(chǔ)是介于物理存儲(chǔ)設(shè)備和用戶之間的一個(gè)中間層。從用戶的角度來(lái)看,用戶所看到的是存儲(chǔ)空間不是具體的物理存儲(chǔ)設(shè)備,用戶所管理的存儲(chǔ)空間也不是具體的物理存儲(chǔ)設(shè)備。用戶可隨意使用存儲(chǔ)空間而不用關(guān)注物理存儲(chǔ)硬件,即不必關(guān)心底層物理設(shè)備的容量、類型和特性等,而只需要把注意力集中在其存儲(chǔ)容量及安全模式的需求上。虛擬存儲(chǔ)技術(shù)的使用有助于更充分地發(fā)揮現(xiàn)有存儲(chǔ)硬件的能力和提高存儲(chǔ)效率,增強(qiáng)安全性。
虛擬化技術(shù)正變得愈加趨于完整而有活力,它的發(fā)展方向更像是一個(gè)全面的操作系統(tǒng),未來(lái)的虛擬化也將為信息技術(shù)產(chǎn)業(yè)發(fā)展帶來(lái)新的機(jī)遇。