對癥下藥 服務器虛擬化難題有解
上一篇焦點話題中(點擊),我們曾對目前服務器虛擬化在實施之前,及具體部署過程中遇到了問題進行了總結與分析,本文就將致力于破解這些挑戰,以幫助確實適用虛擬化技術的用戶能夠更放心、更輕松也更為堅定的邁上服務器虛擬化之路,接下來就讓我們依次對癥下藥吧:
一、如何界定適合實施虛擬化技術的服務器及應用?
嚴格意義上講,對于哪些應用適于做虛擬化,并沒有明確的定義,但可通過相應的原則來幫助我們過濾。這個原則主要就是應用對系統資源的需求情況,有些企業級應用對處理器資源占用率更大,可能還需要多臺物理服務器來支持,那就不太適合做虛擬化,因為虛擬化本身就是一個追求資源復用的技術,它適合整合那些平均處理器占用率略低的應用,比如在20%左右的應用,這樣一臺物理服務器可以整合4個這樣的應用,再留出20%的資源應對突發需求,就是一個比較好的解決方案。
當然,資源占用情況與用于承載應用的服務器的能力也是密切相關的,在計劃實施虛擬化時,不光要考慮應用對服務器的處理器、內存等資源的占用,還要考慮其在I/O方面的需求。根據這一原則,用戶應該選擇具備相應能力的服務器,由于它要當作多臺虛擬服務器使用,所以處理器與內存資源是首當其沖。比如運行企業關鍵應用的英特爾至強7500平臺,目前在8路配置上即可提供64個CPU核心和高達2TB的內存容量,這在x86服務器中是非常領先的,而其基于英特爾VT-d與VT-c實現的平臺內I/O與網絡互聯的虛擬化功能,也能大大提升了虛擬機的I/O能力。針對這一平臺,顯然適用于虛擬化的應用種類也就大大增多了。而對資源要求以及關鍵等級不高的應用,雙路平臺中,基于英特爾至強5600的服務器就完全可以勝任。總之,資源占用率與占用傾向(占用處理器資源、內存資源還是I/O資源?)是我們根據應用界定服務器是否有必要應用虛擬化技術的重要依據,也是我們做服務器選型時的重點參考。
二、是選小型機還是x86服務器來做虛擬化?
在虛擬化技術方面,x86架構的服務器陣營的確是后來者,但這并不代表它們在虛擬化應用上就是弱者,事實上隨著技術的進步,特別是這一領域的核心廠商英特爾推出了硬件輔助虛擬化,強化了性能和功能,并降低了虛擬化的性能開銷后,x86服務器的虛擬化能力就不再是一個疑問,而是一個肯定的回答了。事實上,現在所有的基于虛擬化技術的公共云(如Google、Amazon等)都是建立在x86平臺上的。而且與小型機平臺相比,英特爾至強 7500平臺新增了超過20個增強可靠性、可用性和可維護性的功能,已能提供與小型機相當的關鍵業務承載能力,也能為虛擬化提供堅實的硬件基礎,完全可以應用于金融、電信等高端核心業務的虛擬化整合領域。
因此,對于那些沒有小型機應用遺留與兼容問題困擾的用戶,現在完全可以考慮使用基于至強的x86平臺來做核心應用的虛擬化平臺,只有那些需要保留原有小型機應用的客戶,才有必要認真思考兩者間的取舍。
三、服務器虛擬化管理程序選誰的好呢?
目前主流虛擬化軟件提供商的方案大體功能正在趨于一致,但仍有各自的長處,例如:VMware在數據中心級的虛擬化解決方案占據領導地位;如果基于Windows平臺,那么微軟的方案則是近水樓臺先得月;在終端虛擬化方面,則是思杰的傳統強項。
在這些的虛擬化解決方案中,一定要注意的是它們對處理器硬件虛擬化輔助技術的支持,它將大大減少虛擬化的性能開銷,并更容易實現新的應用。比如英特爾面向處理器的VT-x、面向芯片組的VT-d和針對網絡適配器的VT-c虛擬化技術,他們都提供了獨一無二的全方位的硬件級虛擬化輔助能力,選用支持這些技術的虛擬化解決方案,將得到事半功倍的好處,甚至可以獲得一些"獨有"或額外的收益,比如思杰的XenClient終端虛擬化方案,就是借助于英特爾VT-d技術才能實現,它使得PC終端也能生成全功能的虛擬機,而不會造成本地3D顯卡與硬盤存儲方面的性能下降。
四、虛擬化之后的性能不理想?
如果排除之前應用是否適用于虛擬化的界定問題,那么出現這一現象的最大原因就是服務器的選型沒有與應用的資源占用傾向相掛鉤,也就是說用戶考慮得還不是很全面。很多人在做虛擬化時,只關注到了CPU與內存資源的占用,而沒有關注到與應用效率密切相關的I/O性能。我們不難想象當多個虛擬機共用一套物理存儲或網絡設備時的情況,這時就需要我們對平臺進行相應的配置。英特爾VT-d與VT-c技術,配合吞吐量更高的英特爾SSD(固態硬盤)與虛擬網卡解決方案將能有效解決這一問題,前者可以允許虛擬機直接訪問主板外設,比如硬盤,而SSD百倍于傳統硬盤的IOPS性能可以滿足同時多個虛擬機的并發訪問,VT-c則可以讓一塊網卡應對多個虛擬機的復用,讓網卡具備了多個虛擬端口的直通響應能力,這些都會大大提高的虛擬機I/O的性能與效率。
五、虛擬機遷移的靈活性如何保證?
虛擬機的實時遷移是虛擬化的一個重要的優勢,它為我們帶來了很多的應用想象空間,然而不同CPU平臺間的遷移的確面臨著因CPU指令集不同可能造成虛擬機與新的物理平臺不兼容的情況發生,所以當有這一需求時,一定要注意平臺相關技術的保障能力。
在這方面,英特爾的虛擬化技術就專門提供了一項針對此問題的技術--VT FlexMigration,借助這一技術,可以在遷移池中的不同服務器間建立起一組協調一致的指令集,以確保遷移的平滑進行,而不會因為虛擬機請求一個目的服務器所不支持的指令集功能而出現錯誤,從而讓虛擬機遷移的優勢發揮到最大。目前,VT FlexMigration支持自至強5100系列(2006年推出)及之后所有的處理器平臺間的虛擬機平滑遷移。
六、虛擬化將多個應用集中在一臺服務器上,可靠么?
經過多年的發展與技術上的進步,x86服務器已經越來越可靠,正如前文所述,基于至強7500的服務器在RAS特性(可靠性、可用性、可維護性)上已能達到與小型機相當的水平,再配合適合的操作系統,在這一點上已經無需用戶太過擔心,已有能力整合多個關鍵業務應用。當然,絕對可靠的系統并不存在,小型機也是如此,但不要忘了英特爾的VT-x、VT-d、VT-c等硬件虛擬化輔助技術,也讓運行在x86平臺上的虛擬機有了更多的"玩法",提供了物理服務器比不了的功能,比如跨越物理服務器局限的多點虛擬機快速災備功能,它在保證虛擬機的可用性的同時,借助虛擬機本身的優勢,也為IT架構注入了強大的靈活性,并將依此誕生全新的應用模式。
眼見之前列出的六大挑戰在眼前被一一破解,相信大家對服務器虛擬化技術也有了更強的信心,不過,在這些主要的挑戰之外,仍有很多細節性的問題需要解決,這還需要整個虛擬化產業界與用戶的進一步互動。同樣,本期《IT號外》的專家支招也不會就這樣結束,我們還摘錄了一篇有關英特爾頂尖虛擬化技術專家答疑解惑的文章分享給大家,敬請期待。
【編輯推薦】