馬星光 劉仁權 李書珍 任化敏
文章編號:1672-5913(2009)10-0172-03
摘要:本文針對傳統模式下計算機實驗環境存在的實驗時間和地點受限制、機房維護成本過高等問題,通過使用Hyper-V服務器虛擬化技術高效運行虛擬機、使用遠程桌面等表示層虛擬化技術操作虛擬機和服務器,從而構建開放的實驗環境。這一方法不但使實驗場地在時空上得到了有效延伸,還大大提高了實驗效率,降低了維護費用。
關鍵詞:虛擬化;Hyper-V;虛擬機;TS網關;遠程桌面
中圖分類號:G642
文獻標識碼:B
1計算機實驗環境現狀
在計算機教學中,實驗操作是對學生進行素質教育的一個重要手段。目前,各高校的計算機實驗環境大都存在著一些問題。首先,學生的實驗時間和地點往往局限于課堂和教學機房,實驗操作往往無法長久保留,課后學生很難再現課堂的實驗環境,自學的效果大受影響,也使一些長周期實驗無法開展。其次,對于“計算機網絡”等課程的實驗,需要搭建適合團隊操作的多用戶網絡環境,計算機之間的聯接方式經常變化,通過物理手段實現起來成本較高。此外,實驗條件要求越來越高,而設備更新、經費保障相對滯后,導致一些實驗因設備性能不滿足要求而無法進行。這些問題在很大程度上影響了實驗教學的開展和學生實踐創新能力的培養。
2虛擬化技術
當今迅速發展的虛擬化技術可以有效地解決上述問題。
虛擬化打破了物理結構之間的界線,可以高效利用硬件、軟件、數據、網絡、存儲等計算資源。虛擬化有許多不同的類型,包括機器虛擬化、表示層虛擬化、應用程序虛擬化、存儲虛擬化、網絡虛擬化。
2.1服務器虛擬化
在當今的服務器虛擬化軟件中,主要有微軟的Virtual Server 2005和Hyper-V、VMWare的ESX Servers、思杰XenServer、KVM等。
微軟于2008年6月發布了Hyper-V,它內置于Windows Server 2008操作系統中。在Hyper-V模型中,hypervisor層直接運行于服務器硬件之上,所有的子分區都通過hypervisor與硬件通信,每個子分區都有自己的操作系統,如圖1所示。

由于Hyper-V與Windows Server 2008的緊密結合,運行效率高,因此我們將使用Hyper-V技術實現服務器虛擬化。
2.2虛擬化資源管理
微軟System Center Virtual Machine Management(SCVMM)是虛擬化數據中心的綜合管理解決方案,它能夠統一管理虛擬服務器、虛擬機等資源,可加快虛擬機基礎結構的建設。SCVMM能可靠地進行物理機到虛擬機的遷移(P2V),并提供了管理控制臺、虛擬機資源庫及自助式創建虛擬機等功能。在SCVMM2008中,還可管理第三方的服務器虛擬化軟件。
2.3表示層虛擬化
表示層虛擬化軟件主要有微軟的Windows遠程桌面(包括終端服務)、Citrix Metaframe Presentation Server和Symantec PcAnywhere等。
“遠程桌面”是Windows為了方便管理員維護計算機而推出的一項服務。管理員使用“遠程桌面連接”程序連接到網絡上開啟了遠程桌面功能的計算機,就像自己在該計算機前直接操作一樣。
“終端服務”僅存在于Windows Server中,終端服務允許多用戶(無論是否為管理員)同時登錄到服務器上,互不干擾地操作服務器。
無論是遠程桌面還是終端服務,均通過3389端口使用遠程桌面協議(RDP),但由于安全考慮,防火墻通常會阻擋該端口的連接。在Windows Server 2008中提供了“TS 網關”功能,它使用傳輸層安全性(TLS)隧道將RDP通信傳輸到443端口。TLS是安全套接字層(SSL)協議最新的、最安全的版本。TS網關封裝RDP over HTTPS,建立安全的加密連接。由于多數網絡會打開443端口來支持Internet連接,因此,TS網關實現了跨越防火墻的RDP連接。
3構建開放的計算機實驗環境
為建成開放式、易管理、可彈性伸縮、安全的計算機實驗環境,我們需要組建內部網絡(內網),通過內網防火墻將實驗環境發布出來。這樣,無論是在校園網還是在Internet上,均可操作內網服務器提供的實驗環境,如圖2所示。

3.1統一的資源管理和證書服務
Active Directory(AD)是一種基于Windows的目錄服務,存儲用戶、計算機和組等資源信息并允許用戶和其他計算機使用此信息。為了統一管理服務器資源和驗證用戶身份,應在內網配置AD域服務,該服務器即為域控制器(DC)。將內網中的其它服務器加入到該域中,并在AD中創建教師和學生帳號及相關的用戶組。
AD證書服務(AD CS)用于頒發和管理使用公鑰技術的軟件安全系統中的證書。我們使用AD CS來創建證書頒發機構(CA),用以接收證書申請、驗證申請中的信息和申請者的身份、頒發證書、吊銷證書以及發布信息,為TS網關加密傳輸提供證書支持。
3.2配置Hyper-V服務器
Hyper-V是x64版本的Windows Server 2008的角色,僅支持x64架構,因此只能安裝在x64處理器和x64操作系統上。Hyper-V要求CPU支持虛擬化技術,比如Intel VT或AMD-V。CPU還要支持數據執行保護(DEP),如Intel XD或AMD NX。近一兩年的服務器基本上都能滿足硬件要求。CPU虛擬化和DEP的設置位于BIOS中,在安裝Hyper-V前要先啟用它們。
由于多臺虛擬機同時運行時需要硬盤有較快的讀寫速度,服務器最好使用高速SAS硬盤組成的RAID5或外部磁盤陣列。如果實驗環境中同時運行的虛擬機數量較多,單臺服務器的性能無法滿足時,可增加Hyper-V服務器的數量。
通過服務器管理器安裝Hyper-V角色后,首先使用“虛擬網絡管理器”創建“外部”類型的虛擬網絡,虛擬機將通過這個網絡進行通信。為不影響服務器自身的網絡連接,服務器至少有2塊網卡,虛擬網絡選擇服務器未使用的那塊。為使虛擬機能夠自動獲取IP地址,內網中應啟用DHCP服務。
為方便不同的教師登錄使用Hyper-V管理器,可在服務器管理器中安裝“終端服務器”角色。其中,網絡級身份驗證是一種新的身份驗證方法,在建立遠程桌面連接并出現登錄屏幕之前完成用戶身份驗證,有助于保護遠程計算機免受惡意攻擊。但由于在Windows Server 2008和Vista之前的操作系統不支持這種身份驗證,為增強適用性,終端服務器應選擇“不需要網絡級身份驗證”。
3.3部署虛擬機
為完成多種網絡環境的實驗,減少學生安裝系統的時間,應事先安裝好各種操作系統的虛擬機,不同操作系統的內存使用建議如表1所示。如果需要使用數據庫等功能,還要適當增加內存數量。

為實現虛擬機的快速部署,可采用“母盤+差異磁盤”的形式。當使用基于差異磁盤的虛擬機時,它仍以母盤來啟動系統,但在此系統內進行的所有操作均被保存在差異磁盤內,而不會改變母盤中的內容。這樣不但可以快速創建新的虛擬機,而且節省了磁盤空間。
3.3.1創建表中各個操作系統的母盤
(1) 通過Hyper-V管理器創建和管理虛擬機,使用固定大小的虛擬磁盤,以提高讀寫性能。
(2) 使用ISO光盤鏡像安裝操作系統,方便日后添加系統組件。
(3) 應使用統一的命名規范,如W2008EntSp1X64、W2008StdSp1X86、VistaSp1X86、XPsp3X86等。
(4) 除教師使用的管理員帳號外,在虛擬機中再為學生設置管理員用戶名和密碼,并配置為下一次登錄時必須更改密碼,確保每個虛擬機除教師外,只有使用者可操作,保護其實驗過程。
(5) 安裝虛擬機的集成服務,以實現在“虛擬機連接”和“遠程桌面會話”中鼠標等設備的正常使用。
(6) 啟用遠程桌面,并在虛擬機自身防火墻中開放遠程桌面的TCP 3389端口。
(7) 為確保其他依據母盤派生出來的系統與母盤之間具有不同的SID,應使用系統中自帶的SYSPREP工具刪除母盤中SID,這樣就可使派生出的系統在第一次啟動后自動生成新SID。
3.3.2創建實驗用虛擬機
(1) 在母盤的基礎上創建差異磁盤。
(2) 根據學生數量復制多份差異磁盤文件,并按統一命名規范重命名。
(3) 創建多個虛擬機,使用上面已經創建的差異磁盤作為虛擬機的存儲空間。
(4) 在Hyper-V中為新建的虛擬機創建快照,以便日后將虛擬機快速恢復到初始狀態,實現虛擬機的重復使用。
3.4配置SCVMM服務器
在Windows Server 2008服務器上安裝支持Hyper-V的SCVMM2008,可統一管理域內多臺Hyper-V服務器、虛擬機,并依照服務器上的庫資源和模板快速部署虛擬機。同時它還提供了“自助門戶”網站,可通過IE來完成相關操作。SCVMM2008的工作界面如圖3所示。

3.5配置TS網關
首先在CA服務器上為TS網關使用完全限定域名(FQDN)申請用于Web服務器身份驗證的證書,并將其安裝在TS網關服務器的“證書(本地計算機)個人”文件夾下。在Windows Server 2008服務器上安裝“TS網關”角色服務,并為“SSL加密”選擇上述證書。在授權策略中,將教師用戶組和學生用戶組設置為允許通過TS網關連接。在終端服務資源授權策略(TS RAP)中設置為允許用戶連接到網絡上的任何計算機。
3.6配置防火墻
在內網防火墻和校園網防火墻上開放到TS網關服務器的443端口,以便校園網內外的計算機均可通過TS網關遠程登錄到內網的服務器和虛擬機上。
如果希望防火墻核查客戶端與TS網關之間的通信,可將防火墻配置為SSL橋接設備,以提高TS網關服務器的安全性。作為SSL橋接設備的防火墻接收并終止用戶到防火墻之間的SSL會話、檢查數據包后再重新建立防火墻到TS網關的SSL會話。這樣,防火墻就可以過濾掉有安全威脅的通信。
4使用開放的虛擬實驗環境
4.1設置“遠程桌面連接”程序
為了教師和學生的計算機能夠通過TS網關連接到內網,這些客戶端必須信任TS網關服務器證書,該客戶端才能安全地發送用戶密碼和登錄憑據完成身份驗證。因此,客戶端要先將CA的證書安裝在受信任根證書頒發機構存儲中。
在“遠程桌面連接”程序的高級選項中設置TS網關地址(即申請證書時使用的FQDN),如圖4所示。將要登錄的遠程計算機名設置為機器名、內網IP或可被TS網關解析為內網IP的FQDN。通過身份驗證后,客戶機就連接到TS網關的TCP443端口,TS網關則連接到目標計算機的TCP3389端口,從而實現了外網計算機跨越防火墻的訪問。

4.2教師操作
在實驗開始前,教師登錄到服務器,通過Hyper-V管理器啟動需要運行的虛擬機,并在學生實驗的過程中為某些特定的狀態創建快照,或幫助學生將虛擬機恢復到某一狀態的快照。在全部實驗結束后,再將虛擬機恢復到最初的快照,以便下一批學生使用。
4.3學生操作
開始實驗后,學生從教師那里獲取實驗所用虛擬機的機器名、用戶名和口令,遠程登錄進入后即可進行各項實驗。如需暫停,則直接斷開遠程連接,虛擬機依舊在服務器上運行。再次連接后即可繼續實驗。不同的虛擬機也可以象物理機一樣互相訪問。
學生操作Windows Server虛擬機時如需指導,教師可登錄到該生的虛擬機,使用遠程桌面的任務管理器的遠程控制功能,與學生實時交互。如果學生使用桌面系統如XP或VISTA出現問題,則可使用遠程協助功能獲得教師的指導。同學之間也可借助這種方式協作完成實驗。
5總結
運用虛擬化技術構建的開放式計算機實驗環境具有很多優點:
(1) 實現了全時空的開放。實驗不再受時間和空間的限制,實驗場地得到了有效延伸,學生可以在校園內外任何連接網絡的計算機上進行實驗。
(2) 服務器得以高效利用,節約經費、減少消耗。原來要幾十臺學生機組成的環境現只需幾臺服務器就可實現,購置、升級、日常維護、耗電等費用都會大幅降低。原來因學生機性能不夠而無法開展的實驗現也可正常進行。
(3) 提高實驗效率。運用快照功能既可實現完全相同條件下的重復試驗,又可迅速恢復到某一狀態,節省了教師和學生大量的簡單勞動,學生可集中精力研究實驗對象本身的特性和規律。
(4) 具有很好的協作性。教師與學生、學生與學生之間可方便實現遠程指導、合作實驗、協同研究等。
(5) 促進了學生創新意識和創新能力的培養。全新的實驗環境為學生開展創新活動營造了良好的條件。學生可以開展綜合性實驗和創新型實驗,擺脫了原有設備條件的約束,可在更深、更廣的領域內探索。
運用虛擬化技術構建的開放式計算機實驗環境發展前景會更加廣闊。
參考文獻:
[1] 硅谷動力. 微軟:將虛擬化技術應用于Dynamic IT[EB/OL]. [2008-01-29]. http://server.ctocio.com.cn/comment/85/7794585. shtml.
[2] TechTarget中國. 獲得認可,專家探討微軟Hyper-V的虛擬化架構[EB/OL].[2008-07-22].http://product.ccidnet.com/ art/19309/20080721/1514203_1.html.
[3] Microsoft. 虛擬化管理[EB/OL].http://www.microsoft.com/china/virtualization/products/management/default.mspx.
[4] 馮長江,閻建生,趙月飛. 電子實驗網絡化教學手段建設[J]. 實驗技術與管理,2002(19):50-52.