韓友前
(江蘇建筑職業(yè)技術(shù)學(xué)院實(shí)驗(yàn)實(shí)訓(xùn)管理處,江蘇 徐州 221116)
高校經(jīng)管類專業(yè)的實(shí)驗(yàn)實(shí)訓(xùn)教學(xué)主要是利用B/S架構(gòu)的應(yīng)用軟件來(lái)仿真模擬企業(yè)的生產(chǎn)經(jīng)營(yíng)活動(dòng),這些應(yīng)用部署在服務(wù)器上,學(xué)生使用計(jì)算機(jī)通過(guò)瀏覽器遠(yuǎn)程進(jìn)行訪問(wèn)。隨著企業(yè)和教學(xué)信息化建設(shè)的逐步推進(jìn),這類實(shí)訓(xùn)平臺(tái)的數(shù)量也日益增多,從而導(dǎo)致對(duì)服務(wù)器的需求急劇增加。為了減少應(yīng)用之間的沖突,傳統(tǒng)的管理方式通常是一臺(tái)服務(wù)器只部署一個(gè)應(yīng)用。在這種煙囪式架構(gòu)管理模式下,服務(wù)器的資源利用率低,應(yīng)用部署周期長(zhǎng),管理維護(hù)困難,高可用性和數(shù)據(jù)安全難以保障[1]。
以某職業(yè)院校經(jīng)管實(shí)驗(yàn)中心為例,該實(shí)驗(yàn)中心擁有200 余臺(tái)計(jì)算機(jī)和4 臺(tái)服務(wù)器,網(wǎng)絡(luò)環(huán)境為千兆局域網(wǎng)。部署了會(huì)計(jì)、電商、營(yíng)銷以及物流等專業(yè)的多個(gè)應(yīng)用,主要為本校經(jīng)管類專業(yè)學(xué)生上課、實(shí)習(xí)、實(shí)訓(xùn)及技能大賽提供服務(wù)。這些應(yīng)用都是采用B/S 架構(gòu),部署環(huán)境為Windows Server操作系統(tǒng)。其主要特點(diǎn)是并發(fā)訪問(wèn)量較低,一般不超過(guò)80個(gè)用戶,對(duì)服務(wù)器性能要求不高,使用具有間斷性。存在的主要問(wèn)題是服務(wù)器數(shù)量需求過(guò)多,資源利用率低、分配不合理,無(wú)容災(zāi)備份。近年來(lái),隨著應(yīng)用數(shù)量的不斷增加,一臺(tái)物理服務(wù)器只部署一個(gè)應(yīng)用的管理模式弊端日益凸顯。為了解決應(yīng)用數(shù)量多和服務(wù)器數(shù)量有限且資源利用率低的矛盾,經(jīng)管實(shí)驗(yàn)中心以其中一臺(tái)服務(wù)器硬件損壞,需購(gòu)置新服務(wù)器為契機(jī),決定整合軟硬件資源,實(shí)施服務(wù)器虛擬化。通過(guò)比較VMware vSphere、Hyper-V、Citix Xen、Linux KVM 等主流企業(yè)級(jí)虛擬化產(chǎn)品[2],從易用性、使用成本、兼容性及經(jīng)管類應(yīng)用的特點(diǎn)等因素考量,最終選擇了微軟的Hyper-V服務(wù)器虛擬化解決方案。
服務(wù)器虛擬化是將服務(wù)器的硬件資源抽象為可以動(dòng)態(tài)調(diào)配的邏輯資源,利用軟件技術(shù)將一臺(tái)物理服務(wù)器生成若干相互臺(tái)隔離的虛擬服務(wù)器的一種技術(shù),這些虛擬出來(lái)的服務(wù)器可以像物理服務(wù)器一樣部署各種應(yīng)用[3]。服務(wù)器虛擬化技術(shù)是一項(xiàng)相對(duì)成熟的技術(shù),引入該技術(shù)可極大地提高資源利用率和運(yùn)維效率,有效緩解資源和應(yīng)用之間的供需矛盾。Hyper-V是微軟公司出品的基于Hypervisor的企業(yè)級(jí)虛擬化解決方案。它是一種裸金屬架構(gòu)的虛擬化技術(shù),輕量級(jí)的Hypervisor 虛擬化層位于硬件之上,負(fù)責(zé)為虛擬機(jī)提供隔離的運(yùn)行環(huán)境及資源調(diào)度。Hyper-V 管理程序采用微內(nèi)核架構(gòu),底層的Hypervisor 運(yùn)行在最高特權(quán)級(jí)別下,微軟稱之為Ring-1,來(lái)賓操作系統(tǒng)內(nèi)核及驅(qū)動(dòng)運(yùn)行在Ring0,而應(yīng)用程序則運(yùn)行在Ring3[4]。Hy?per-V的基本架構(gòu)如圖1所示。和其他虛擬化產(chǎn)品相比,Hyper-V主要有以下幾個(gè)優(yōu)點(diǎn):
圖1 Hyper-V的基本架構(gòu)
1)Hyper-V 是微軟公司的產(chǎn)品,對(duì)Windows 操作系統(tǒng)具有更好的兼容性,來(lái)賓操作系統(tǒng)無(wú)須安裝任何第三方驅(qū)動(dòng)。
2)Hyper-V 采用微內(nèi)核架構(gòu),代碼高度精簡(jiǎn),安全穩(wěn)定,執(zhí)行效率高,性能接近物理服務(wù)器性能。Hy?pervisor 層不提供應(yīng)用程序編程接口,受到攻擊的可能性較小。
3)Hyper-V 和Windows 服務(wù)器高度集成,使用統(tǒng)一視窗風(fēng)格的微軟管理控制臺(tái),部署方便,操作界面友好。
服務(wù)器虛擬化涉及服務(wù)器技術(shù)、存儲(chǔ)技術(shù)和網(wǎng)絡(luò)技術(shù)等多方面的知識(shí)[5]。在部署Hyper-V服務(wù)器虛擬化之前,要對(duì)該平臺(tái)的架構(gòu)和功能進(jìn)行充分研究,例如故障轉(zhuǎn)移群集、虛擬機(jī)動(dòng)態(tài)遷移和復(fù)制功能等技術(shù)要了然于心。規(guī)劃方案的好壞將直接影響著虛擬化平臺(tái)最終的運(yùn)行效果,應(yīng)根據(jù)經(jīng)管類應(yīng)用對(duì)服務(wù)器要求不是很嚴(yán)苛,使用上具有間斷性、周期性和并發(fā)訪問(wèn)量低的特點(diǎn),充分利用現(xiàn)有資源,遵循技術(shù)可靠、簡(jiǎn)單實(shí)用、分步實(shí)施的原則對(duì)虛擬化平臺(tái)進(jìn)行詳細(xì)的規(guī)劃和設(shè)計(jì)。主要做好主機(jī)硬件選型、網(wǎng)絡(luò)、存儲(chǔ)、備份和高可用性等方面的規(guī)劃。
1)服務(wù)器主機(jī)硬件選型
Hyper-V 主機(jī)是虛擬機(jī)運(yùn)行的載體,其硬件性能直接決定著虛擬化平臺(tái)的性能和擴(kuò)展能力,選擇一個(gè)配置合理,性能足夠支撐虛擬機(jī)負(fù)載運(yùn)行的主機(jī)至關(guān)重要。
① CPU選型
Hyper-V 虛擬化需要CPU 支持硬件輔助虛擬化(Intel VT 或AMD-V)和數(shù)據(jù)執(zhí)行保護(hù)(Data Execution Prevention,DEP)技術(shù)。虛擬機(jī)使用的是邏輯處理器,它的數(shù)量是由主機(jī)CPU的核心數(shù)決定的,主機(jī)的CPU核心數(shù)越多、時(shí)鐘頻率越高效果越好[6]
②內(nèi)存選型
Hyper-V 支持動(dòng)態(tài)內(nèi)存技術(shù),即根據(jù)每個(gè)虛擬機(jī)預(yù)期負(fù)載的不同動(dòng)態(tài)分配所需內(nèi)存。在虛擬化中,內(nèi)存的容量比速度更重要,要給管理系統(tǒng)保留足夠的內(nèi)存,可以按照每個(gè)虛擬機(jī)分配4GB或以上的內(nèi)存容量配置主機(jī)內(nèi)存。
2)存儲(chǔ)規(guī)劃
存儲(chǔ)系統(tǒng)是虛擬化平臺(tái)的重要組成部分,它的存儲(chǔ)效能往往會(huì)成為制約虛擬化平臺(tái)性能發(fā)揮的瓶頸,特別是那些部署了I/O 操作密集的數(shù)據(jù)庫(kù)系統(tǒng)。Hy?per-V 主機(jī)除了支持使用本地直接連接存儲(chǔ),還支持IP SAN、FC SAN、NAS等多種網(wǎng)絡(luò)共享存儲(chǔ)方式[7]。應(yīng)根性能、擴(kuò)展性及使用成本等因素選擇存儲(chǔ)系統(tǒng)。如果虛擬機(jī)數(shù)量不多,產(chǎn)生的數(shù)據(jù)量較小,選擇本地直接連接存儲(chǔ)是最簡(jiǎn)單的低成本存儲(chǔ)方式。
3)網(wǎng)絡(luò)規(guī)劃
網(wǎng)絡(luò)是虛擬化平臺(tái)的基礎(chǔ)設(shè)施之一,Hyper-V 主機(jī)的虛擬網(wǎng)絡(luò)將對(duì)物理網(wǎng)絡(luò)結(jié)構(gòu)產(chǎn)生影響。Hyper-V虛擬機(jī)需要通過(guò)主機(jī)上的網(wǎng)卡進(jìn)行數(shù)據(jù)通信,規(guī)劃網(wǎng)絡(luò)時(shí)要保證服務(wù)器的網(wǎng)口數(shù)量能滿足虛擬化業(yè)務(wù)需求,一般服務(wù)器都會(huì)配備至少兩塊網(wǎng)卡,如果使用網(wǎng)絡(luò)存儲(chǔ)或在有群集的網(wǎng)絡(luò)環(huán)境,建議Hyper-V主機(jī)至少配置四塊網(wǎng)卡。
根據(jù)主機(jī)硬件選型原則和存儲(chǔ)、網(wǎng)絡(luò)規(guī)劃本案例選擇戴爾Power Edge T440作為虛擬化主機(jī),管理操作系統(tǒng)為Windows Server 2016 標(biāo)準(zhǔn)版,其配置如表1所示。
表1 Hyper-V主機(jī)配置
Hyper-V 有兩種安裝形式,一種是集成在Win?dows Server 操作系統(tǒng)中的Hyper-V 角色,另一種是獨(dú)立安裝的使用命令行界面的Hyper-V Server 服務(wù)器。Hyper-V 角色是圖形界面的,集成在Windows Server操作系統(tǒng)中,其優(yōu)點(diǎn)是安裝使用方便。獨(dú)立安裝的Hyper-V Server 服務(wù)器是命令行界面的,其優(yōu)點(diǎn)是安全性和穩(wěn)定性較好,但操作不方便,適合有一定計(jì)算機(jī)基礎(chǔ)的專業(yè)人員使用。Hyper-V 虛擬機(jī)的管理可以使用系統(tǒng)內(nèi)置的Hyper-V管理器,也可以部署專業(yè)的系統(tǒng)中心虛擬機(jī)管理器(System Center Virtual Ma?chine Manager,SCVMM)[8]。因?yàn)閷?shí)驗(yàn)中心虛擬化主機(jī)不多且架構(gòu)較為簡(jiǎn)單,使用Hyper-V管理器即可滿足虛擬化平臺(tái)的管理維護(hù)需求。
1)Hyper-V角色安裝
在虛擬化主機(jī)上安裝圖形界面的Windows Server 2016操作系統(tǒng),然后通過(guò)“添加角色和功能”勾選“Hy?per-V”,選擇其中一個(gè)的網(wǎng)卡創(chuàng)建外部虛擬交換機(jī),根據(jù)向?qū)瓿蒆yper-V角色的添加。添加完Hyper-V角色重啟后,Hypervisor 虛擬化層就會(huì)被部署在硬件之上并接管物理服務(wù)器,原操作系統(tǒng)將變成一個(gè)具備管理權(quán)限的虛擬系統(tǒng),同時(shí)Hyper-V管理器也會(huì)被安裝在系統(tǒng)上[9]。
2)虛擬機(jī)的創(chuàng)建與應(yīng)用部署
在Hyper-V 管理器中點(diǎn)擊新建虛擬機(jī),根據(jù)向?qū)нx擇虛擬機(jī)存儲(chǔ)位置、啟動(dòng)內(nèi)存大小、虛擬交換機(jī),創(chuàng)建虛擬硬盤,通過(guò)Windows Server 系統(tǒng)鏡像安裝操作系統(tǒng)完成虛擬機(jī)的創(chuàng)建。創(chuàng)建好的虛擬機(jī)可以像物理服務(wù)器一樣部署各種經(jīng)管類實(shí)訓(xùn)應(yīng)用平臺(tái)。由于Hyper-V 不支持虛擬機(jī)直接使用優(yōu)盤,可以將應(yīng)用安裝軟件上傳到FTP服務(wù)器,然后復(fù)制到虛擬機(jī)上進(jìn)行安裝。
應(yīng)用的部署需要一個(gè)安裝了操作系統(tǒng)的虛擬機(jī)環(huán)境。使用Hyper-V管理器創(chuàng)建虛擬機(jī)步驟較多,為減少重復(fù)性操作,可以通過(guò)以下兩種方式快速創(chuàng)建一個(gè)帶操作系統(tǒng)的虛擬機(jī)。
1 新建一個(gè)虛擬機(jī),安裝操作系統(tǒng),然后在Hy?per-V 管理器中將虛擬機(jī)導(dǎo)出,當(dāng)有新的應(yīng)用需要部署時(shí),就可以導(dǎo)入該虛擬機(jī),快速生成新的虛擬機(jī),注意在導(dǎo)入時(shí)要選擇“復(fù)制虛擬機(jī)(創(chuàng)建新的唯一ID)”。
2 新建一個(gè)虛擬機(jī)并安裝操作系統(tǒng),利用系統(tǒng)準(zhǔn)備工具Sysprep 刪除系統(tǒng)安全標(biāo)識(shí)符(SID)等系統(tǒng)特定的信息并關(guān)機(jī),然后將該虛擬機(jī)的虛擬硬盤拷貝到其他位置。當(dāng)需要?jiǎng)?chuàng)建新的虛擬機(jī)時(shí)就可以引用該虛擬硬盤,快速生成帶操作系統(tǒng)的虛擬機(jī)。
虛擬化的一個(gè)實(shí)用功能是可以將現(xiàn)有物理服務(wù)器遷移到虛擬平臺(tái)上繼續(xù)提供業(yè)務(wù)服務(wù),在沒(méi)有部署SCVMM 虛擬化管理平臺(tái)的環(huán)境下,通過(guò)以下三種方式可以將物理服務(wù)器遷移到Hyper-V 虛擬化平臺(tái)中[10]。
1)安裝微軟虛擬機(jī)轉(zhuǎn)換器(Microsoft Virtual Ma?chine Converter,MVMC),根據(jù)向?qū)瓿晌锢矸?wù)器到Hyper-V虛擬機(jī)的轉(zhuǎn)換。
2)利用VMware公司出品的VMware VCenter Con?verter 工具,先將物理服務(wù)器轉(zhuǎn)換成VMware 虛擬機(jī),然后再利用Vmdk2Vhd、StarWind V2V Converter 等工具將vmdk 格式的虛擬硬盤轉(zhuǎn)換為VHD 格式,然后利用此虛擬硬盤創(chuàng)建虛擬機(jī)。使用UEFI 啟動(dòng),系統(tǒng)分區(qū)是GPT格式的物理機(jī)建議使用此方法。
3)對(duì)于一些使用Windows Server2008或其他早期版本的服務(wù)器,使用微軟推出的Disk2vhd轉(zhuǎn)換工具更方便一些,將物理服務(wù)器的磁盤轉(zhuǎn)換為VHD或VHDX格式的虛擬硬盤,然后使用該虛擬硬盤作為虛擬機(jī)硬盤創(chuàng)建虛擬機(jī),完成物理服務(wù)器的轉(zhuǎn)換。使用Legacy BIOS 啟動(dòng),硬盤分區(qū)是MBR 格式的物理服務(wù)器建議使用此方法。
將所有虛擬機(jī)放在一臺(tái)服務(wù)器主機(jī)上存在較大風(fēng)險(xiǎn),高可用性可以保證服務(wù)器在計(jì)劃或非計(jì)劃停機(jī)后能快速恢復(fù)業(yè)務(wù),從而解決業(yè)務(wù)的連續(xù)性問(wèn)題。Hyper-V 的高可用性可以使用故障轉(zhuǎn)移群集功能來(lái)實(shí)現(xiàn),但是部署故障轉(zhuǎn)移群集較為復(fù)雜,需要購(gòu)置專用的存儲(chǔ)設(shè)備,使用成本較高,一般小型機(jī)構(gòu)很難實(shí)現(xiàn)。Hyper-V 的復(fù)制功能為高可用性和容災(zāi)提供了一種簡(jiǎn)單廉價(jià)的解決方案[11]。不需要額外購(gòu)置昂貴的共享式網(wǎng)絡(luò)存儲(chǔ)系統(tǒng),只需要兩臺(tái)服務(wù)器即可實(shí)現(xiàn)虛擬機(jī)的異地復(fù)制功能。其中一臺(tái)Hyper-V 主機(jī)作為主服務(wù)器,在線提供業(yè)務(wù)服務(wù),另外一臺(tái)服務(wù)器作為副本服務(wù)器處于脫機(jī)狀態(tài)。在初始復(fù)制完成后,主服務(wù)器的增量數(shù)據(jù)就會(huì)根據(jù)設(shè)定頻率每隔一段時(shí)間異步傳輸?shù)礁北痉?wù)器上。當(dāng)主服務(wù)器出現(xiàn)故障時(shí)副本服務(wù)器就會(huì)接替主服務(wù)器繼續(xù)工作,從而保證業(yè)務(wù)的連續(xù)性。復(fù)制功能的基本原理如圖2所示。
圖2 Hyper-V復(fù)制功能示意圖
Hyper-V 主機(jī)和虛擬機(jī)在運(yùn)行過(guò)程中都可能出現(xiàn)各種無(wú)法預(yù)料的問(wèn)題,為了保障數(shù)據(jù)的安全,備份顯得尤為重要。數(shù)據(jù)備份軟件非常多,可以選擇其中的1-2 種備份軟件對(duì)Hyper-V 主機(jī)和虛擬機(jī)進(jìn)行備份。數(shù)據(jù)保護(hù)管理器(Data Protection Manager,DPM)是微軟企業(yè)級(jí)的數(shù)據(jù)備份解決方案,它和SCVMM 一樣屬于微軟系統(tǒng)中心家族的成員,是虛擬化平臺(tái)理想的備份方案,但是DPM 需要單獨(dú)購(gòu)買,需要安裝SQL Server數(shù)據(jù)庫(kù),部署較復(fù)雜。在沒(méi)有部署DPM的環(huán)境下,以下兩種方式可以實(shí)現(xiàn)Hyper-V主機(jī)和虛擬機(jī)的備份。
1)利用Hyper-V 管理器的導(dǎo)入導(dǎo)出功能備份虛擬機(jī),當(dāng)應(yīng)用部署到虛擬機(jī)并調(diào)試完畢后,導(dǎo)出虛擬機(jī)作為原始備份。在虛擬機(jī)無(wú)法正常運(yùn)行或需要遷移到其他服務(wù)器上時(shí),可以導(dǎo)入虛擬機(jī)恢復(fù)應(yīng)用到初始狀態(tài)[12]。
2)使用Windows Server Backup 功能備份數(shù)據(jù)。Windows Server Backup 是Windows Server 2016系統(tǒng)內(nèi)置的一個(gè)功能,可以為小型組織或個(gè)人服務(wù)器提供基本的備份解決方案。在服務(wù)器管理器上“添加角色和功能”安裝“Windows Server Backup”功能,然后根據(jù)向?qū)?duì)虛擬機(jī)進(jìn)行一次性備份或按照計(jì)劃任務(wù)定期備份。備份數(shù)據(jù)應(yīng)存放在專用存儲(chǔ)設(shè)備上,也可以利用其他閑置的服務(wù)器開啟SMB或ISCSI文件服務(wù)功能建立共享存儲(chǔ),將備份文件存放在共享空間里。
經(jīng)管實(shí)驗(yàn)中心采用微軟Hyper-V 虛擬化技術(shù)方案實(shí)施服務(wù)器虛擬化,在一臺(tái)戴爾Power Edge T440服務(wù)器上虛擬出9個(gè)虛擬機(jī),這些虛擬機(jī)和其他物理服務(wù)器一起分別部署了不同的應(yīng)用,為經(jīng)管類各專業(yè)實(shí)習(xí)實(shí)訓(xùn)教學(xué)提供服務(wù),虛擬機(jī)資源分配及部署應(yīng)用如表2所示。實(shí)施服務(wù)器虛擬化一年多來(lái),系統(tǒng)運(yùn)行穩(wěn)定,管理高效,用戶體驗(yàn)良好[13]。實(shí)施服務(wù)器虛擬化前后相關(guān)數(shù)據(jù)對(duì)比如表3所示。
表2 虛擬機(jī)資源分配及部署應(yīng)用
表3 服務(wù)器虛擬化部署前后對(duì)比
1)提高了應(yīng)用的部署效率,利用虛擬化平臺(tái)快速生成虛擬機(jī),新應(yīng)用可以快速部署并交付使用。應(yīng)用的部署周期由過(guò)去的從服務(wù)器采購(gòu)到交付使用的數(shù)周時(shí)間縮短到了數(shù)小時(shí)的時(shí)間。
2)將服務(wù)器虛擬化成多個(gè)相互隔離的虛擬機(jī),其中的一臺(tái)虛擬機(jī)發(fā)生故障不會(huì)影響整個(gè)系統(tǒng)的運(yùn)行,資源根據(jù)虛擬機(jī)的不同負(fù)載動(dòng)態(tài)分配,實(shí)現(xiàn)了一臺(tái)服務(wù)器部署多個(gè)應(yīng)用的目的,服務(wù)器資源得到了有效利用,節(jié)約了服務(wù)器的采購(gòu)和運(yùn)維成本,減少了能源消耗。
3)高可用性和數(shù)據(jù)安全得到保障。利用Hyper-V 復(fù)制技術(shù)實(shí)現(xiàn)了在服務(wù)器出現(xiàn)故障時(shí)應(yīng)用依然可用。利用系統(tǒng)內(nèi)置的Windows Server Backup 備份功能保障了虛擬化平臺(tái)的數(shù)據(jù)安全。
基于微軟Hyper-V 技術(shù)的服務(wù)器虛擬化解決方案,部署簡(jiǎn)單,運(yùn)行穩(wěn)定,管理靈活高效,用戶體驗(yàn)良好。該平臺(tái)具備高可用性,可以動(dòng)態(tài)調(diào)配硬件資源,能極大地提高資源利用率,減少了物理服務(wù)器的使用和能源消耗,滿足了財(cái)會(huì)、營(yíng)銷、物流、酒店管理等經(jīng)管類應(yīng)用對(duì)服務(wù)器的需求。對(duì)于類似經(jīng)管實(shí)驗(yàn)中心這種應(yīng)用數(shù)量多、并發(fā)訪問(wèn)量不高的小型數(shù)據(jù)中心來(lái)說(shuō),微軟的Hyper-V 虛擬化技術(shù)是一種操作簡(jiǎn)單、經(jīng)濟(jì)實(shí)用的理想解決方案。