以服務器虛擬化為主的虛擬化解決方案目前正在火熱的發展與普及中,各種跡象都表明,越來越多的客戶都已走出理論評估的階段,而開始真正的部署虛擬化解決方案。不過,由于x86服務器是當前服務器市場出貨量的主流,所以一談到虛擬化,很多人都潛意識的將其等同于x86虛擬化解決方案,而在這一領域,大家想到的是VMware, Hyper-V和Xen等。但顯然這并不全面,當虛擬化本身使得硬件平臺對于用戶來說越來越透明的時候,我們會發現,其實與我們關系更密切的是應用環境,而不再是硬件平臺本身了,這樣也將使我們對平臺的看法有所改變。所以,說到這里,我們就不得不提到IBM的虛擬化解決方案,以及IBM獨有的虛擬化軟件和技術。
事實上,當我們放眼整體的服務器市場,尤其是在金融,電信等高端行業和數據中心等高端的應用情境時,IBM 虛擬化軟件Power VM使我們更深切的感受到IBM在Unix平臺上的虛擬化能力正左右著未來數據中心大整合、應用平臺大融合的趨勢,成為市場上不可忽視的力量。本文主要介紹IBM虛擬化軟件Power VM的特點和優勢,但IBM虛擬化軟件不僅僅是Power VM,IBM還擁有最完整的虛擬化軟件和虛擬化管理解決方案,例如Tivoli Monitoring (ITM),Systems Director 。
PowerVM的歷史
與只有10幾年歷史的x86平臺虛擬化的領袖VMware相比,IBM的虛擬化軟件和技術的歷史要比它久遠多了。IBM早在40多年前就開發出第一代虛擬化軟件,并應用在它的大型主機上,當時IBM使用一種專為 System/360 Mainframe. 量身訂造的操作系統 CP-40。在 1967 年,第一個虛擬化軟件Hypervisor誕生,第二版的Hypervisor(CP-67)則在1968年誕生,在那時它就支持跨虛擬機共享內存,為每個用戶提供單獨的內存空間。
在這里,Hypervisor(Hypervisor)是一種軟件,它允許多個操作系統共享一臺硬件主機。這個版本被用于整合物理硬件和更迅速地部署環境(比如開發環境)。在 20 世紀 70 年代,IBM 一直在改進他們的技術,支持 MVS 與其他操作系統(比如 UNIX)在 VM/370 上一起運行。在 1997 年,同樣是在大型機上創建虛擬化技術的這些人在 IBM 中端平臺上創建了一個Hypervisor。
IBM Hypervisor所基于的一個關鍵元素在于,虛擬化是系統固件本身的一部分的事實,這與其他基于Hypervisor的解決方案不同。這是因為操作系統(OS)、硬件和Hypervisor之間集成非常緊密,Hypervisor是介于 OS 與提供虛擬化功能的硬件之間的系統軟件。在 2001 年,經過 4 年的設計和開發,IBM 發布了一款面向中端 UNIX 系統的Hypervisor,該Hypervisor支持全局分區。2004 年發布了高級POWER虛擬化(Advanced Power Virtualization,APV,這里的Power不是指電源,而是指POWER System服務器),它是 IBM 第一款真正的虛擬化解決方案,支持共享資源,它在 2008 年被重新命名為 PowerVM,PowerVM成為IBM新的虛擬化軟件代號。
PowerVM的主要特色
PowerVM是一個典型的Type 1的Hypervisor,這從基礎上保證了它的高效率,但與VMware、微軟、Xen的Type1型Hypervisor相比,PowerVM仍然有自己鮮明的特色,發展至今,PowerVM目前有以下幾個重要的特點與功能。
PowerVM的基本架構,在框架設計上,它與微軟的Hyper-V和思杰的XenServer更為相似
虛擬I/O服務器(VIOS,Virtual I/O Server)—— 這個服務器負責為虛擬分區提供 I/O 服務。它負責管理物理適配器供一個或多個 VIO 虛擬的客戶分區共享。這有助于消除對專用網絡和/或 I/O 的需求,從而減少了成本。IBM 的實現方法使用了共享以太網和虛擬 SCSI 來支持共享網絡和磁盤 I/O。
微分區和共享處理器邏輯分區(Micro partitioning and Shared Processor Logical Partitioning,SLPAR) —— 微分區允許虛擬分區只占用一部分的CPU資源,最細的顆粒度可以只到一個CPU核心的1/10。虛擬服務器可以在任何物理服務器上運行,因為物理處理器是完全共享的。而共享的處理器邏輯分區可以在微分區的基礎上,通過使用一種稱為未封頂分區的特性來擴大 CPU 數量和它們的授權容量(Entitled Capacity,EC),授權容量在創建 CPU 的配置文件時配置。這是一項重要特性,因為允許系統在突發的 CPU 密集時期,從一個共享的處理器池的其他邏輯分區中分配未使用的 CPU 資源,這些資源在其他時間是空閑的,這樣,能夠夠以一種動態方式簡化工作負載管理。 則CPU資源的調整單位可精細到1/100核心,方便精確性管理。
動態分區遷移(Live Partition Mobility)—— 這個功能支持將正在運行的邏輯分區 LPAR(等同于一個虛擬機,可以是 AIX 或 Linux)從一個物理服務器移動到另一個服務器。
共享專用容量—— 允許專用處理器分區將空閑 CPU 周期捐獻出來,以便在空閑處理器池中使用。
多個處理器池—— 允許在分配給共享池的分區之間均衡處理能力,從而提高吞吐量。
Lx86—— 這項技術支持運行直接在 Linux 分區上運行沒有專門移植到 Power Architecture 的 x86 Linux 應用程序,無需執行必要的重新編譯操作。可以有效的整合基于x86的Linux應用服務器。
工作負載分區(Workload Partitioning ,WPAR)與遷移——這是一個非常有用,且十分重要的特性,它的對象并不是一個完整的虛擬化區,而是相應的工作負載(Workload)。類似于 Solaris 容器/專區,它提供了將邏輯分區拆分為工作負載的能力。每個工作負載都具有自己的包含環境,但沒有自己的內核。經過配置的 WPAR 是 LPAR 的一部分,它減少了需要維護的 AIX 映像的數量。WPAR 在 AIX 實例**享系統資源:目錄、CPU、RAM 和 I/O。而且可以像遷移LPAR那樣,將WPAR進行遷移且不需要中斷應用的運行(即Live Application Mobility),這個特性還允許執行多系統負載平衡,可以用來節約數據中心的成本。
活動內存共享(Active Memory Sharing,AMS)——與處理器池的概念相似,多個分區可共享一個物理內存池,而每個分區根據工作負載的情況可動態的調配內存資源。當然,管理員也可以為分區分配專一的內存資源以確保應用性能,而AMS的出現為靈活的運用內存提供了可能。
主動內存擴展(Active Memory Expansion,AME)——應用有需求的時候(比如SAP的ERP應用),通過內存壓縮技術將現有的內存數據進行壓縮,以騰出物理內存空間,最多可等效擴充50%的內存容量,用戶也因此可以在部署相關應用時節省50%內存容量的成本。
PowerVM相較其他UNIX虛擬化平臺的優勢
目前,在UNIX平臺下,主要的虛擬化解決方案均是相關硬件平臺廠商所專門開發的,IBM的POWER系統對應的虛擬化軟件就是PowerVM,而HP的安騰平臺就是VSE(Virtual Server Environment,虛擬服務器環境),Sun的SPARC平臺則是xVM,但面向SPARC系統的主要還是LDOM(面向Solaris on x86的是基于Xen開源平臺的),至于Virtual BOX則是面向終端桌面的產品,并不在本文的討論范圍。
HP的VSE也有著比x86平臺虛擬化更悠久的歷史,大約在26年前,HP推出了自己的虛擬化技術,這可算是VSE的前身,而在具體的功能上HP也在不斷完善著VSE的能力,不過其主要的虛擬化模式vPar、nPar以及IVM(Integrity Virtual Machines)均有自己的不足,相對來說vPar、nPar并不能算是完全的虛擬化分區,它們不支持內核共享,分區間也不能做到共享虛擬化資源,做分區的遷移時仍需要離線,所以這有違于虛擬化的初衷,因此HP的安騰系統主要的虛擬化應用是基于IVM的。在虛擬機的CPU核心顆粒度方面,IVM占有優勢,可達到1/20核心,PowerVM只有1/10,不過PowerVM的分區可以最高支持64個虛擬處理器(vCPU),而IVM只有4個(HP的vPar分區倒可以支持到128個vCPU,但又不能做到CPU與I/O資源共享,以及分區的動態遷移)。在內存容量方面,PowerVM的分區可支持高達2TB的內存,而IVM最高只支持64GB內存。當然,VSE也有自己的優勢,那就是支持Windows Server操作系統,不過一臺安騰主機對于Windows應用來說,性價比可能更有待考慮。
至于Sun的LDOM,則也在相應的規格上處于下風,它的虛擬分區最高支持8個vCPU與64GB的內存,并且微分區功能較弱,在T1處理器上只能實現4個微分區,而在T2處理器上則為8個,并且也不支持分區間的動態分配。
另外一點,活動內存共享與活動內存擴展兩大功能也是HP與Sun虛擬化技術所不具備的。而更重要的是,在新的一代服務器硬件平臺的發展中,Sun已經明顯力不從心,HP所采用的在2010發布的安騰9300處理器其實是一款2007年的產品,在硬件性能方面明顯不如IBM的POWER7,而強大的硬件平臺的性能也為更為強大的虛擬化性能提供了基礎的保障,這一點POWER7與PowerVM的組合,無疑更占優勢。
PowerVM相較x86虛擬化平臺的優勢
而在與x86平臺的其他虛擬化軟件相比較時,我們更能看出PowerVM的優勢,這是與幾十年的發展積累分不開的。
注:最新的vSphere 4.1的虛擬機并發遷移數量也能達8個,不過并沒有超過PowerVM的水平
以上是PowerVM與最新的,也是當前最強大的x86虛擬化平臺VMware的vSphere 4的比較,可以看出在PowerVM的優勢明顯,而微軟的Hyper-V R2的虛擬機也只支持最多4個vCPU與64GB內存,而XenServer 5.5則是8Vcpu/32GB內存,在可用的虛擬機數量方面,vSphere單臺服務器可最多支持320個虛擬機,Hyper-V R2為384個,而PowerVM目前的水平可達640個,不久的未來將會達到1000個虛擬機的水平。
此外,在虛擬化的性能衰減方面,IBM的PowerVM也有明顯的優勢。
所謂的虛擬化性能衰減是指服務器在做虛擬化后的應用性能,相對于裸機時的應用性能的下降幅度,下降幅度越小,也就意味著虛擬化性能的衰減越小,虛擬化的效率越高,即系統進行虛擬化時的系統開銷越少,而留給應用的處理資源(CPU/內存/IO等)越多。
在SAP S&D 2-tier的測試中,以每核心的用戶數為基準,我們可以看出POWER系統基本上沒有因虛擬化而產生性能衰減,而在至強5500系統上,配合VMware最新的ESX(包含于vSphere 4),性能出現了比較大的衰減,當使用4個虛擬CPU時,較裸機性能下降了31.7%,而當虛擬CPU增加到8個時(到時與物理CPU核心數量相當),雖然測試結果較4個虛擬CPU更高,但每核心的性能則較裸機性能下降了38.7%,超過了1/3,可見系統的虛擬化開銷是比較大的。不過,就裸機性能來看,至強5500有明顯讓人眼前一亮,已經明顯超過了Power 570。
同樣的性能衰減也出現在微軟的Hyper-V平臺上。首先是單個虛擬機不同數量的虛擬CPU的比較,這里采用的測試程序是DayTrader2.0,它是一個開源的基準測試程序,DayTrader2.0測試模型一個股票交易系統,基于Java EE技術構建,采用了外連的數據庫架構,在測試中Power 550與至強5500服務器測試環境均搭配相同的數據庫服務器(基于Power 570),數據庫是DB2 2.97。對于測試結果我們暫且不看不同虛擬CPU個數時的性能差異,只看性能差異的變化值,從1個虛擬CPU過渡到2個虛擬CPU時,POWER與至強5500系統基本上都呈現了成倍的線性性能增長,至強5500甚至更明顯(POWER的依靠幅度降低),但當虛擬CPU數量提高到4個和8個時,可以看出雖然兩者的性能提升幅度不再像1到2個虛擬CPU時那樣大,但兩者間的性能差距在漸漸拉開,也就說明Hyper-V的虛擬化性能衰減更大了。
AIM7虛擬機測試結果
接下來是虛擬機數量的擴展性能對比測試,測試軟件也是一個開源的基準測試程序——AIM7,它主要用來對服務器的CPU、內存與I/O子系統進行壓力測試,而虛擬機數量無疑將增加對系統的負載,所以這個測試也將體現系統各功能單元對虛擬機數量的承載能力。還是不用看每個虛擬機數量階段的性能差異,而是看差異變化的趨勢。我們會發現POWER系統基本可以得到線性的增長,至強5500系統在1和4個虛擬機時表現還不錯,甚至在4個虛擬機時與POWER的性能差距小于1個虛擬機的狀態,但到了6個和8個虛擬機之后,兩者的性能就開始拉大,也就意味著此時Hyper-V的虛擬化性能衰減開始越來越明顯。
以上測試基本能反應出了PowerVM與x86上的ESX、Hyper-V這幾個Hypervisor的效率差異,顯然,PowerVM在系統資源的調配與管理上要更為成熟高效些。
最后值得注意的是,PowerVM還具備x86 Linux直接兼容的能力,傳統在x86平臺上運行的Linux系統可以不改代碼運行在PowerVM環境中,而相對于POWER系統自身的Linux系統,性能衰減只有10%。
總結:PowerVM的價值不容忽視
通過以上的分析對比,我們可以感覺到IBM在虛擬化軟件和技術方面的優勢,以及在UNIX平臺上的虛擬化能力,但長久的平臺界限的劃分,讓大多數用戶忽略了這一點。不過,正像本文開頭所講的,虛擬化技術本身也在正使平臺的劃分開始模糊,而用戶也因此會越來越關注應用的運行環境而不再是硬件平臺。
這讓我們想起了IBM另一個引以為榮的產品——大型主機,而它早就以虛擬化技術聞名于天下,借助于兼容Linux系統,使得大型主機獲得了更廣闊的應用范圍,以及更強大的服務能力。而對于POWER系統來講,強大的裸機性能顯然是一個堅實的保障,在此基礎上的高效率的虛擬化平臺,也將讓POWER系統有機會向下染指x86的應用領地。
總之,當我們為x86平臺的性能獲得巨大進步而歡心鼓舞,并期盼其與UNIX系統一爭高小的同時,也不要忘了,虛擬化技術的出現,也讓服務器市場變化更為“虛幻莫測”,如果說x86通過增強性能與RAS特性而向高端進軍,那么UNIX小型機也完全可能借助于虛擬化向x86領地滲透,這在當前所倡導的數據中心大整合、應用平臺大融合的理念并不抵觸,就看能否找到其中那個“臨界點”,而在這里,IBM PowerVM的價值與能量顯然不可忽視!