針對Hyper-V伺服器虛擬化功能的推陳出新,是微軟發布Windows Server近期主要版本的重頭戲,一年前推出的Windows Server 2012 Hyper-V(Hyper-V 3.0),對虛擬化平臺規格的大幅擴充,讓原本市占遙遙領先的另一家競爭廠商VMware為之震動,一年後的現在,又即將推出Windows Server 2012 R2,在這麼短的時間內,微軟能推出的相關新功能有哪些?

首先,微軟在Windows Server 2012 R2 Hyper-V(以下簡稱為Hyper-V 3.0 R2)推出了第二代的虛擬機器(VM)規格。其次,是針對虛擬化環境下最重大的關鍵應用──VM的即時移轉,微軟也在新版Hyper-V提供兩種加速執行的方法。另一個值得關注的改進是虛擬磁碟的共用,Hyper-V現在能用這種方式,提供共享儲存,讓VM叢集環境的建立更簡易。

新功能1
提供新一代VM規格,改用純軟體式裝置,節省更多資源
Hyper-V 3.0 R2伺服器虛擬化平臺在VM的執行環境上,支援新的規格,微軟稱之為第二代VM(Generation 2 virtual machines),在這樣的環境下,搭配特定作業系統平臺的VM,將有機會去使用許多在新一代個人電腦硬體架構上才能應用的功能。

以去年推出的Windows 8和Windows Server 2012來說,這兩套作業系統都支援安全開機功能,但由於近期新購的電腦與伺服器的硬體,內建UEFI韌體介面的比例越來越高,在目前的虛擬化平臺所提供的VM當中,所配置的仍然是傳統BIOS韌體環境,所以若在VM裡面執行這兩套作業系統,由於沒有UEFI,因此無法啟動安全開機功能。而在Windows 8.1和Server 2012 R2之後,若安裝在微軟Hyper-V第二代VM環境,OS與硬體相互搭配後,就可以啟動安全開機。

此外,微軟之所以導入這樣的VM規格,可以獲得的另一個好處是提升I/O效能,以及免去已經很少用到的傳統裝置模擬,節省資源。

不論是VMware或微軟,目前VM本身提供的系統執行環境,都強調可模擬(emulated)沿用多年的x86個人電腦架構,因此模擬了BIOS韌體、Intel 440 BX晶片組,而在圖形顯示處理與網路介面的部份,Hyper-V分別模擬了S3 Trio的顯示卡和Intel/DEC 21140的網路卡。現在,微軟在新版Hyper-V平臺所支援的第二代VM環境下,已經取消這些舊型系統硬體的模擬裝置,取而代之的是合成驅動程式(synthetic drivers,需搭配Hyper-V Integration Services),以及軟體型態的裝置(software-based devices)。

合成驅動程式主要是指VM搭配的網路卡規格,微軟採用這種規格之後,在Hyper-V第二代VM環境將可支援IPv4與IPv6網路環境的遠端開機(Network Boot)。而軟體型態的裝置,是指鍵盤、滑鼠等輸入裝置,以及圖形顯示,都改用軟體裝置的形式讓VM使用,不再用模擬的方式,進一步節省資源。

此外,新一代VM環境不再支援軟碟,搭配的磁碟控制器與光碟機,也都從IDE介面換成SCSI。同理,Hyper-V的VM支援IDE儲存裝置直接開機,在新的VM環境下已經改為直接從SCSI裝置開機,完全不用IDE的介面與裝置規格,因此可支援從VHDX虛擬磁碟的直接開機

整體而言,Hyper-V支援的第二代VM環境,對於網路與磁碟存取規格的提升最為顯著,因此,建置VM內的系統時,若需透過網路開機執行作業系統的安裝,就可以利用新的網路卡與SCSI介面的磁碟裝置,來提升效率。

相較之下,目前通行的Hyper-V VM環境,雖然同樣支援從網路開機、安裝作業系統的模式,由於只能搭配模擬傳統規格的網路卡,以及IDE介面,完成建置系統的時間將多出50%。

值得注意的是,第二代VM環境支援作業系統平臺相當有限,只有64位元版本的Windows 8.0/8.1和Windows Server 2012/2012 R2,才可以完全相容。

新功能2
提供新的VM連線模式,VM系統內可存取連線端電腦本機的周邊裝置
在伺服器虛擬化環境當中,VM除了利用本身配備的處理器、記憶體、磁碟、網路卡等裝置之外,也需要存取外部周邊裝置,一般來說,不論是VMware或微軟的虛擬化平臺,VM都能夠直接存取實體主機的光碟機或磁碟上的ISO檔,以便安裝作業系統,但連接在實體主機上的其他周邊裝置,能否100%對應到VM內,各家虛擬化平臺上的支援程度,就可能有很大的差異。

在微軟先前的Hyper-V環境中,當我們從Hyper-V虛擬機器連線(Virtual Machine Connection,VM Connect)登入到VM的Console,只能將我們自己的電腦上的螢幕、鍵盤與滑鼠的輸入動作重新導引至VM內,而且這樣的重導機制,只能提供有限的複製、貼上功能;若要獲得更完整的重導效果,就必須透過遠端桌面連線(Remote Desktop Connection)連入虛擬機器,但這樣的作法要進行,使用者還必須預先知道虛擬機器所在的網路位址,才能登入。整體來說,都相當不便。

而Hyper-V 3.0 R2提供的虛擬機器連線,它所提供重導機制更完備,能讓執行連線端的電腦將本機裝置重導到VM內,因此連線至VM時,管理者操作其中的系統會有很大的便利,基本上,這項功能用起來的方式和遠端桌面連線的操作相當類似。

目前這套新的本機裝置重導,支援的類型有點超乎我們預期,總共有8種之多,包括了螢幕顯示組態、音訊、剪貼簿,以及磁碟機、USB裝置、印表機、智慧卡,並支援即插即用裝置(Plug and Play devices),其中磁碟機、USB裝置能對應到VM系統內,當然是日常操作時最迫切需要的功能,但令我們意外的是,這當中也支援了印表機和智慧卡,顯然這邊的強化也是為了提升桌面虛擬化環境下的使用體驗。

這項功能的正式名稱,微軟稱為「加強的工作階段(Enhanced Session Mode)」,目前支援該功能的作業系統只有Windows Server 2012 R2和Windows 8.1。值得注意的是,在兩個環境下的都是以Hyper-V管理員來設定,Windows Server 2012 R2預設停用該項目,而Windows 8.1預設啟用。

從Windows Server 2012 R2開始,當我們以虛擬機器連線連至VM時,不再用VM當中模擬的顯示卡、鍵盤與滑鼠,來呈現連線端與VM端之間的互動情況,而是改為透過VM作業系統中的遠端桌面服務(Remote Desktop Services,RDS)來彼此互動。

這麼做之後,可獲得的好處有很多,例如不論在連線端與VM端,你都能夠任意地複製、貼上檔案,同時也可以將VM端的音訊效果重導至連線端;對VM端而言,也可以藉此存取連接在連線端電腦的智慧卡與USB裝置。而且,就算這些VM本身沒有連接網路,我們一樣可以用這種方式,讓它們能夠存取到這些裝置,而不像過去必須要透過網路分享資料夾或裝置的方式,VM本身也要能連接區域網路,才可以存取到這些資源。

新功能3
加速VM線上即時遷移不是夢,可運用壓縮功能減少傳輸流量,或利用記憶體直接存取的網路傳輸技術
在Windows Server 2012 R2 Hyper-V中,微軟也提供方法來加速VM的線上即時遷移(Live Migration),其中一種機制稱為Compressed Live Migration,或Live Migration using compression of VM memory state,是在移轉過程中透過壓縮記憶體分頁資料的方式,減少傳輸流量,VM的線上遷移速度可增加兩倍。該功能預設是啟動的,要注意的部份是,壓縮作業執行的過程需要運算,因此VM線上遷移的速度提升幅度,也會與主機端的運算資源是否充裕有關。

Hyper-V另一項加速機制,是透過支援RDMA協定(Remote Direct Memory Access)機制的網路卡,系統將可藉此搭配SMB 3.0協定的支援(SMB Direct和SMB Multichannel),來加快VM搬移,吞吐量可高達56Gb/s,這稱為Live Migration over RDMA-enabled network adapters,裡面採用了SMB-Direct Live Migration的技術。運用支援RDMA的網路卡,在執行VM線上即時遷移時,可將電腦記憶體的資料,直接搬移到另一臺電腦的記憶體,中間不需經過電腦的作業系統存取,如此可減少處理器運算資源的耗用,透過這樣的網路傳輸方式,可達到高吞吐量與低延遲的VM轉移效果。

對於支援RDMA協定的網路介面,目前Windows Server 2012可以應用的類型,包括InfinBand、iWARP(Internet Wide Area RDMA Protocol)、RoCE(RDMA over Converged Ethernet)。

至於這項加速機制所搭配的SMB 3.0協定,裡面的SMB Direct又可稱為SMB over RDMA,顧名思義是指SMB 3.0支援RDMA網卡存取的一種功能,它可讓Hyper-V主機存取位於遠端的SMB 3.0檔案伺服器(Scale-Out File Server)時,就如同直接存取本機磁碟一樣。這項功能是在Windows Server 2012環境才開始支援的,需搭配支援SMB 3.0的用戶端與伺服器。

另一個SMB Multichannel,則是SMB 3.0協定中用來匯聚網路頻寬的功能,同時可針對SMB 3.0用戶端與伺服器,提供多路徑(multiple paths)網路環境的容錯處理功能。這項機制能充分利用網路頻寬,並且能迅速從網路故障中恢復,同時,它也能偵測RDMA網路卡是否啟動了SMB Direct,一旦確認網路介面支援RDMA功能,就會建立多個RDMA連線。這項機制和SMB Direct一樣,都是Windows Server 2012開始內建的。

若Hyper-V主機使用了RDMA網卡,並且執行VM的線上遷移,SMB 3.0的上述兩項功能可以啟動多個網路介面,讓這項搬移作業能夠運用,而因此可以獲得的效果,不光是線上遷移時間縮得更短,對執行這項作業的主機而言,它的處理器資源耗用也不會增加太多。實際上,這種作法有別於線上遷移的壓縮,壓縮是利用處理資源來降低網路頻寬的負荷,也就是將VM的記憶體壓縮後,再透過網路傳輸。

何時使用線上遷移壓縮?例如你的線上遷移的速度受到限制的主要因素是網路頻寬時,而Hyper-V主機本身的負載不繁重時,較適合進行。而使用SMB Direct和SMB Multichannel的時機,主要是Hyper-V主機如果處理器的使用率已經很高,同時你還擁有大量網路頻寬的情境。值得注意的是,兩者不能同時使用。

通常,假如VM線上遷移所用的網路是10GbE或是較慢的網路,你可能會用到壓縮的方式;不過若你的網路比10GbE快,你就可以透過支援RDMA的網路卡,以便利用SMB Direct和SMB Multichannel。

新功能4
虛擬磁碟也能做QoS:可輸入具體IOPS數值範圍,限定虛擬磁碟的服務品質

在Windows Server 2012 R2 Hyper-V的虛擬磁碟應用裡面,另一個新增的特色是儲存的服務品質管理(Storage QoS),該功能需從VHDX的層級設定啟動,作用是讓你能夠限制每個虛擬磁碟所能提供的IOPS(I/O operations per second),當虛擬磁碟的存取能力低於特定IOPS數值條件時,你也可以設定此時自動發出通知。至於在這個功能如何定義I/O量的基本單位?微軟目前在Windows Server 2012 Hyper-V中,固定將每個8K大小的資料視為1個I/O單位。

若這項特色用在IT基礎架構管理,針對不同的儲存存取作業時,IT人員可設定不同的服務等級協議(SLA),例如提供不同等級的租戶,代管業者可以用這來設定銅、銀、金等服務等級協議的儲存效能,甚至當VM無法在存取儲存系統時得到足夠的IOPS效能,可以設定觸發警報。

Storage QoS還可以用來限制所下轄的VM磁碟I/O吞吐量,能確保單一虛擬磁碟的儲存I/O吞吐量,不會衝擊到同一臺主機的其他虛擬磁碟,因此對於主機中某些I/O動作太過活躍的VM,該功能可避免整個儲存陣列的效能受到牽連。對代管業者而言,也就不必擔心出現單一租戶耗用過多儲存網路資源的狀況,而影響到付同等級租金的其他租戶。

不論VM目前是否處於啟動狀態,Storage QoS都可以設定,這給予管理者很大的彈性,他們可透過這項功能,在雲端環境中,隨時管理對於儲存裝置I/O的存取。

透過這樣的儲存服務品質管理,Hyper-V當中測量VM狀態的基礎設施也隨之更新,加入了儲存相關的參數,讓管理者能夠監控這方面的性能,同時根據這些參數來計費。

此外,若想要控制與查詢每臺VM用的虛擬硬碟IOPS數值上限,我們可以從WMI的介面,或者透過Windows PowerShell來操作。

新功能5
虛擬磁碟可設定由多臺VM共享,建立VM叢集環境將更為簡便
Windows Server 2012 R2在容錯移轉叢集(Failover Clustering)的環境中,新增了透過共享VHDX的虛擬磁碟格式檔,做到VM的叢集(guest clustering)。這項功能有助於代管服務廠商將本身的實體基礎架構(例如運算、儲存、網路),與租戶的虛擬資源之間維持彼此分離的狀態。

在先前版本的Windows Server,要做到嚴格的分離是不可能的,因為你必須將一個LUN配置給VM,因此當這些VM在執行作業系統的容錯移轉叢集功能時,能用它作為所需的共享儲存區,在Windows Server 2008 R2的環境中,VM的作業系統需執行iSCSI Initiator程式,來連接iSCSI儲存設備,然後在上面建立LUN,作為VM叢集的共享儲存。

 

到了Windows Server 2012,要建立這樣的VM有兩種簡易的方法,iSCSI Target軟體直接內建在容錯移轉叢集功能內,因此在VM叢集上使用共享儲存,更為簡便;另一種方法是Hyper-V內建了虛擬光纖通道卡,你可以在VM的作業系統中,直接透過光纖通道的儲存網路來連接LUN。因此在這個版本中,實作VM叢集時可用的共享儲存類型,有iSCSI的網路儲存、光纖通道網路儲存,或是Hyper-V over SMB 3.0。

但基於這種作法,VM叢集的作業系統仍需要直接連到實體基礎架構的儲存設備,例如iSCSI、光纖通道儲存網路上的LUN,這等於是讓實體基礎架構和VM叢集之間仍有縫隙可互通,彼此並非完全分離。

對代管服務者說,這會綁手綁腳,因為他們一旦變更實體的儲存架構,就會衝擊租戶的虛擬工作負載,也因此他們通常會不採用VM叢集的方式,因為這會讓他們難以將租戶的工作負載與實體架構區分開來。

而對於將工作負載遷移到雲端上的用戶,如果系統的高可用性是透過主機與VM的叢集所得到,也會難以達到上述的需求,導致用戶無法將工作負載遷移到雲端上,來簡化工作負載的維運與管理作業。所以,代管者想要同時提供主機與VM的叢集給的用戶,如果無法這麼做,也就等於失去潛在商機。

而在Windows Server 2012 R2當中,支援了在VM叢集環境下的VHDX共享功能,透過這項技術,代管者無需讓這些VM直接存取iSCSI Traget,或光纖通道儲存陣列的LUN,即可提供VM叢集環境,你將可以在代管者的雲上導入VM叢集,以便提供VM租用服務,同時也能使代管者的實體儲存架構,與租戶虛擬工作負載所耗用的儲存資源之間,彼此關係區隔開來,維持完全分離的狀態。對代管者而言,他們通常需要利用分離的網路,讓租用的VM能連上網路與使用儲存基礎架構,而且其中還包含安全與可靠度的理由。

一個VHDX檔案可分享給單臺或多臺VM,並且範圍不限單臺Hyper-V主機也可擴及多臺Hyper-V主機。

對主機而言,這些共享的虛擬磁碟,就像是連接在多個VM下,而且每臺VM在應用這些磁碟之前,基本上都擁有一個虛擬磁碟。對VM來說,這些共享的虛擬磁碟像是採用虛擬SAS介面的磁碟,可用於容錯移轉叢集環境下的共用儲存。而在VM叢集中的VM,依照不同的設定選項,可以共享一個或多個虛擬SAS磁碟。

在Windows Server 2012,容錯移轉叢集所用的共享儲存資料區,它背後的實體儲存可以用兩種方法實作出來。一是使用CSV磁碟作為區塊儲存,例如在Storage Spaces虛擬磁碟所產生的CSV磁碟上,放置共享的VHD檔;一是使用SoFS作為檔案儲存,這可以讓共享的VHDX檔能存放在SMB 3.0的共用資料夾。

這兩種方式來因應VM叢集所需的共用儲存時,等於讓用戶可利用低成本的儲存設備來取代昂貴的SAN解決方案。這些方法也讓你能夠用與單獨執行VM環境時的相同基礎架構,來提供VM叢集,換言之,你不需要專門搭配像是iSCSI、光纖通道SAN或Windows Server搭配微軟iSCSI Target軟體的儲存環境,也能實作VM叢集

在Windows Server 2012環境下,要實作VM叢集也很容易,你需要在資料區中建立一個新的VHDX檔,以便用在叢集環境需要的共用儲存區,接著開啟Hyper-V管理員的設定視窗,點選硬體類別下的SCSI控制器、選擇硬碟,然後在這個控制器下新增一個硬碟。接著瀏覽你剛剛建立的VHDX,點選這個硬碟下的進階功能選項,並勾選其中的啟用虛擬磁碟共用,最後點選套用變更的按鈕。這樣的步驟,重複在VM叢集中的每一臺VM下設定即可。

要注意的是,共用虛擬磁碟不能是作業系統主要執行檔所在的磁碟,而且檔案格式必須是VHDX,不能用先前的VHD,同時,這樣的虛擬磁碟需連接在VM的SCSI控制器,不能掛載在IDE控制器。

當你執行上述步驟時,在你選擇啟用虛擬磁碟共用前,都不要按下套用變更,否則,你必須從控制器中移除這個磁碟、重新選擇,才能再開始分享虛擬磁碟。


微軟Hyper-V與VMware vSphere的延展性規格比較

廠牌 規格項目 每臺實體主機 每臺虛擬機器 每個叢集
伺服器虛擬化平臺 邏輯處理器數量 記憶體最大容量 虛擬處理器最大數量 可同時執行的虛擬機器數量 虛擬處理器的最大數量 記憶體最大容量 虛擬網路介面數量 虛擬磁碟大小 可同時執行的主機數量 可同時執行的虛擬機器數量

Windows Server 2008 R2 Hyper-V

64顆  1TB 512顆 384臺 4顆 64GB 12個*  2TB(VHD) 16臺 1000臺
Windows Server 2012 Hyper-V

320顆  4TB 2048顆 1024臺 64顆 1TB 12個* 64TB(VHDX) 64臺 8000臺
Windows Server 2012 R2 Hyper-V

320顆  4TB 2048顆 1024臺 64顆 1TB 12個* 64TB(VHDX) 64臺 8000臺

vSphere 5.0

160顆  2TB 2048顆 512臺 32顆 1TB 10個 2TB(VMDK) 32臺 3000臺
vSphere 5.1

160顆  2TB 2048顆 512臺 64顆 1TB 10個 2TB(VMDK) 32臺 4000臺
vSphere 5.5

320顆  4TB 4096顆 512臺 64顆 1TB 10個 62TB(VMDK) 32臺 4000臺

註:其中4個為傳統網路卡。 資料來源: iThome整理,2013年9月

熱門新聞

Advertisement