韓友前
(江蘇建筑職業技術學院實驗實訓管理處,江蘇 徐州 221116)
高校經管類專業的實驗實訓教學主要是利用B/S架構的應用軟件來仿真模擬企業的生產經營活動,這些應用部署在服務器上,學生使用計算機通過瀏覽器遠程進行訪問。隨著企業和教學信息化建設的逐步推進,這類實訓平臺的數量也日益增多,從而導致對服務器的需求急劇增加。為了減少應用之間的沖突,傳統的管理方式通常是一臺服務器只部署一個應用。在這種煙囪式架構管理模式下,服務器的資源利用率低,應用部署周期長,管理維護困難,高可用性和數據安全難以保障[1]。
以某職業院校經管實驗中心為例,該實驗中心擁有200 余臺計算機和4 臺服務器,網絡環境為千兆局域網。部署了會計、電商、營銷以及物流等專業的多個應用,主要為本校經管類專業學生上課、實習、實訓及技能大賽提供服務。這些應用都是采用B/S 架構,部署環境為Windows Server操作系統。其主要特點是并發訪問量較低,一般不超過80個用戶,對服務器性能要求不高,使用具有間斷性。存在的主要問題是服務器數量需求過多,資源利用率低、分配不合理,無容災備份。近年來,隨著應用數量的不斷增加,一臺物理服務器只部署一個應用的管理模式弊端日益凸顯。為了解決應用數量多和服務器數量有限且資源利用率低的矛盾,經管實驗中心以其中一臺服務器硬件損壞,需購置新服務器為契機,決定整合軟硬件資源,實施服務器虛擬化。通過比較VMware vSphere、Hyper-V、Citix Xen、Linux KVM 等主流企業級虛擬化產品[2],從易用性、使用成本、兼容性及經管類應用的特點等因素考量,最終選擇了微軟的Hyper-V服務器虛擬化解決方案。
服務器虛擬化是將服務器的硬件資源抽象為可以動態調配的邏輯資源,利用軟件技術將一臺物理服務器生成若干相互臺隔離的虛擬服務器的一種技術,這些虛擬出來的服務器可以像物理服務器一樣部署各種應用[3]。服務器虛擬化技術是一項相對成熟的技術,引入該技術可極大地提高資源利用率和運維效率,有效緩解資源和應用之間的供需矛盾。Hyper-V是微軟公司出品的基于Hypervisor的企業級虛擬化解決方案。它是一種裸金屬架構的虛擬化技術,輕量級的Hypervisor 虛擬化層位于硬件之上,負責為虛擬機提供隔離的運行環境及資源調度。Hyper-V 管理程序采用微內核架構,底層的Hypervisor 運行在最高特權級別下,微軟稱之為Ring-1,來賓操作系統內核及驅動運行在Ring0,而應用程序則運行在Ring3[4]。Hy?per-V的基本架構如圖1所示。和其他虛擬化產品相比,Hyper-V主要有以下幾個優點:

圖1 Hyper-V的基本架構
1)Hyper-V 是微軟公司的產品,對Windows 操作系統具有更好的兼容性,來賓操作系統無須安裝任何第三方驅動。
2)Hyper-V 采用微內核架構,代碼高度精簡,安全穩定,執行效率高,性能接近物理服務器性能。Hy?pervisor 層不提供應用程序編程接口,受到攻擊的可能性較小。
3)Hyper-V 和Windows 服務器高度集成,使用統一視窗風格的微軟管理控制臺,部署方便,操作界面友好。
服務器虛擬化涉及服務器技術、存儲技術和網絡技術等多方面的知識[5]。在部署Hyper-V服務器虛擬化之前,要對該平臺的架構和功能進行充分研究,例如故障轉移群集、虛擬機動態遷移和復制功能等技術要了然于心。規劃方案的好壞將直接影響著虛擬化平臺最終的運行效果,應根據經管類應用對服務器要求不是很嚴苛,使用上具有間斷性、周期性和并發訪問量低的特點,充分利用現有資源,遵循技術可靠、簡單實用、分步實施的原則對虛擬化平臺進行詳細的規劃和設計。主要做好主機硬件選型、網絡、存儲、備份和高可用性等方面的規劃。
1)服務器主機硬件選型
Hyper-V 主機是虛擬機運行的載體,其硬件性能直接決定著虛擬化平臺的性能和擴展能力,選擇一個配置合理,性能足夠支撐虛擬機負載運行的主機至關重要。
① CPU選型
Hyper-V 虛擬化需要CPU 支持硬件輔助虛擬化(Intel VT 或AMD-V)和數據執行保護(Data Execution Prevention,DEP)技術。虛擬機使用的是邏輯處理器,它的數量是由主機CPU的核心數決定的,主機的CPU核心數越多、時鐘頻率越高效果越好[6]
②內存選型
Hyper-V 支持動態內存技術,即根據每個虛擬機預期負載的不同動態分配所需內存。在虛擬化中,內存的容量比速度更重要,要給管理系統保留足夠的內存,可以按照每個虛擬機分配4GB或以上的內存容量配置主機內存。
2)存儲規劃
存儲系統是虛擬化平臺的重要組成部分,它的存儲效能往往會成為制約虛擬化平臺性能發揮的瓶頸,特別是那些部署了I/O 操作密集的數據庫系統。Hy?per-V 主機除了支持使用本地直接連接存儲,還支持IP SAN、FC SAN、NAS等多種網絡共享存儲方式[7]。應根性能、擴展性及使用成本等因素選擇存儲系統。如果虛擬機數量不多,產生的數據量較小,選擇本地直接連接存儲是最簡單的低成本存儲方式。
3)網絡規劃
網絡是虛擬化平臺的基礎設施之一,Hyper-V 主機的虛擬網絡將對物理網絡結構產生影響。Hyper-V虛擬機需要通過主機上的網卡進行數據通信,規劃網絡時要保證服務器的網口數量能滿足虛擬化業務需求,一般服務器都會配備至少兩塊網卡,如果使用網絡存儲或在有群集的網絡環境,建議Hyper-V主機至少配置四塊網卡。
根據主機硬件選型原則和存儲、網絡規劃本案例選擇戴爾Power Edge T440作為虛擬化主機,管理操作系統為Windows Server 2016 標準版,其配置如表1所示。

表1 Hyper-V主機配置
Hyper-V 有兩種安裝形式,一種是集成在Win?dows Server 操作系統中的Hyper-V 角色,另一種是獨立安裝的使用命令行界面的Hyper-V Server 服務器。Hyper-V 角色是圖形界面的,集成在Windows Server操作系統中,其優點是安裝使用方便。獨立安裝的Hyper-V Server 服務器是命令行界面的,其優點是安全性和穩定性較好,但操作不方便,適合有一定計算機基礎的專業人員使用。Hyper-V 虛擬機的管理可以使用系統內置的Hyper-V管理器,也可以部署專業的系統中心虛擬機管理器(System Center Virtual Ma?chine Manager,SCVMM)[8]。因為實驗中心虛擬化主機不多且架構較為簡單,使用Hyper-V管理器即可滿足虛擬化平臺的管理維護需求。
1)Hyper-V角色安裝
在虛擬化主機上安裝圖形界面的Windows Server 2016操作系統,然后通過“添加角色和功能”勾選“Hy?per-V”,選擇其中一個的網卡創建外部虛擬交換機,根據向導完成Hyper-V角色的添加。添加完Hyper-V角色重啟后,Hypervisor 虛擬化層就會被部署在硬件之上并接管物理服務器,原操作系統將變成一個具備管理權限的虛擬系統,同時Hyper-V管理器也會被安裝在系統上[9]。
2)虛擬機的創建與應用部署
在Hyper-V 管理器中點擊新建虛擬機,根據向導選擇虛擬機存儲位置、啟動內存大小、虛擬交換機,創建虛擬硬盤,通過Windows Server 系統鏡像安裝操作系統完成虛擬機的創建。創建好的虛擬機可以像物理服務器一樣部署各種經管類實訓應用平臺。由于Hyper-V 不支持虛擬機直接使用優盤,可以將應用安裝軟件上傳到FTP服務器,然后復制到虛擬機上進行安裝。
應用的部署需要一個安裝了操作系統的虛擬機環境。使用Hyper-V管理器創建虛擬機步驟較多,為減少重復性操作,可以通過以下兩種方式快速創建一個帶操作系統的虛擬機。
1 新建一個虛擬機,安裝操作系統,然后在Hy?per-V 管理器中將虛擬機導出,當有新的應用需要部署時,就可以導入該虛擬機,快速生成新的虛擬機,注意在導入時要選擇“復制虛擬機(創建新的唯一ID)”。
2 新建一個虛擬機并安裝操作系統,利用系統準備工具Sysprep 刪除系統安全標識符(SID)等系統特定的信息并關機,然后將該虛擬機的虛擬硬盤拷貝到其他位置。當需要創建新的虛擬機時就可以引用該虛擬硬盤,快速生成帶操作系統的虛擬機。
虛擬化的一個實用功能是可以將現有物理服務器遷移到虛擬平臺上繼續提供業務服務,在沒有部署SCVMM 虛擬化管理平臺的環境下,通過以下三種方式可以將物理服務器遷移到Hyper-V 虛擬化平臺中[10]。
1)安裝微軟虛擬機轉換器(Microsoft Virtual Ma?chine Converter,MVMC),根據向導完成物理服務器到Hyper-V虛擬機的轉換。
2)利用VMware公司出品的VMware VCenter Con?verter 工具,先將物理服務器轉換成VMware 虛擬機,然后再利用Vmdk2Vhd、StarWind V2V Converter 等工具將vmdk 格式的虛擬硬盤轉換為VHD 格式,然后利用此虛擬硬盤創建虛擬機。使用UEFI 啟動,系統分區是GPT格式的物理機建議使用此方法。
3)對于一些使用Windows Server2008或其他早期版本的服務器,使用微軟推出的Disk2vhd轉換工具更方便一些,將物理服務器的磁盤轉換為VHD或VHDX格式的虛擬硬盤,然后使用該虛擬硬盤作為虛擬機硬盤創建虛擬機,完成物理服務器的轉換。使用Legacy BIOS 啟動,硬盤分區是MBR 格式的物理服務器建議使用此方法。
將所有虛擬機放在一臺服務器主機上存在較大風險,高可用性可以保證服務器在計劃或非計劃停機后能快速恢復業務,從而解決業務的連續性問題。Hyper-V 的高可用性可以使用故障轉移群集功能來實現,但是部署故障轉移群集較為復雜,需要購置專用的存儲設備,使用成本較高,一般小型機構很難實現。Hyper-V 的復制功能為高可用性和容災提供了一種簡單廉價的解決方案[11]。不需要額外購置昂貴的共享式網絡存儲系統,只需要兩臺服務器即可實現虛擬機的異地復制功能。其中一臺Hyper-V 主機作為主服務器,在線提供業務服務,另外一臺服務器作為副本服務器處于脫機狀態。在初始復制完成后,主服務器的增量數據就會根據設定頻率每隔一段時間異步傳輸到副本服務器上。當主服務器出現故障時副本服務器就會接替主服務器繼續工作,從而保證業務的連續性。復制功能的基本原理如圖2所示。

圖2 Hyper-V復制功能示意圖
Hyper-V 主機和虛擬機在運行過程中都可能出現各種無法預料的問題,為了保障數據的安全,備份顯得尤為重要。數據備份軟件非常多,可以選擇其中的1-2 種備份軟件對Hyper-V 主機和虛擬機進行備份。數據保護管理器(Data Protection Manager,DPM)是微軟企業級的數據備份解決方案,它和SCVMM 一樣屬于微軟系統中心家族的成員,是虛擬化平臺理想的備份方案,但是DPM 需要單獨購買,需要安裝SQL Server數據庫,部署較復雜。在沒有部署DPM的環境下,以下兩種方式可以實現Hyper-V主機和虛擬機的備份。
1)利用Hyper-V 管理器的導入導出功能備份虛擬機,當應用部署到虛擬機并調試完畢后,導出虛擬機作為原始備份。在虛擬機無法正常運行或需要遷移到其他服務器上時,可以導入虛擬機恢復應用到初始狀態[12]。
2)使用Windows Server Backup 功能備份數據。Windows Server Backup 是Windows Server 2016系統內置的一個功能,可以為小型組織或個人服務器提供基本的備份解決方案。在服務器管理器上“添加角色和功能”安裝“Windows Server Backup”功能,然后根據向導對虛擬機進行一次性備份或按照計劃任務定期備份。備份數據應存放在專用存儲設備上,也可以利用其他閑置的服務器開啟SMB或ISCSI文件服務功能建立共享存儲,將備份文件存放在共享空間里。
經管實驗中心采用微軟Hyper-V 虛擬化技術方案實施服務器虛擬化,在一臺戴爾Power Edge T440服務器上虛擬出9個虛擬機,這些虛擬機和其他物理服務器一起分別部署了不同的應用,為經管類各專業實習實訓教學提供服務,虛擬機資源分配及部署應用如表2所示。實施服務器虛擬化一年多來,系統運行穩定,管理高效,用戶體驗良好[13]。實施服務器虛擬化前后相關數據對比如表3所示。

表2 虛擬機資源分配及部署應用

表3 服務器虛擬化部署前后對比
1)提高了應用的部署效率,利用虛擬化平臺快速生成虛擬機,新應用可以快速部署并交付使用。應用的部署周期由過去的從服務器采購到交付使用的數周時間縮短到了數小時的時間。
2)將服務器虛擬化成多個相互隔離的虛擬機,其中的一臺虛擬機發生故障不會影響整個系統的運行,資源根據虛擬機的不同負載動態分配,實現了一臺服務器部署多個應用的目的,服務器資源得到了有效利用,節約了服務器的采購和運維成本,減少了能源消耗。
3)高可用性和數據安全得到保障。利用Hyper-V 復制技術實現了在服務器出現故障時應用依然可用。利用系統內置的Windows Server Backup 備份功能保障了虛擬化平臺的數據安全。
基于微軟Hyper-V 技術的服務器虛擬化解決方案,部署簡單,運行穩定,管理靈活高效,用戶體驗良好。該平臺具備高可用性,可以動態調配硬件資源,能極大地提高資源利用率,減少了物理服務器的使用和能源消耗,滿足了財會、營銷、物流、酒店管理等經管類應用對服務器的需求。對于類似經管實驗中心這種應用數量多、并發訪問量不高的小型數據中心來說,微軟的Hyper-V 虛擬化技術是一種操作簡單、經濟實用的理想解決方案。