Hyper-V 2012 R2:第一代與第二代虛擬機(jī)優(yōu)缺點比較
譯文四個月前,微軟在TechED 2013年大會上宣布了Windows Server 2012 R2,預(yù)計會在今年年底之前批量上市。微軟為在Windows Server 2012 R2版本上運(yùn)行的Hyper-V推出了許多新的功能特性以及針對現(xiàn)有版本的改進(jìn)。
在之前版本的Hyper-V中,不可能從SCSI虛擬硬盤啟動虛擬機(jī)。要是虛擬機(jī)里面沒有網(wǎng)絡(luò)連接,也不可能將文件從一個Hyper-V主機(jī)拷貝到虛擬機(jī)。
實際上,Hyper-V BIOS并不意識到SCSI控制器,除非你安裝了Integration Services(集成服務(wù))組件。在基于Windows Server 2012及早期版本上運(yùn)行的虛擬機(jī)中,Hyper-V BIOS只支持傳統(tǒng)驅(qū)動程序,比如IDE控制器和傳統(tǒng)網(wǎng)絡(luò)適配器(Legacy Network Adaptors),這讓虛擬機(jī)可以直接從傳統(tǒng)IDE控制器來進(jìn)行啟動。
從Windows Server 2012 R2開始,有兩種類型的Hyper-V啟動架構(gòu)可供使用:Hyper-V BIOS和Hyper-V統(tǒng)一可擴(kuò)展固件接口(UEFI)BIOS。在Windows Server 2012 R2上運(yùn)行的Hyper-V現(xiàn)在支持兩種類型的虛擬機(jī):第一代虛擬機(jī)和第二代虛擬機(jī)。
使用第一代架構(gòu)創(chuàng)建的虛擬機(jī)支持傳統(tǒng)驅(qū)動程序,并使用基于Hyper-V BIOS的架構(gòu)?;贖yper-V BIOS的虛擬機(jī)只能對IDE控制器進(jìn)行初始化,以便操作系統(tǒng)對文件系統(tǒng)進(jìn)行初始化,這個過程如下圖所示:
另一方面,使用第二代架構(gòu)創(chuàng)建的虛擬機(jī)支持基于UEFI的架構(gòu);在這種架構(gòu)中,已包含集成服務(wù)組件的一個子集,以便操作系統(tǒng)開始裝入之前,讓SCSI控制器可以進(jìn)行初始化。這個過程如下圖所示:
你在上面這個屏幕截圖中看到,第二代虛擬機(jī)不再裝入傳統(tǒng)驅(qū)動程序(IDE和傳統(tǒng)網(wǎng)絡(luò)適配器)。絕大多數(shù)傳統(tǒng)驅(qū)動程序已從使用第二代架構(gòu)創(chuàng)建的虛擬機(jī)中清除出去,但是已包含集成服務(wù)組件的一個子集,以便啟動時以及控制權(quán)返回給操作系統(tǒng)之前實現(xiàn)初始化。這包括在操作系統(tǒng)開始裝入之前初始化和裝入SCSI控制器驅(qū)動程序。
第二代架構(gòu)具有的優(yōu)點
較之第一代虛擬機(jī),第二代虛擬機(jī)提供了下列功能:
·從SCSI虛擬硬盤啟動的功能
在之前版本的Hyper-V中,不可能從SCSI虛擬硬盤進(jìn)行啟動。由于Windows Server 2012 R2中支持從SCSI虛擬硬盤進(jìn)行啟動,所以現(xiàn)在不僅可以從SCSI虛擬硬盤進(jìn)行啟動,還可以將頁面文件遷移到SCSI虛擬硬盤。
將頁面文件遷移到SCSI虛擬硬盤的功能有助于為經(jīng)常需要分頁操作的應(yīng)用程序改善整體性能。
·PXE啟動選項
在之前版本的虛擬機(jī)中,如果你想使用網(wǎng)絡(luò)啟動安裝操作系統(tǒng),你在安裝操作系統(tǒng)之后就需要安裝傳統(tǒng)網(wǎng)絡(luò)適配器。要是有了第二代虛擬機(jī),現(xiàn)在就可以通過使用PXE啟動選項,連接至遠(yuǎn)程安裝服務(wù)(Remote Installation Service),就可以安裝訪客操作系統(tǒng)。
·安全啟動
安裝啟動(Secure Boot)默認(rèn)情況下已為第二代虛擬機(jī)啟用,這項功能有助于防止未經(jīng)授予的固件或UEFI驅(qū)動程序在系統(tǒng)啟動時運(yùn)行。虛擬機(jī)被創(chuàng)建之后,可以改動這個選項。
·更快的啟動時間、更迅速地安裝訪客操作系統(tǒng)
第二代虛擬機(jī)的啟動時間現(xiàn)在最多快了20%;另外,使用第二代架構(gòu)在虛擬機(jī)中安裝訪客操作系統(tǒng)并不耗用同樣長的時間。實際上,在第二代架構(gòu)下安裝訪客操作系統(tǒng)快了50%!
·啟動時直接支持VMBUS
第二代虛擬機(jī)在啟動時為VMBUS驅(qū)動程序提供了支持。在之前版本的虛擬機(jī)或使用第一代架構(gòu)的虛擬機(jī)中,虛擬機(jī)只能裝入傳統(tǒng)IDE驅(qū)動程序,以便對文件系統(tǒng)進(jìn)行初始化。只有在集成服務(wù)被安裝到虛擬機(jī)中后,才可以使用SCSI控制器。
在第二代架構(gòu)中,操作系統(tǒng)被提供了Synthetic驅(qū)動程序,這些驅(qū)動程序讓操作系統(tǒng)能夠在啟動時使用SCSI驅(qū)動程序。使用第一代架構(gòu)創(chuàng)建的虛擬機(jī)總是會使用Device Emulation(設(shè)備仿真),除非已安裝了集成服務(wù)組件。
由于使用第二代架構(gòu)的虛擬機(jī)可以從SCSI驅(qū)動程序啟動,所以不再需要仿真了。這些虛擬機(jī)可以高效地使用VSP/VSC和VMBUS設(shè)計,與父分區(qū)進(jìn)行聯(lián)系。
·較少的設(shè)備
較之第一代虛擬機(jī),在第二代虛擬機(jī)中運(yùn)行的設(shè)備數(shù)量比較少。這是由于擯棄了支持所有仿真的驅(qū)動程序(比如IDE和傳統(tǒng)網(wǎng)絡(luò)適配器)這一功能,取而代之的是支持VMBUS驅(qū)動程序。
第二代虛擬機(jī)的要求
在你擁有第二代虛擬機(jī)之前,訪客操作系統(tǒng)必須運(yùn)行下列其中一個操作系統(tǒng)版本:
·Windows Server 2012
·Windows Server 2012 R2預(yù)覽版
·64位版本的Windows 8
·64位版本的Windows 8.1預(yù)覽版
如何創(chuàng)建第二代虛擬機(jī)?
添加第二代虛擬機(jī)的功能已經(jīng)被添加到Windows Server 2012 R2的New Virtual Machine(新建虛擬機(jī))向?qū)е?。你在向?qū)Р僮鬟^程中面臨一個選項:選擇哪一代虛擬機(jī),如下面這個屏幕截圖所示:
注意:一旦虛擬機(jī)被創(chuàng)建,就不可能更改哪一代。
你還可以并行運(yùn)行第一代虛擬機(jī)和第二代虛擬機(jī)。凡是不支持第二代虛擬機(jī)的訪客操作系都必須使用第一代這個選項來加以安裝。
你創(chuàng)建第二代虛擬機(jī)時,添加了SCSI控制器,基本VHD被分配給SCSI控制器的位置0。正如你在下面使用第二代架構(gòu)創(chuàng)建虛擬機(jī)的屏幕截圖中看到的那樣,基本VHD(VM2.VHDX)被分配給了EFI SCSI設(shè)備。
你還會注意到,較之第一代虛擬機(jī),第二代虛擬機(jī)里面的配置選項比較少。根本沒有添加/配置IDE控制器的選項。
http://www.serverwatch.com/server-tutorials/hyper-v-2012-r2-pros-and-cons-of-generation-1-vs.-generation-2-vms.html