“虛擬化正在從一個小市場向主流市場轉變,尤其是在Microsoft進入該市場之後”,當微軟宣布了其Virtual Server 2005 計劃之後,業內有這樣的評價。
在介紹微軟的這個虛擬化項目的時候,幾乎所有的媒體都做了這樣的描述—與其他服務器虛擬化技術一樣,Virtual Server 2005允許用戶對服務器進行分區,以使這些服務器能夠支持多個操作系統和應用。
在大多數人看來,虛擬化就是分區。實際上,我們認為這是對虛擬化技術的一種誤解,所以有必要對這兩者的關系進行進一步闡述。
虛擬化等於分區嗎?
實際上,虛擬化技術可以通過兩個方向來幫助服務器更加合理地分配資源,一種方向就是把一個物理的服務器虛擬成若干個獨立的邏輯服務器,這個方向的典型代表就是分區;另一個方向,就是把若干個分散的物理服務器虛擬為一個大的邏輯服務器,這個方向的典型代表就是網格。
關於服務器虛擬化的概念,各個廠商有自己不同的定義,然而其核心思想是一致的,即它是一種方法,能夠通過區分資源的優先次序並隨時隨地能將服務器資源分配給最需要它們的工作負載來簡化管理和提高效率,從而減少為單個工作負載峰值而儲備的資源。
根據我們目前看到的資料,所謂的這種方法,看上去就是分區。所以,很多人就理所當然地認為虛擬化技術就是分區技術。
實際上,分區與虛擬化技術是互補的,當它們結合使用時能發揮出最高的效率,但是兩者之間的確是有區別的。分區能夠將物理系統資源劃分成多個不同、單獨的部分,各部分彼此獨立操作。通常,在物理資源與邏輯分區之間存在一一對應關系,以便創建“盒中盒”對等關系。如果沒有進行分區,則所有物理部件都精確地各司其職。
“虛擬化把這種概念又向前推進了一步,它允許對數量不足或根本不存在的硬件進行可用性模擬。虛擬化將可用的物理資源用作共享池以模擬缺失的物理資源。在特定虛擬機器或服務器使用哪些以及如何使用物理資源方面,虛擬化能很好地進行控制”,IBM戰略成長部大中華區網格計算部總經理朱明說。
用更加直白的語言表達了同樣的意思,即所謂虛擬化技術應該有兩個方向來幫助服務器更加合理地分配資源,一種方向就是把一個物理的服務器虛擬成若干個獨立的邏輯服務器,使用戶可以在這些看似獨立的虛擬服務器上運行不同的操作系統和應用,這個方向典型代表就是分區;虛擬技術的另一個方向,就是把若干個分散的物理服務器虛擬為一個大的邏輯服務器,使用戶可以像使用同一台服務器的資源一樣支配這些物理上獨立的服務器,從而達到最大化利用資源的目的,這個方向的典型應用就是網格。
虛擬化的生態系統
為什麼目前的輿論環境中,會認為虛擬技術就是分區技術呢?這跟網格仍然停留在試驗階段,遠未進入企業的應用視線緊密相關,而另外一個重要原因,就是從處理器廠商到操作系統廠商、服務器廠商、第三方軟件廠商,積極力推的虛擬化技術基本上集中在分區這一塊。
尤其是今年以來,服務器虛擬化技術的隊伍大大擴充了—從處理器層面的AMD和Intel到操作系統層面的微軟的加入,從數量眾多的第三方軟件廠商的湧現到服務器系統廠商的高調,我們看到一個趨於完整的服務器虛擬化技術生態系統正在逐漸形成。它們在虛擬化技術方面不斷推出的新技術、新產品,對虛擬化技術在用戶端的應用,將起到很大的推動作用。
AMD和Intel的積極參與,第一次將虛擬化技術推向了x86架構的處理器層面,這個改變之所以具有歷史性的意義,是因為此前處理器層面的虛擬技術似乎是 RISC處理器的“專利”,而一旦Intel和AMD的承諾兌現,操作系統層面的虛擬化技術得到處理器的配合和支持後,相信才會使更多用戶真正享受到虛擬化技術帶來的服務器資源利用率的提升。
另一方面,微軟高調推出Virtual Server 2005,意味著這個x86架構服務器操作系統領域的巨人也意識到了虛擬化技術的重要性,這也是市場需求逐漸高漲的一個反射。同時,一大批專注於服務器虛擬化管理技術和應用技術的“小廠商”的崛起,使虛擬化市場在看上去更加繁榮的同時,也帶來了更多的選擇和工具。
最底層的力量
年初,英特爾宣布了其初步完成的Vanderpool技術外部架構規范(EAS),並稱該技術可幫助改進未來虛擬化解決方案。英特爾表示,將在今年把Vanderpool應用於安騰架構平台,同時還計劃在台式機處理器和芯片組產品中采用該技術。
相比之下,AMD在虛擬化技術方面下手更早。Pacifica技術規范是AMD計劃用於其64位產品中的虛擬化技術,該技術將用於基於x86架構的服務器、台式機和筆記本電腦等系列產品,“我們將進一步加快虛擬技術的開發步伐,增強虛擬化技術實力”,在去年底宣布Pacifica技術規范的時候,AMD副總裁兼計算產品部微處理器業務總經理Marty Seyer就曾經這樣表態。
AMD表示,通過將Pacifica技術預先展示給虛擬化ISV和分析師團隊,並通過持續的協作,最終可以在托管基於系統管理程序(hypervisor)的虛擬解決方案方面,向Pacifica用戶提供更豐富的功能集和更高性能模型。“這將成為開發高級虛擬解決方案的基石”,Marty Seyer說。
從技術角度看,不論是Vanderpool技術外部架構規范還是Pacifica技術規范,它們強調的核心功能都是RISC處理器早就實現了分區功能,即基於該技術平台實現在獨立分區中高效運行多個操作系統和應用程序,使一個計算機系統象多個“虛擬”系統一樣運行。
微軟的虛擬手筆
微軟於去年下半年宣布了其Virtual Server 2005計劃。與其他服務器虛擬化技術一樣,Virtual Server 2005允許用戶對服務器進行分區,以使這些服務器能夠支持多個操作系統和應用。計劃於今年面市的Virtual Server建立在去年年初時通過購買Connectix而獲得的技術基礎之上,該軟件可以在Windows、Linux和Mac OS服務器及工作站上運行。
微軟Windows部門副總裁Rob Short表示:“微軟正與AMD和 Intel等合作伙伴密切協作,以確保Windows平台的軟件虛擬化解決方案能充分利用硬件技術提供的新功能。處理器虛擬化擴展是未來Windows平台上虛擬機解決方案的重要建築模塊。”
大家都知道,x86服務器可以通過VMWare軟件來將一台服務器劃分成若干個虛擬機。那麼微軟Virtual Server 2005與VMWare的虛擬化技術相比,有什麼異同呢?很明確的一點是,Virtual Server 2005是基於Windows操作系統的,而VMWare則是一款准操作系統產品,與操作系統是完全獨立的,這樣帶來的一個直接影響就是用戶在使用Virtual Server 2005創建虛擬機時,必然會或多或少地占用CPU資源,可能在性能上與使用VMWare會有一些差異。
另外,因為VMWare是獨立於操作系統的,所以如果操作系統出現問題虛擬機應該不會受到影響,而使用Virtual Server 2005時,保證操作系統的穩定性則成為了保證虛擬機連續可用的一個重要因素。
先行者的新腳步
在服務器虛擬化技術方面走得比較靠前的應該是IBM和HP等服務器廠商。今年以來,這兩家公司在虛擬化領域也非常積極,在最新的RISC架構服務器及最新版的操作系統中,都嵌入了虛擬化技術。
IBM的服務器虛擬套件
早在p690服務器和AIX 5L操作系統首次公布的時候,IBM就宣布在其動態邏輯分區(LPAR)技術的支持下,一個系統內可獨立的運行多個分區,每個分區運行獨立的操作系統。這時候的分區,是以CPU為“顆粒”的。
到去年發布p5服務器時,IBM大張旗鼓地扯出了虛擬技術的大旗。不過,與以前相比,在虛擬化技術的幫助下,IBM最新的微分區技術打破了分區上以CPU為“顆粒”的限制,可以將單個CPU劃分為10個微分區,從而創建和運行比物理處理器數量更多的分區。IBM同時宣布,新版操作系統AIX 5.3可以支持1/10 CPU顆粒的微分區。
今年,IBM進一步拓展了其服務器虛擬技術的范疇,推出了由操作系統、系統技術和系統服務三部分組成的服務器虛擬引擎。其中,操作系統涉及AIX、i5/OS、z/OS和Linux,其技術宗旨是單台服務器內運行多種操作系統、在異構IT基礎架構中以統一的方式實現資源的共享和管理以及管理非IBM操作系統平台;系統技術包括微分區、vLan、虛擬I/O、Hypervisor等;而系統服務則包括一個服務器系統服務套件和一個存儲系統服務套間。在服務器系統服務套間中,包括硬件監督模塊VE console虛擬引擎控制台,可以利用兩個主要的功能模塊Launchpad和Health Center,監控資源的健康狀態、進行問題診斷和系統管理;另外還包括硬件管理模塊IBM Direction Multiplatform(DCM)整合系統管理。
同時,IBM還推出了應用虛擬工具套件,包括應用監督模塊Enterprise Workload Management企業負載管理器(EWLM),可以在異構環境下自動管理分布式企業級系統,根據業務優先級將IT服務分類,並設立相應的性能目標,並根據這些性能目標,提供端到端的性能分析和評估,通過分析,EWLM自動按照應用拓撲調整網絡路由。與EWLM相配合的是一個應用管理模塊Tivoli Provisioning Manger(TPM),該模塊與EWLM配合,可以實現系統部署和配置步驟的自動化,為IT系統的自動部署、資源分配和啟用提供解決方案。
HP提供三個層次的虛擬化解決方案。其中,部件虛擬化可以優化不同類型IT資源的利用,如服務器、存儲和網絡資源,包括分區、集群、工作負載管理和應用虛擬化;集成虛擬化可以把優化多個部件的虛擬化方法結合在一起,自動調度資源滿足服務水平協議(SLO),包括虛擬服務器環境、連續訪問存儲專用服務器等;而完全虛擬化可以優化所有異構資源、使得資源供應能夠實時滿足業務需求。
HP-UX 下的分區連續技術能夠把服務器劃分成物理或邏輯獨立的分區,為優化資源利用、提高服務器的可用性提供堅實的基礎。
■ 硬件分區 (nPars) ——HP nPars 是單個服務器中的硬件分區。nPars 根據服務器類型最多提供 16 個硬件分區、完全的硬件和軟件隔離能力以及在一個服務器上運行多個OS實例。
■ 虛擬分區 (vPars)——HP vPars 具有在一個系統或硬件分區內實現執行多個OS實例的獨特特性。每個 vPar 能夠擁有規定的內存量、一個或多個物理內存區域、一個規定的CPU池、服務器內一個或多個I/O 卡。vPars 能夠使用軟件命令動態地創立和修改。因此,每個應用能夠在性能最大、OS配置要求得到滿足的環境中運行。
■ 資源分區—— 進程資源管理軟件 (PRM) 能夠動態地以多種方式把系統資源 (CPU, 內存和磁盤 I/O) 分配給客戶的應用,分配的方式可以是根據份額、百分比和處理器組 (pSets)。 pSets 允許在服務器上創立處理器組,而應用或用戶可以被分配到在規定的pSet 上運行。
新勢力崛起
在服務器虛擬化技術領域湧現了許多“新手”,我們在這裡對其技術特征做一個簡要介紹。
■Leostream成立於2001年,是VMware的合作伙伴。該公司推出的產品是Virtual Machine Controller (VMC)。該軟件旨在管理出自VMware和Microsoft的服務器虛擬化產品,它可以在基於Web的頁面上顯示每一個虛擬服務器。該公司的最新產品VMC SAN版本主要用於管理與SAN連接的虛擬服務器。
■PlateSpin最近推出的軟件允許自動地把Windows和Linux服務器在物理服務器與虛擬服務器之間來回切換。
■SWsoft在實現服務器虛擬化上采取了不同的方法。它虛擬化操作系統,這樣用戶從一個安裝的操作系統版本中可以創建操作系統的多個實例。有評價說,每一種實現虛擬化服務器的方式都存在自己的優缺點,像SWsoft那樣的虛擬化,雖然不能在服務器上運行一個以上的操作系統,不過SWsoft可以利用一個主機操作系統創建很多不同的虛擬服務器,因此節省的費用更多,因為在每台服務器上只需購買一個操作系統的許可證,而不必為每台服務器購買多個操作系統的許可證。
雖然這些企業目前離中國用戶還比較遙遠,但是從他們的技術特征中,我們可以感受到虛擬化技術正方興未艾,在我們明天的虛擬化實戰演練中,也許就會用到這些技術。
編看編想:誰在用虛擬化?
“您怎麼理解虛擬化的?”
問過很多人,十個人裡面至少有八個人告訴我:“怎麼說呢,虛擬化這個概念其實很虛的。”
這八個人裡,不乏幾分鐘前剛剛給我大力推銷其虛擬化產品和技術的廠商技術人員。這讓我很感觸,在講了兩三年之後,就連虛擬化的始作俑者們,好象也很糊塗,那麼用戶又如何能充分理解呢?這樣的解釋—“所謂的虛擬化,就是通過恰當的基礎設施建設,從管理層面將資源的功能從資源的實體上分離出來,從而達到更加靈活、專業、低成本地使用資源的目的”,有幾個人能聽得懂呢?
不過,對我來說更加關心的一個問題是,誰在用虛擬化技術?IBM戰略成長部大中華區網格計算部總經理朱明告訴記者,不論是分區還是網格,目前國內用戶采用虛擬化技術的的確不多。他說:“因為有一個關鍵的問題還沒有解決,那就是用戶的采購習慣和使用習慣。”對於國內用戶來說,買一台服務器回來劃分成若干個不同分區來跑不同的操作系統、不同的數據庫、不同應用,心裡可能不塌實——如果這台服務器出問題了,不是所有的系統都坍塌了嗎?這樣的責任,誰能負得起?
這的確是個很關鍵的因素。但是我並不認為這是虛擬化技術遇到的最大問題,我反而覺得沒有人清楚地跟用戶講明白虛擬化技術到底是什麼、有什麼用、能帶來什麼好處等這些基本的問題,是目前虛擬化從概念走向用戶機房去實戰演練的一個根本問題。 VMWare算是x86服務器領域做虛擬化的“權威”了,可是當記者向他們表達了采訪意向時,得到的回答是“沒有合適的資料可以提供”,試想,連號稱“權威”的廠商都沒有合適的資料,用戶能到哪裡去透徹、清楚地了解虛擬化呢?
虛擬化范疇中的幾個關鍵問題
■ 能否通過一個單一的處理器來分配部門的工作量?
■ 能否將你的全部數據資源視為一個單一的實體?
■ 能否在維持所需的容量的同時減少運行和系統管理的成本?
■ 能否通過組織的高效率來利用信息和資源?
■ 能否對你的客戶的需要做出快速的反應?
■ 能否通過企業快速地收集信息?
■ 能否在生產和測試環節中通過檢測來減少緊急響應次數?