牛曉晨
基于Hyper-V的桌面虛擬化技術(shù)研究與實現(xiàn)
牛曉晨
針對高校實驗室在計算機(jī)管理和使用中所遇到的問題,討論了基于Hyper-V的桌面虛擬化技術(shù)。在介紹了虛擬化和桌面虛擬化技術(shù)的概念和功能的基礎(chǔ)上,重點闡述了虛擬桌面基礎(chǔ)結(jié)構(gòu)的組成要素和架構(gòu)體系,并結(jié)合實驗室具體情況給出了應(yīng)用案例。通過桌面虛擬化技術(shù),既保護(hù)了學(xué)校的投資,又減少了管理人員的勞動強(qiáng)度和運維成本。
Hyper-V;桌面虛擬化;虛擬桌面基礎(chǔ)結(jié)構(gòu)
隨著計算機(jī)技術(shù)的飛速發(fā)展,近幾年高校的信息化建設(shè)也處在穩(wěn)步發(fā)展階段。由于校園網(wǎng)絡(luò)的日趨完善、大型數(shù)據(jù)中心的建立和各種應(yīng)用系統(tǒng)的使用,使得個人計算機(jī)成為高校實驗教學(xué)中必可少的工具。但在計算機(jī)的使用、維護(hù)和管理方面也暴露出很多問題:首先,是多年前購置的機(jī)器,其配置性能已無法滿足當(dāng)前新系統(tǒng)、新軟件的要求;其次,是系統(tǒng)和應(yīng)用軟件維護(hù)管理困難,不同的課程可能需要不同的系統(tǒng)環(huán)境和實驗環(huán)境;最后,就是無法滿足移動學(xué)習(xí)的需求,學(xué)生實驗課上沒有完成的實驗,課后由于實驗環(huán)境不具備而無法在其它電腦上繼續(xù)學(xué)習(xí)。針對這些情況,桌面虛擬化技術(shù)應(yīng)運而生,提供了優(yōu)秀的解決方案。
虛擬化技術(shù)是自上世紀(jì)九十年代以來蓬勃興起的技術(shù),經(jīng)過幾十年的發(fā)展,如今的虛擬化技術(shù)已相當(dāng)?shù)某墒欤瑧?yīng)用十分廣泛。虛擬化技術(shù)是一種計算機(jī)硬件資源的調(diào)配方法,它可以讓資源更合理地被利用,通過虛擬化技術(shù)可以將一臺單獨的計算機(jī)資源分配到若干個虛擬機(jī)上,每個虛擬機(jī)都有其各自的CPU、內(nèi)存和硬盤等物理資源[1]。這些虛擬機(jī)之間是相互獨立的,可以安裝不同的操作系統(tǒng),從而使得不同的虛擬機(jī)可以支持不同的應(yīng)用系統(tǒng)。通過虛擬化技術(shù)虛擬出來的機(jī)器在性能上與同配置的物理機(jī)完全一樣,而且其CPU、內(nèi)存、磁盤等硬件資源可以根據(jù)運行情況動態(tài)地增減。虛擬化技術(shù)的應(yīng)用使得物理服務(wù)器的硬件利用率最大化,減少了物理服務(wù)器數(shù)量,降低了能耗和運營成本。
Hyper-V是微軟的一款虛擬化產(chǎn)品,是微軟第一個采用類似Vmware和Citrix開源Xen一樣的基于Hypervisor的技術(shù)[2]。Hypervisor是一種控制程序,一般被稱為超級管理程序,它被設(shè)計并插入到操作系統(tǒng)層與硬件層之間,其作用是將硬件層抽象出來,實現(xiàn)物理虛擬化,使操作系統(tǒng)不需要知道自己運行在何種硬件之上[3]。Hypervisor的架構(gòu)類型一般分為二種,一種是直接運行在服務(wù)器硬件之上的,被稱作裸金屬架構(gòu),如圖1所示:

圖1 裸金屬架構(gòu)
這種架構(gòu)的虛擬化不需要操作系統(tǒng)的支持,直接對硬件實現(xiàn)控制并管理虛擬機(jī),從而實現(xiàn)了更優(yōu)的硬件控制、更穩(wěn)定的性能和更高的安全性。Hyper-V的虛擬化架構(gòu)就采用的是這一種。另一種是運行在操作系統(tǒng)之上,被稱作寄居架構(gòu),如圖2所示:

圖2 寄居架構(gòu)
Hypervisor作為一種應(yīng)用程序在運行,虛擬機(jī)則運行在它的上面。這種架構(gòu)的虛擬化相比于前一種,其硬件資源開銷大,受所在的操作系統(tǒng)影響大。平時個人PC上裝的虛擬化產(chǎn)品VMware Workstation就屬于此類架構(gòu)。
Hyper-V目前最新版本是3.0,其對物理主機(jī)支持多達(dá)320顆邏輯處理器、4TB內(nèi)存,對虛擬機(jī)最大可分配64顆虛擬處理器和1TB內(nèi)存,允許一臺物理主機(jī)上最多運行1024臺虛擬機(jī)[4]。
桌面虛擬化技術(shù),它是虛擬化技術(shù)在應(yīng)用層面的一個分支,采用客戶端/服務(wù)器(C/S)模式將個人計算機(jī)桌面環(huán)境與物理機(jī)器分開。用戶可以在任何時間、任何地點通過客戶端設(shè)備(瘦客戶機(jī)或是普通PC)使用遠(yuǎn)程連接協(xié)議與遠(yuǎn)程虛擬桌面進(jìn)行連接,使用上用戶訪問的這些遠(yuǎn)程桌面就像是訪問本地桌面一樣。
目前,國內(nèi)外主流的桌面虛擬化技術(shù)是采用基于虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI,Virtual Desktop Infrastructure)的解決方案,此方案主要包括3大關(guān)鍵技術(shù):服務(wù)器虛擬化技術(shù)、遠(yuǎn)程連接協(xié)議和用戶個性化配置[5]。作為桌面虛擬化技術(shù)的引領(lǐng)者微軟,其在VDI中采用的服務(wù)器虛擬化技術(shù)是Hyper-v,遠(yuǎn)程連接協(xié)議采用的是RDP協(xié)議。
2.1 虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI)組成要素
Microsoft虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI)主要由RD Web訪問、RD網(wǎng)關(guān)、RD授權(quán)、RD連接代理、RD虛擬化主機(jī)和RD會話主機(jī)這六個角色組成,如圖3所示:

圖3 微軟虛擬桌面基礎(chǔ)結(jié)構(gòu)組成要素
RD Web訪問:支持用戶通過運行Windows的計算機(jī)使用瀏覽器訪問遠(yuǎn)程的虛擬應(yīng)用程序和虛擬桌面池。它是用戶訪問虛擬化服務(wù)的一個總?cè)肟冢械挠脩舳际峭ㄟ^域名訪問RD Web服務(wù)器,通過認(rèn)證后,RD Web服務(wù)器根據(jù)用戶的訪問權(quán)限,將其能夠訪問的資源展現(xiàn)給他們。
RD網(wǎng)關(guān):讓獲得授權(quán)的用戶可以從任何連接到Internet的設(shè)備訪問到企業(yè)內(nèi)部網(wǎng)絡(luò)中的虛擬化資源。如果用戶與桌面虛擬化各角色服務(wù)器處于同一網(wǎng)段,可以不使用RD網(wǎng)關(guān);如果不在同一網(wǎng)段或在VDI架構(gòu)中有防火墻保護(hù),則必須使用該角色。
RD連接代理:允許用戶重新連接到其現(xiàn)有的虛擬機(jī)或基于會話的桌面;在RD虛擬化主機(jī)服務(wù)器之間或RD會話主機(jī)服務(wù)器之間均勻分布負(fù)載;提供對虛擬機(jī)集合中虛擬機(jī)的訪問權(quán)限。RD連接代理是VDI架構(gòu)中的核心角色。
RD虛擬化主機(jī):與Hyper-V集成,以承載虛擬機(jī)并以虛擬機(jī)的形式將它們提供給用戶。可以為每個用戶分配一個唯一虛擬機(jī),或者為他們提供一個虛擬機(jī)池來共享訪問。
RD會話主機(jī):支持服務(wù)器承載基于Windows的程序,也就是應(yīng)用程序虛擬化。用戶可連接到RD會話主機(jī)服務(wù)器來運行其上的應(yīng)用程序(如Office)和保存文件到服務(wù)器上。
RD授權(quán):管理連接到RD會話主機(jī)服務(wù)器或虛擬桌面所需的許可證。用戶遠(yuǎn)程連接到虛擬桌面是要有許可授權(quán)的,許可證可以表明該VDI架構(gòu)中可允許多少個用戶同時連接。如果沒有許可證,RD虛擬化主機(jī)和RD會話主機(jī)可以允許用戶不受限制地使用90天。
2.2 虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI)分析
通過Microsoft虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI)可以交付桌面和應(yīng)用程序,而不會影響合規(guī)性。應(yīng)用程序和數(shù)據(jù)都保留在數(shù)據(jù)中心內(nèi),從而減少因設(shè)備丟失和被盜而造成的信息丟失風(fēng)險。VDI的基本體系架構(gòu)如圖4所示:

圖4 VDI架構(gòu)圖
VDI的整體架構(gòu)可分為四部分:前臺用戶交互區(qū)(RD Web訪問和RD網(wǎng)關(guān))、中間核心連接區(qū)(RD連接代理和AD域控)、后臺虛擬服務(wù)提供區(qū)(RD虛擬化主機(jī)和RD會話主機(jī))以及輔助區(qū)(RD授權(quán)和服務(wù)器管理主機(jī))。域是Windows網(wǎng)絡(luò)操作系統(tǒng)的邏輯組織單元,在Windows網(wǎng)絡(luò)操作系統(tǒng)中,域是安全邊界。Windows域的核心價值是身份驗證系統(tǒng),從出現(xiàn)到現(xiàn)在已經(jīng)有15年的時間,從最初單純的身份驗證功能到現(xiàn)在的企業(yè)管理中樞,域已成為Windows網(wǎng)絡(luò)系統(tǒng)的基礎(chǔ)架構(gòu)平臺[6],因此VDI架構(gòu)中AD域控角色是必不可少的。
結(jié)合圖4,簡要分析一下在VDI架構(gòu)中,終端用戶是如何訪問到虛擬桌面的。首先,用戶從終端(可以是任何能使用IE的PC、筆記本和平板等設(shè)備)通過IE瀏覽器訪問RD Web訪問服務(wù)器,用戶在認(rèn)證界面輸入域用戶名和密碼。RD Web訪問將用戶名和密碼發(fā)往AD域控進(jìn)行認(rèn)證,認(rèn)證通過后,根據(jù)該用戶的權(quán)限信息從RD連接代理那里獲得該用戶可以訪問的虛擬桌面池和虛擬應(yīng)用池信息,然后,將這些虛擬資源信息再通過網(wǎng)頁形式反饋給用戶。用戶點擊選擇自己所需的虛擬桌面池發(fā)起連接請求,此時用戶的連接請求將通過RD網(wǎng)關(guān)發(fā)給RD連接代理。RD連接代理根據(jù)請求與后臺的RD虛擬化主機(jī)聯(lián)系,此時RD虛擬化主機(jī)會與RD授權(quán)聯(lián)系,查看是否有相應(yīng)的許可證信息,如果有且沒有達(dá)到許可證允許的連接數(shù)上限,則允許RD連接代理在主機(jī)上相應(yīng)的虛擬桌面池中查找是否還有空余的虛擬機(jī)可用。如果池中還有空余資源,RD虛擬化主機(jī)則啟動該虛擬機(jī),并通過RD連接代理將該虛擬機(jī)的IP地址信息反饋給RD網(wǎng)關(guān),如果沒有則反饋相關(guān)錯誤信息。RD網(wǎng)關(guān)收到IP地址信息后,使用該用戶的域用戶名和密碼登錄該虛擬桌面,至此用戶便通過RD網(wǎng)關(guān)完成了虛擬桌面的登錄和控制使用。
通過以上分析,可以看出用戶只能看到VDI前臺用戶交互區(qū)的RD Web訪問和RD網(wǎng)關(guān),其余VDI架構(gòu)成員對用戶都是透明的;而中間核心連接區(qū)的AD域控和RD連接代理完成了用戶身份的認(rèn)證、虛擬化資源信息查找與反饋、虛擬桌面連接和負(fù)載均衡等工作;后臺服務(wù)提供區(qū)的RD虛擬化主機(jī)和RD會話主機(jī)則主要完成虛擬機(jī)等虛擬化資源的提供;輔助區(qū)的RD授權(quán)和服務(wù)器管理主機(jī)主要完成虛擬桌面授權(quán)和VDI成員服務(wù)器的管理。
3.1 問題的提出
本校的計算機(jī)基礎(chǔ)實驗教學(xué)中心成立于1997年,經(jīng)過多年的建設(shè)發(fā)展,中心擁有的機(jī)器數(shù)量和性能都有很大的提高,但仍有少量03年采購的DELL臥式機(jī)在用。中心每年承擔(dān)著全校各專業(yè)的基礎(chǔ)類實驗上機(jī)任務(wù),其中包括有大學(xué)生計算機(jī)文化基礎(chǔ)課,隨著計算機(jī)技術(shù)的迅猛發(fā)展,課程講授的內(nèi)容也逐漸向最新的操作系統(tǒng)和應(yīng)用軟件方面過渡,如講解Win8、Office2013等。而這批老舊機(jī)器已無法滿足該門課程的上機(jī)實驗要求,基本處于閑置狀態(tài)。從虛擬桌面基礎(chǔ)架構(gòu)中可以看出,虛擬桌面的計算資源和存儲資源都使用的是服務(wù)器端資源,所以對客戶端的計算機(jī)配置要求很低,因此一些配置老舊的機(jī)器完全可以通過使用桌面虛擬化技術(shù)來重新得到使用。
目前,計算機(jī)學(xué)院的云計算機(jī)應(yīng)用實驗中心為虛擬化服務(wù)配置有IBM x3850 X5高性能服務(wù)器6臺,每臺配置英特爾至強(qiáng)X7550處理器2顆(主頻2.4 GHz、8核心),開啟超線程技術(shù)后,操作系統(tǒng)可以用于分配使用的CPU數(shù)可達(dá)到32顆,每臺服務(wù)器的內(nèi)存為64GB。另配有IBM X3650M3管理主機(jī)1臺、20T容量的EMC存儲系統(tǒng)一套和天融信企業(yè)級防火墻等硬件設(shè)備;軟件方面購買了Windows Server 2012 R2(包含微軟Hyper-V3.0虛擬化產(chǎn)品),因此開展桌面虛擬化服務(wù)的軟硬件基礎(chǔ)已完全具備。
3.2 虛擬桌面基礎(chǔ)架構(gòu)(VDI)實現(xiàn)
首先,給這7臺服務(wù)器全部安裝Windows Server 2012 R2,并啟用和配置好Hyper-V,以實現(xiàn)服務(wù)器虛擬化,將其中的6臺高配置服務(wù)器組成故障轉(zhuǎn)移群集,以提高服務(wù)的高可靠性。從2.2節(jié)的講述中可知,VDI是離不開Windows域環(huán)境的。因此,在管理主機(jī)上新建一臺虛擬機(jī)安裝Windows Server 2012R2系統(tǒng),并安裝AD DS域服務(wù)和集成區(qū)域DNS服務(wù),以完成AD域控服務(wù)器的建立。在管理主機(jī)上另建一臺安裝Windows Server 2012 R2的虛擬服務(wù)器,并加入域,它將擔(dān)任VDI架構(gòu)中的服務(wù)器管理角色。6臺高配置服務(wù)器也同時加入域。
從圖3可知Microsoft虛擬桌面基礎(chǔ)結(jié)構(gòu)主要由RD Web訪問、RD網(wǎng)關(guān)、RD授權(quán)、RD連接代理、RD虛擬化主機(jī)、RD會話主機(jī)這6個角色組成。這6個角色中只有RD虛擬化主機(jī)必須由物理主機(jī)擔(dān)任,其它角色既可以安裝在物理主機(jī)上,也可以安裝在由Hyper-v創(chuàng)建的虛擬服務(wù)器上。RD會話主機(jī)主要是完成應(yīng)用虛擬化的(如多人共用服務(wù)器上Office軟件),而桌面虛擬化可以不使用該角色,因此,在6臺高配置服務(wù)器組成服務(wù)器群集里建立4臺虛擬服務(wù)器,并全部加入域。以域管理員的身份登錄到之前建好的管理服務(wù)器上,將這4臺服務(wù)器和2臺物理主機(jī)添加到其管理的服務(wù)器池中,然后再在“添加角色和功能”中選擇“遠(yuǎn)程桌面服務(wù)安裝”為虛擬桌面基礎(chǔ)結(jié)構(gòu)(VDI)安裝所需的角色服務(wù)以創(chuàng)建基于虛擬機(jī)的桌面部署。其中4臺虛擬服務(wù)器分別指定安裝RD Web訪問、RD網(wǎng)關(guān)、RD授權(quán)和RD連接代理角色,2臺物理主機(jī)安裝RD虛擬化主機(jī)角色,至此VDI架構(gòu)搭建完成。
VDI搭建好后,就該建立模板機(jī)了,之后數(shù)十臺的虛擬桌面都將基于此模板機(jī)自動生成。先在RD虛擬化主機(jī)上建立一臺虛擬機(jī),安裝實驗所需的操作系統(tǒng),如Windows 8.1,在系統(tǒng)里裝好應(yīng)用程序和搭建好實驗環(huán)境,調(diào)試無誤后,使用Sysprep工具配置Windows的全新安裝,然后關(guān)機(jī),模板機(jī)建立完畢。Sysprep是Windows系統(tǒng)自帶工具,它從Windows安裝中刪除唯一性信息,以便于在不同的計算機(jī)上重用映像,尤其是在域環(huán)境下的映像重用。在管理服務(wù)器上通過遠(yuǎn)程桌面服務(wù)管理器可以看到建好的模板機(jī),使用它就可創(chuàng)建出指定數(shù)量的虛擬桌面池了。
出于對通信安全的考慮,用戶訪問虛擬桌面的整個鏈路都是加密的。用戶訪問RD Web訪問和RD網(wǎng)關(guān)使用的Https協(xié)議和RD網(wǎng)關(guān)訪問虛擬桌面使用的RDP協(xié)議都需要使用證書進(jìn)行加密,因此需要在域控服務(wù)器上安裝證書服務(wù),為各VDI角色生成通信加密證書,然后將生成的根證書分發(fā)給客戶端安裝,這樣用戶就能無障礙地訪問虛擬桌面了。
3.3 虛擬桌面測試
測試用的虛擬桌面池中共有30臺虛擬機(jī),操作系統(tǒng)為Windows 8.1,安裝有Office2013;客戶端使用基礎(chǔ)實驗教學(xué)中心的03年Dell老舊機(jī)器,其操作系統(tǒng)為XP。客戶端導(dǎo)入域的根證書后,就可通過IE使用域名訪問RD Web訪問和RD網(wǎng)關(guān)了。RD Web訪問的相應(yīng)速度很快,但RD網(wǎng)關(guān)連接到虛擬桌面的速度較慢。由2.2節(jié)可知在整個連接過程中有虛擬機(jī)查詢、許可證檢查、虛機(jī)啟動和負(fù)載均衡等一系列的工作要做,所以從用戶開始請求連接到登錄到虛擬桌面耗時一般為1分鐘左右。用戶一旦登錄到虛擬桌面里,之后的使用是很流暢的,且用戶體驗遠(yuǎn)好于本地計算機(jī)。以打開網(wǎng)頁為例,在本地計算機(jī)打開一個搜狐首頁,機(jī)器的CPU使用率就已達(dá)到100%,機(jī)器極卡,已無法再運行其它應(yīng)用;而在虛擬桌面里搜狐首頁打開速度很快,且同時再運行Office2013等應(yīng)用程序也不顯得慢,而此時本地計算機(jī)CPU使用率只有50%。桌面虛擬化技術(shù)的應(yīng)用,讓用戶也能在03年的老機(jī)器上流暢使用Win8.1和office2013等最新的操作系統(tǒng)和應(yīng)用軟件,且用戶只要不注銷虛擬桌面,即便網(wǎng)絡(luò)斷開或本地計算機(jī)出故障,其工作內(nèi)容還在,再次連接后能夠繼續(xù)正常使用。
桌面虛擬化相對于傳統(tǒng)的桌面系統(tǒng)在架構(gòu)理解、部署實現(xiàn)等方面有一定的難度和復(fù)雜性,但在整個VDI架構(gòu)部署完成后,對于虛擬桌面的使用和維護(hù)是較為簡單便捷的。在高校實驗室實施桌面虛擬化可大大降低計算機(jī)管理的難度和運行維護(hù)成本,提高學(xué)校老舊計算機(jī)的利用率。由于虛擬桌面的訪問不受時間、地點的限制,因此桌面虛擬化也提高了實驗教學(xué)的移動性和連續(xù)性,減少了因?qū)嶒瀸W(xué)時不夠或?qū)嶒炇也婚_放造成的學(xué)習(xí)中斷。隨著桌面虛擬化技術(shù)的不斷發(fā)展和完善,憑借其技術(shù)優(yōu)勢,虛擬桌面在高校實驗室的應(yīng)用必將得到普及。
[1]廣小明,胡杰,陳龍,等.虛擬化技術(shù)原理與實現(xiàn)[M].北京:電子工業(yè)出版社,2012.
[2]百 度 百 科.Hyper-V[EB/OL].[2015/01/14]. http://baike.baidu.com/view/1359943.htm.
[3]尹勤.基于桌面虛擬化技術(shù)的新型IT辦公環(huán)境[J].微型電腦應(yīng)用,2012,28(12):25-28.
[4]馬博峰.Windows Server 2012 Hyper-V虛擬化部署與管理指南[M].北京:機(jī)械工業(yè)出版社,2014.
[5]謝峰.數(shù)字化校園—桌面虛擬化系統(tǒng)的設(shè)計與實現(xiàn)[D].廣州:華南理工大學(xué),2012.
[6]王淑江.Windows Server 2012活動目錄管理實踐[M].北京:人民郵電出版,2014.
Research and Implementation of Desktop Virtualization Technology Based on Hyper-V
Niu Xiaochen
(School of Computer Science and Technology,Xi’an University of Posts and Telecommunications,Xi’an 710121,China)
For the problems happen in the management and use of the computer in the university laboratory,this paper discusses the desktop virtualization technology based on Hyper-V.In this paper,it introduces the basic concept and functions of virtualization and desktop virtualization technology,and describes the technical elements and architecture of virtual desktop infrastructure.Then it analyzes an application case of desktop virtualization in a laboratory.By desktop virtualization,the assets of the school can be protected.The labor intensity of lab manager and the maintenance cost of laboratory can also be reduced.
Hyper-V;Desktop Virtualization;Virtual Desktop Infrastructure
TP393
A
1007-757X(2015)06-0035-04
2015.03.22)
陜西高等教育教學(xué)改革研究項目(項目編號:13BY68);西安郵電大學(xué)青年教師科研基金資助項目(項目編號:ZL2014-23)
牛曉晨(1979-),男,西安郵電大學(xué),計算機(jī)學(xué)院,工程師,碩士,研究方向:云計算應(yīng)用,西安,710121