具體來(lái)說(shuō),英特爾虛擬化技術(shù)Intel VT由VT-x、VT-d、VT-c三大部分組成,包括針對(duì)IA-32體系架構(gòu)處理器的VT-x技術(shù)、針對(duì)芯片組的VT-d技術(shù)以及針對(duì)網(wǎng)絡(luò)的VT-c技術(shù),另還有面向安騰處理器的VT-i虛擬化技術(shù)。VT-x是公認(rèn)最好的指令集,向Intel多個(gè)型號(hào)的處理器中增加了遷移、優(yōu)先級(jí)和內(nèi)存管理能力。相對(duì)而言,VT-d指令集改善了Intel芯片對(duì)虛擬化的支持能力,允許芯片組可以完成向特定虛擬機(jī)中分配某些特定的I/O設(shè)備資源。VT-c引入了對(duì)某些I/O設(shè)備,如網(wǎng)絡(luò)交換機(jī)的虛擬化支持。內(nèi)存的控制和管理在基于硬件的虛擬化過(guò)程中扮演了舉足輕重的作用。Intel VT-x指令集消除了基于軟件的資源分配方式時(shí)需要VMM干預(yù)所帶來(lái)的影響。而且在Extended Page Tables中加入了內(nèi)存管理功能,而這個(gè)功能是不同的虛擬機(jī)之間完成處理器資源控制權(quán)轉(zhuǎn)移時(shí)所必須的。
VT-x:
VT-x技術(shù)可減少VMM(虛擬機(jī)監(jiān)控程序)的干預(yù),提高基于軟件的虛擬化方案的靈活性與穩(wěn)定性,在需要VMM干預(yù)時(shí),實(shí)現(xiàn)更加快速、可靠和安全的切換。此外,英特爾VT-x還為VMM與客戶(hù)操作系統(tǒng)之間的傳輸平臺(tái)控制提供了有力的硬件平臺(tái)支持。英特爾VT-x技術(shù)包括英特爾虛擬化靈活性遷移技術(shù)(Intel VT FlexMigration)、英特爾VT FlexPriority、英特爾VT擴(kuò)展頁(yè)表(Extended Page Tables)。
英特爾VT FlexPriority 可創(chuàng)建 TPR(專(zhuān)用寄存器)的一個(gè)虛擬副本,減少處理器不必要的中斷次數(shù),從而顯著提升效率。此外,該虛擬副本還可由客戶(hù)操作系統(tǒng)進(jìn)行更改。
英特爾虛擬化靈活遷移技術(shù)(Intel VT FlexMigration)可實(shí)現(xiàn)基于英特爾處理器的當(dāng)前服務(wù)器與未來(lái)服務(wù)器之間的無(wú)縫遷移,即使新的系統(tǒng)可能包括增強(qiáng)的指令集也不例外。從而使管理程序能夠在遷移池內(nèi)的所有服務(wù)器中建立一套一致的指令,實(shí)現(xiàn)工作負(fù)載的無(wú)縫遷移。生成可在多代硬件中無(wú)縫運(yùn)行的靈活統(tǒng)一的服務(wù)器資源池。
眾所周知,在線(xiàn)運(yùn)營(yíng)基礎(chǔ)設(shè)施的維護(hù)與運(yùn)營(yíng)投入一直是運(yùn)營(yíng)商十分關(guān)心的問(wèn)題。國(guó)內(nèi)某知名信息技術(shù)有限公司在接受采訪時(shí)表示,曾經(jīng)由于硬件故障導(dǎo)致運(yùn)營(yíng)服務(wù)器宕機(jī),從而使在線(xiàn)用戶(hù)長(zhǎng)時(shí)間無(wú)響應(yīng)。而同一個(gè)應(yīng)用系統(tǒng)中承載用戶(hù)過(guò)多,也增大了可靠性的風(fēng)險(xiǎn)。
在采用了基于虛擬化2.0的英特爾虛擬化技術(shù)之后,該公司技術(shù)總監(jiān)表示,失效轉(zhuǎn)移全過(guò)程均可完全自動(dòng),無(wú)需人工干預(yù)。VT-x技術(shù)使得硬件失效后的切換時(shí)間大大縮短,僅為90~120秒,提升了響應(yīng)速度并進(jìn)而降低了整體投資成本。
VT-d:
英特爾VT-d 通過(guò)減少 VMM 參與管理I/O流量的需求,消除了大部分的性能開(kāi)銷(xiāo),從而加速數(shù)據(jù)傳輸。
VT-d支持由兩個(gè)主要類(lèi)別的軟件所組成的虛擬機(jī)架構(gòu):
虛擬機(jī)管理器(Virtual-Machine Monitor,VMM):虛擬機(jī)管理器就像是一個(gè)主機(jī),全面控制著處理器和其他平臺(tái)硬件。虛擬機(jī)管理器體現(xiàn)為客戶(hù)軟件和一個(gè)虛擬處理器,允許直接在邏輯處理器上執(zhí)行。虛擬機(jī)管理器能夠保留對(duì)處理器資源、物理內(nèi)存、中斷管理和I/O的選擇性控制。
客戶(hù)軟件:每個(gè)虛擬機(jī)就是一個(gè)客戶(hù)軟件環(huán)境,支持由一個(gè)操作系統(tǒng)和應(yīng)用軟件組成的棧。每個(gè)虛擬機(jī)獨(dú)立于其他虛擬機(jī)運(yùn)行,對(duì)物理平臺(tái)所提供的處理器、內(nèi)存、存儲(chǔ)、線(xiàn)卡和I/O使用相同的界面。這個(gè)軟件棧就好像運(yùn)行在一個(gè)沒(méi)有虛擬機(jī)管理器的平臺(tái)上。運(yùn)行在虛擬機(jī)中的軟件必須以降低的權(quán)限運(yùn)行,這樣虛擬機(jī)管理器就可以保留對(duì)平臺(tái)資源的控制權(quán)。
隨著業(yè)務(wù)量的增長(zhǎng)和有限IT預(yù)算壓力的增大,企業(yè)都希望能找到合適的解決方案,以有效管理大量的硬件服務(wù)器并使其資源得到充分利用。上海盛大網(wǎng)絡(luò)發(fā)展有限公司選擇采用基于英特爾虛擬化技術(shù)的虛擬化解決方案,其服務(wù)器資源利用率得到大幅度提升,從而令傳奇世界游戲服務(wù)器在虛擬化環(huán)境下可支持原有1.21倍的并發(fā)用戶(hù)。虛擬化環(huán)境消耗功耗僅為傳統(tǒng)環(huán)境的23.5%,還節(jié)約了大量的人工服務(wù)器維護(hù)成本。
盛大平臺(tái)運(yùn)營(yíng)部技術(shù)保障中心相關(guān)人士在接受采訪時(shí)表示:“基于英特爾至強(qiáng)處理器和英特爾虛擬化技術(shù)搭建的虛擬化解決方案,可以滿(mǎn)足傳奇世界一個(gè)獨(dú)立游戲區(qū)的性能和功能的要求,不但比傳統(tǒng)方式支持更高的同時(shí)在線(xiàn)用戶(hù)數(shù),而且能夠大大減少服務(wù)器運(yùn)營(yíng)所需的電能消耗。”
VT-c:
在集群和數(shù)據(jù)中心環(huán)境中,每臺(tái)服務(wù)器通常同時(shí)運(yùn)行大量的虛擬機(jī)。由于服務(wù)器的網(wǎng)絡(luò)設(shè)備數(shù)目有限,多個(gè)虛擬機(jī)不得不復(fù)用同一個(gè)網(wǎng)絡(luò)設(shè)備,從而導(dǎo)致性能下降。VT-c 包括兩項(xiàng)技術(shù)來(lái)優(yōu)化網(wǎng)絡(luò)性能:
虛擬機(jī)設(shè)備隊(duì)列(Virtual Machine Device Queues,VMDq)。如果以太網(wǎng)控制器支持VMDq技術(shù),VMM 可以為虛擬機(jī)使用不同的數(shù)據(jù)包隊(duì)列,以太網(wǎng)控制器自動(dòng)分類(lèi)數(shù)據(jù)包并投放到相應(yīng)的隊(duì)列中,大大減輕VMM的負(fù)擔(dān),提高了I/O吞吐量。
虛擬機(jī)直接連接(Virtual Machine Direct Connect,VMDc)。通俗地說(shuō),支持該技術(shù)的網(wǎng)絡(luò)設(shè)備能夠?qū)ν庹宫F(xiàn)出多個(gè)虛擬功能接口。每個(gè)功能接口相當(dāng)于一個(gè)網(wǎng)絡(luò)設(shè)備,VMM可將其直接分配給虛擬機(jī),從而“避免”了網(wǎng)絡(luò)設(shè)備的復(fù)用。
在虛擬化的使用中,虛擬機(jī)管理器是平臺(tái)基礎(chǔ)架構(gòu)的一個(gè)關(guān)鍵組成部分。VT技術(shù)可以通過(guò)編程界面虛擬化處理器硬件來(lái)提高虛擬化基礎(chǔ)架構(gòu)軟件的可靠性和可支持性,還為平臺(tái)中其他硬件組件的額外虛擬化支持奠定了基礎(chǔ)。
英特爾VT虛擬化技術(shù)給人們帶來(lái)了驚喜,它讓我們可在硬件級(jí)別上完成計(jì)算機(jī)的虛擬化工作,這讓更多的用戶(hù)都能涉足到新技術(shù)的應(yīng)用,大大提高了用戶(hù)使用CPU的效率??梢钥闯觯布?jí)別的虛擬化技術(shù)將是未來(lái)計(jì)算機(jī)發(fā)展的方向。