但進化論對于人類的震動不僅僅局限于生物界,實際上,在100年之后,達爾文最大的貢獻還在影響著我們:進化亙古不變,變化永遠會讓人意想不到。
虛擬化也是如此,對于任何愿意追溯虛擬化發展歷程的人來說,虛擬化甚至可以追溯到幾十年前的分時系統,而在最近幾年,這變化來的更快,我們在不長的時間內看到了虛擬化從純軟件到處理器級虛擬化,到平臺虛擬化、數據中心虛擬化乃至輸入/輸出級虛擬化的快速演變,而在這其中,我們相信并已經看到,英特爾成為了這場“進化”的主要推動者和參與者。
開始于“X”的腳步
無論是對于服務器還是虛擬化,整個數據中心的焦點已經從“更快的性能”走向了合理的性能、合理的功耗、合理的利用以及合理的管理,曾經那些唯速度論和唯性能論的擁躉者們已經明白,性能再高速度再快,無法利用無法管理都將毫無作用,由此,隨著人們意識與技術的“進化”,虛擬化技術幾乎是以一種自a然而然的形式出現在了我們面前——就像進化論中所言:猿開始直立行走,人類也便出現了。
對于虛擬化技術來說,無論是軟件還是硬件輔助的解決辦法,其目的和作用都是一樣的,都以提高IT系統利用率、大幅降低成本、提高可管理性和建立完善的合作的整體化系統作為其第一要務的,但問題是,就像我們無法用軟件代替硬件的性能增長一樣,我們僅靠VMware和Xen是無法解決我們所有的虛擬化問題,并獲得最強大的虛擬化支持的——對于虛擬化的擁躉者來說,硬件輔助虛擬化尤其是處理器的指令集層面的優化因此顯得尤為重要。
大概五年前,英特爾的一些工程師認為,虛擬化不應該僅僅局限于軟件層面,“英特爾也應該做些事情,尤其是在處理器層面。”在幾年后的一屆IDF上談到英特爾的虛擬化進程時,一位英特爾院士向我們表示:“當時我們很大膽,但是我們確實做對了。”——從2005年底開始,英特爾推出Intel-VT虛擬化技術,這是一種從硬件層面在芯片級上的對虛擬化解決方案提供支持的技術,它為CPU虛擬化提供了芯片級支持,并能實現額外的平臺功能和安全性。
英特爾的第一代虛擬化技術被稱為“VT-x”,雖然英特爾官方一直表示其中的x代表的是VT-x技術的面向產品“x86”(for x86),但是,一向以x為研發實驗代號的美國航空航天局令我們相信,這個x代表著一種未知和全新的開拓。
對于VT-x來說,無論是英特爾還是用戶們都可以提出一系列的好處,其中包括:允許將多個應用程序整合到虛擬環境、允許 64 位 OS 和應用程序與當今最流行的虛擬軟件一起運行、可以在 Windows上運行 Linux,也可以在 Xen上運行 Windows,但是,英特爾的院士們的想法很簡單:可提供比非硬件輔助虛擬環境更出色的性能——在2008年春季IDF上提及“x”的時候,英特爾的院士頗有趣的說到:我們當時就相信,這是我們的最大也是最完美的目標。
其實,從“x”開始的英特爾虛擬化技術,卻是配的上這個x,因為,英特爾和它的院士們是第一群覺得處理器可以對虛擬化產生影響的人,這些人將x變成了VT-x,而不僅僅是代表未知的字母。
已近完美的“VT”家族
雖然在我們常見的x86架構上,核心指令集已經幾乎20年都沒有什么變化了,但英特爾卻一直在往其中添加重大的技術改進,使其繼續保持著新鮮和活力,虛擬化就是一個英特爾得以保持新鮮活力的技術,而從VT-x開始的英特爾虛擬化之路,正在一步步的成為一個幾近完美的“家族”。
最開始發布的Intel-VT技術僅僅是處理器指令集上的幾個改變,但就是這幾個改變,讓英特爾在過去的三年間“進化”出了一個幾近完美的“VT”家族,目前,英特爾不僅有針對CPU虛擬化的VT-X(X86平臺)和VT-I(安騰平臺)技術,也有針對芯片組的VT-D,還有這種最新的針對網絡I/O連接的虛擬化技術VT-C——VT-C技術可以通過主板上的芯片來實現,也可以通過網卡上的芯片來實現,過不了幾個月我們就會看到英特爾新的Tylersburg平臺就會開始支持VT-C技術。
除了VT-C之外,我們還不得不提一下VT-d,對于很多人來說,這個今年3月才發布的技術著實讓人眼前一亮,其地位甚至可以稱之為虛擬化業界的蒸汽機,對于英特爾I/O虛擬分配技術(Intel VT-d)來說,在向虛擬機或分區分配I/O設備時,該技術可以提供硬件支持。同時,該技術還可以提升虛擬化環境中數據移動的性能和穩定性。Vmware的前總裁Diane Greene對這項技術的評價是:“使虛擬化技術更加靈活和強大。”對于這項技術的前景,英特爾的工程師們相信,通過使用硬件輔助重映射進行設備隔離,將能夠提升可靠性和安全性,并通過直接分配設備來提高 I/O 性能和可用性,未來將“前途無量”。
對于英特爾來說,對于處理器指令集以及諸多技術的挖掘改進,首先從性能層面為虛擬機(VMM)提供了更大的拓展空間,以VT-c為例,根據DEMO演示,在一臺運行8個VMWARE虛擬機的系統上,如果沒有采用英特爾的VMDQ(虛擬化設備隊列)技術,萬兆以太網的帶寬是4GB/s,而如果有了這個技術,就能夠達到9.2GB/s——在DoSERV服務器論壇上一位用戶簡單的測試了開啟VT狀態下的虛擬機的性能,他的答案是:在開啟VT的狀態下,幾乎所有項目都要高出25%左右!VT給予他的是“這個數值已經是很讓人吃驚的了!”的驚嘆。
談到此處,我們沒有過多的談及英特爾虛擬化技術的“性能增強是如何實現的?”以及“到底它的原理是什么?”或“英特爾添加了什么指令集?”這樣的問題,事實上,我們也并不想談這樣的問題,這就像英特爾一直做的:無論技術實現如何,只要用得上用的好就可以了——誰會去關心到底指令集是什么東西?
對于英特爾來說,隨著至強5300、5400、7300以及安騰9100等一系列處理器全面應用虛擬化技術,虛擬化將全面的進入服務器的硬件層,而不僅僅是Hyper-V或是純軟件的解決方案,尤其是在伴隨著與Vmware等虛擬化領先公司的充分合作,這場進化還遠遠沒有結束,如果說VT-d像蒸汽機一樣引領了虛擬化業界的“工業革命”,那么,在合作伙伴口中稱之為“英特爾公司提供了一個強大的虛擬化基礎架構,該架構充分利用了VMware在為英特爾架構提供高性能的虛擬化產品方面的長期領先優勢。”的帶動下,我們正等待著另一場全新的革命——在人類的進化史上,我們正在經歷著數字革命,而虛擬化業界也將隨著進化的腳步從“工業革命走向數字革命”。
因為,進化永不停止。


