CIO須了解的虛擬化歷史知識
在目前的 x86 服務(wù)器上,虛擬化技術(shù)已經(jīng)成為或者即將成為潮流。但從整個 IT 業(yè)界的發(fā)展來看,虛擬化技術(shù)的歷史遠(yuǎn)遠(yuǎn)超過了 x86 虛擬化技術(shù)的 9 年。早在上世紀(jì) 60 年代,美國的計算機(jī)學(xué)術(shù)界就開始了虛擬技術(shù)的萌芽。1959年 6月在國際信息處理大會上,克里斯托弗的一篇《計算機(jī)分時應(yīng)用》的論文,被認(rèn)為是虛擬化技術(shù)的最早論述。
今天,虛擬化技術(shù)已經(jīng)出現(xiàn)在了很多首席信息官(CIO)的預(yù)定任務(wù)中。在一次第三方調(diào)查當(dāng)中,75% 的 CIO 都同意虛擬化技術(shù)是目前的一項投資重點,因為他們已經(jīng)開始注重減少他們的服務(wù)器的數(shù)量以減少能源使用、降低成本。甚至于,虛擬化技術(shù)目前正在走向主流技術(shù)市場并且已經(jīng)逐步成為數(shù)據(jù)中心環(huán)境的標(biāo)準(zhǔn)組成部分。
為什么需要虛擬化
實際上,虛擬化技術(shù)的初衷就是為了實現(xiàn)更高的設(shè)備利用率,使用戶能夠盡可能地利用系統(tǒng)資源。也就是說,如果你能夠在單個服務(wù)器上虛擬多個系統(tǒng),就能夠以少數(shù)幾臺計算機(jī)完成所有工作,這顯然能夠節(jié)省耗電、空間、冷卻和管理開支??紤]到確定服務(wù)器利用狀況的困難,虛擬化技術(shù)需要支持動態(tài)遷移(Live Migration)。動態(tài)遷移允許操作系統(tǒng)能夠遷移到另一臺全新的服務(wù)器上,從而減少當(dāng)前主機(jī)的負(fù)載。
有這樣一句話,叫做”更多虛擬,更少管理(Virtualize more, manage less)“。IBM 將虛擬定義為不受物理限制的資源邏輯表達(dá)。更簡單地說,IBM 將虛擬詮釋為可以將一個物理設(shè)備作為很多虛擬資源(分區(qū))來使用,或者令多個異構(gòu)資源的行為看起來就如同是一個大的資產(chǎn)(集合)。
正是由于虛擬化技術(shù)能夠降低 TCO(總擁有成本),提高資源的利用率和應(yīng)用上的靈活性,虛擬化技術(shù)后來也在 UNIX 服務(wù)器、小型機(jī)上得到了應(yīng)用??梢哉f,經(jīng)過多年的發(fā)展,虛擬化技術(shù)在高端產(chǎn)品上的應(yīng)用日臻成熟。不過,由于真正使用大型機(jī)和小型機(jī)的用戶畢竟還是少數(shù),加上各家產(chǎn)品和技術(shù)之間并不兼容,致使虛擬化曲高和寡。
服務(wù)器虛擬化溯源
盡管目前的虛擬化技術(shù)熱潮是由于該技術(shù)在 x86 服務(wù)器上的迅速普及引發(fā)的,但虛擬化技術(shù)的最初來源卻不在 x86 架構(gòu)上,而是大型主機(jī)。最早使用虛擬化技術(shù)的是 IBM 7044 計算機(jī),IBM 之后在上世紀(jì) 60 年代還開發(fā)了型號為 Model 67 的 System/360 主機(jī)。Model 67 主機(jī)通過虛擬機(jī)監(jiān)視器(Virtual Machine Monitor)虛擬所有的硬件接口。在早期的計算中, 操作系統(tǒng)被稱做 Supervisor,能夠運(yùn)行在其它操作系統(tǒng)之上的操作系統(tǒng)被稱做 hypervisor。其中,VMM 直接運(yùn)行在底層硬件上, 允許執(zhí)行多個虛擬機(jī)(VM),每一個 VM 運(yùn)行自己的操作系統(tǒng)實例(CMS,Conversational Monitor System)。隨后,VM 繼續(xù)發(fā)展。今天,你能夠在 System z9 主機(jī)上發(fā)現(xiàn) VM, 它甚至能夠向后兼容到 System/360。
由于虛擬化技術(shù)技術(shù)在商業(yè)應(yīng)用上的優(yōu)勢,RISC 服務(wù)器與小型機(jī)成為了虛擬化技術(shù)第二波受益者。1999年,IBM 公司在 AS/400 上提出了上”邏輯分區(qū)(LPAR)“技術(shù)和新的高可用性集群解決方案。在 POWER 管理程序上運(yùn)行的 AS/400 LPAR 令單臺服務(wù)器工作起來如同 12 個獨立的服務(wù)器。而在 2002 年,IBM 還更進(jìn)一步,其 AIX5L v5.2 還首次包括了 IBM 實現(xiàn)的動態(tài)邏輯分區(qū)(DLPAR)。DLPAR 允許在無需重啟系統(tǒng)的情況下,將包括處理器、內(nèi)存和其它組件在內(nèi)的系統(tǒng)資源分配給獨立的分區(qū)。這種在不中斷運(yùn)行的情況下進(jìn)行資源分配的能力不僅令系統(tǒng)管理變得更加輕松,而且因為能夠更好地使用資源而幫助降低總擁有成本。
不過,盡管惠普、Sun 公司也跟隨 IBM 在自己的 RISC 服務(wù)器上提供了虛擬化技術(shù),但由于真正使用大型機(jī)和小型機(jī)的用戶還是少數(shù),加上各家產(chǎn)品和技術(shù)之間并不兼容,虛擬化技術(shù)仍舊不太被公眾所關(guān)注。目前,主要的 UNIX 廠商均支持 64 路 SMP 的虛擬。并且普遍能實現(xiàn) 1/X 量級 CPU 的微調(diào),例如 IBM 宣稱可以實現(xiàn) 1/100 CPU 量級的調(diào)整,惠普則可以實現(xiàn) 1/20 量級的調(diào)整。在應(yīng)用上,UNIX 上的虛擬化也非常成熟,IBM 的客戶訂購的 System i5 595 中有 82% 具備邏輯分區(qū)功能,IBM 客戶管理的分區(qū)總數(shù)超過 45000 個。在中國,甚至有用戶在一臺 System p 系列服務(wù)器上運(yùn)行了 9 個邏輯分區(qū)。
而現(xiàn)在,虛擬化技術(shù)的發(fā)展已經(jīng)惠及到了 x86 架構(gòu)。此前,虛擬化技術(shù)在 x86 架構(gòu)上進(jìn)展緩慢的主要原因有二:x86 架構(gòu)本身不適合進(jìn)行虛擬化,這個障礙已經(jīng)由英特爾、AMD 修改 x86 處理器的指令集得到解決;另一個原因則是 x86 處理器的性能不足,也由于 x86 處理器在性能上的飛速提高得到了解決。由于 x86 架構(gòu)的廣泛普及,x86 架構(gòu)上的虛擬化技術(shù)也得到了比以前多得多的關(guān)注。
不過,與已經(jīng)有多年歷史的 UNIX 服務(wù)器、大型主機(jī)上的虛擬化技術(shù)相比,x86 服務(wù)器上的虛擬化仍舊處于早期階段——根據(jù)英特爾的藍(lán)圖,在處理器當(dāng)中集成硬件輔助虛擬化指令只是 IA 平臺上的第一步,而在第二步則要實現(xiàn) I/O 方面的虛擬化,直到最后實現(xiàn)整個 IA 平臺的虛擬化。也就是說,目起的 x86 平臺上,目前僅僅能夠?qū)崿F(xiàn)在處理器級別的虛擬化,在 I/O 以及其他方面的虛擬化還需要進(jìn)一步的發(fā)展。不僅如此,x86 架構(gòu)上的虛擬化技術(shù)還無法完美實現(xiàn)虛擬分區(qū)之間動態(tài)遷移,而這些在 UNIX 平臺、大型主機(jī)上早已不是問題。IBM 公司最近發(fā)布的 POWER6 處理器甚至還提供了 Live Partition Mobility 功能,允許實現(xiàn)活動分區(qū)的在線遷移。目前,x86 架構(gòu)上的虛擬化技術(shù)的最高規(guī)劃是支持 8路 SMP 系統(tǒng),可以實現(xiàn)對單個 CPU 資源的配置。
淺析存儲虛擬化
相對于在服務(wù)器虛擬化技術(shù)在規(guī)范上的相對成熟,存儲虛擬化技術(shù)在這方面的進(jìn)展相對緩慢。按照定義,存儲虛擬化可以分為三種層次:在主機(jī)層面進(jìn)行存儲虛擬化; 在網(wǎng)絡(luò)層次進(jìn)行存儲虛擬化;在設(shè)備層面進(jìn)行存儲虛擬化。三種技術(shù)都有相應(yīng)的廠商的支持,也都有不少的用戶。比較而言,IBM 在存儲虛擬化方面所占據(jù)的市場份額更大,在技術(shù)實現(xiàn)上也更早。根據(jù) IDC 的估計,虛擬存儲市場在 2005 年年底的數(shù)據(jù)容量為28.1PB,而 IBM 管理著大約 15PB 的數(shù)據(jù)。
早就 1978年,IBM 就獲得了 RAID(冗余獨立磁盤陣列)概念的專利。作為一種存儲虛擬形式,RAID 首先將物理設(shè)備組合為池,然后從這一池中”切割“出一組虛擬邏輯單元(LUN)并將其提供給主機(jī)。通過使用鏡像和奇偶性,這些邏輯單元第一次擁有了比底層物理磁盤驅(qū)動器更高的可用性。雖然直到 1988年 IBM 與加利福尼亞州立大學(xué)伯克利分校的研究人員攜手之后才開發(fā)出一個實用的版本,但這一專利技術(shù)卻是第一次將虛擬化的概念引入到了存儲之中。
在 2003年 5月,IBM 推出可提供數(shù)據(jù)塊級存儲虛擬的 SAN 卷控制器(SAN Volume Controller),在業(yè)界第一次允許客戶擁有一個對其存儲基礎(chǔ)架構(gòu)進(jìn)行管理的控制界面。在 2004年 10月,IBM 推出了擁有邏輯分區(qū)(LPAR)功能的 DS8000。通過使用 IBM POWER5 微處理器和 IBM 虛擬引擎技術(shù),DS8000 在實現(xiàn)高性能的同時,降低了多種業(yè)務(wù)應(yīng)用的成本。利用IBM虛擬引擎技術(shù),DS8000 系列中的某些型號既可作為單一的大型存儲系統(tǒng)使用,也可作為擁有邏輯分區(qū)(LPAR)功能的多個存儲系統(tǒng)。通過使用 LPAR,客戶可以選擇更高效地使用計算機(jī)資源以及降低對關(guān)鍵數(shù)據(jù)中心的空間、功耗和散熱需求。另外,IBM 還宣布自己的虛擬軟件可以管理所有的 EMC 磁盤陣列。
小結(jié)
實際上,不論是剛剛談的服務(wù)器虛擬化,還是存儲虛擬化,甚至網(wǎng)絡(luò)虛擬化、數(shù)據(jù)虛擬化等等,都只是部件級的虛擬化。虛擬化技術(shù)的未來應(yīng)當(dāng)是將整個數(shù)據(jù)中心虛擬化,使用戶能夠獲得一個隨需應(yīng)變數(shù)據(jù)中心。
IBM 早在 40 多年前就率先在大型主機(jī)上使用了虛擬技術(shù),并在此后在自己的系統(tǒng)和軟件中注入了各種虛擬技術(shù),實現(xiàn)不同服務(wù)器、軟件、存儲和網(wǎng)絡(luò)的自動管理和優(yōu)化。IBM 虛擬技術(shù)和自動化技術(shù)的結(jié)合幫助減少了支持 IT 運(yùn)行所需的人員數(shù)量。今天,IBM 可以將客戶數(shù)據(jù)中心中超過 80% 的部分實現(xiàn)虛擬。為進(jìn)一步發(fā)揮虛擬的威力,IBM 正在創(chuàng)建包括所有物理和虛擬系統(tǒng)的集成管理視圖。IBM 早在 5 年前最先推出具有自管理功能的自動化技術(shù),并為市場提供了一系列最成熟的自動化功能,包括在超過 75 種軟件、硬件和服務(wù)產(chǎn)品中提供了 500 多種不同的虛擬功能,可以自動檢測各種系統(tǒng)、事務(wù)處理、工作流或業(yè)務(wù)流程何時處于運(yùn)行不正常的狀態(tài),并在不影響系統(tǒng)其它部分的情況下采取糾正措施。這些功能已經(jīng)遠(yuǎn)遠(yuǎn)超出了系統(tǒng)管理軟件的范疇并包括了芯片技術(shù)。具有”智能搜索“特性的軟件和軟件工具可以尋找和清除各種故障,自主管理像 Blue Gene 超級計算機(jī)和大型主機(jī)這樣的服務(wù)器和存儲設(shè)備。