錢建良
(江蘇省教育考試院,江蘇南京210024)
網上評卷是一種新的評卷方式,它以計算機網絡技術、掃描和圖像處理技術為依托,以控制非選擇題評卷誤差和實現考試公平性原則為最終目的,將多年評卷積累的豐富經驗與現代高新技術相結合,評卷教師不在考生的原始答卷上直接評分,而是通過計算機網絡在客戶端計算機上對考生答卷掃描圖像評分。
2004年網上評卷首次在江蘇省成人高考中實施,目前已在普通高考、學業(yè)水平測試和成人高考中得到了廣泛應用,經過多年改進,已形成了比較完善的以物理機為系統(tǒng)架構的部署模式。但在近十年的實施中,仍存在一些無法避免的問題:①不同項目承擔評卷的公司不同,而硬件環(huán)境則使用同一套設備,每次運行前30多臺服務器都需要重裝操作系統(tǒng)開始進行全新部署,造成大量的低級重復勞動;②評卷過程中一旦有服務器出現故障,將會造成某些科目評卷中斷,影響評卷整體進度,如果中斷時間過長,將有可能造成不良影響;③無法充分利用硬件資源。
而近幾年,日益成熟的虛擬化技術越來越多地應用于各種生產系統(tǒng),其實時動態(tài)遷移、高可用性[1]等優(yōu)點使得解決目前網上評卷部署中遇到的問題成為可能。
文中以江蘇省教育考試院運用虛擬化部署技術的實踐成果作為案例,從實用性角度比較分析了原有系統(tǒng)部署模式與改進后的虛擬化部署模式的優(yōu)缺點;概括了虛擬化技術的顯著特點,并展望了基于云計算模式下的網上評卷系統(tǒng)前景。旨在將這一新型技術推廣開來,為各類網上評卷系統(tǒng)提供高效率的技術服務。
網上評卷系統(tǒng)采用基于J2EE的設計架構,客戶端以瀏覽器方式訪問系統(tǒng)進行評卷。評卷開始前,先將考生原始答題信息通過掃描的方式轉換成電子圖片保存到存儲上,再根據評卷專家組預先制定的切割方案將圖片分割成以一題或若干題為單位的子圖,通過網上評卷系統(tǒng)將子圖分發(fā)到評卷客戶端供評卷教師評閱。每一科目所需的硬件包括存儲考生答題圖片的存儲、數據庫服務器、提供考生答題子圖下載的文件服務器以及應用服務器。根據考生數量的不同,不同科目部署的應用服務器和文件服務器數量會有差異,如語文會配置2臺應用服務器、2臺文件服務器及1臺數據庫服務器。具體如圖1所示。
圖1 網上評卷傳統(tǒng)部署結構Fig.1 Online marking traditional deployment structure diagram
網上評卷系統(tǒng)的評卷過程為:評卷教師通過評卷客戶端瀏覽器訪問應用服務器,應用服務器接收客戶端請求,從數據庫服務器中獲取相關信息,包括答題子圖的url路徑,返回給客戶端瀏覽器;客戶端瀏覽器收到響應后,根據子圖的url路徑,從文件服務器獲取對應子圖,返回給客戶端;評卷教師評閱答題子圖后對答題結果打分提交,存入數據庫服務器,并請求下一個答題子圖。
1.2.1 系統(tǒng)部署效率低 以普通高考為例,所有科目所需的服務器包括應用服務器、文件服務器、數據庫服務器、掃描服務器和備用服務器共30多臺。在每次評卷前,每臺服務器都需要重裝操作系統(tǒng)、安裝補丁、防病毒軟件、數據庫軟件、中間件等支撐軟件;并對操作系統(tǒng)進行安全設置,優(yōu)化數據庫軟件和中間件參數;再部署評卷系統(tǒng),根據不同的科目,評卷教師的數量,設置各個科目的各類評卷參數。
整個部署工作完成一般需要一周的時間,這些工作都是簡單的重復性工作,不僅浪費時間精力,而且容易出錯,如漏裝服務器,個別服務器系統(tǒng)參數未設置或設置錯誤等。
1.2.2 服務器調整時間長 在網上評卷系統(tǒng)運行過程中,會出現一些雖可預料但無法預知何時出現的問題,如硬件故障或由于個別服務器負載壓力過大需要增加服務器分擔壓力。在傳統(tǒng)部署模式中,會在部署系統(tǒng)時準備一定數量的備用服務器,出現上述情況時及時進行切換。應急預案中無法知道是哪種服務器出現故障,因此在進行更換時需要對服務器進行參數設置和調整,甚至要安裝數據庫系統(tǒng)或中間件,切換時間一般較長(至少需要半天時間);同時由于時間緊、壓力大,容易出現配錯參數等低級錯誤,對評卷進度、評卷教師的心情影響比較大[2]。
1.2.3 服務器資源利用率低 網上評卷系統(tǒng)在評卷高峰期間,系統(tǒng)負載較高,為確保網上評卷系統(tǒng)的性能,評卷使用的硬件服務器配置一般都比較高,但由于網上評卷系統(tǒng)所使用的系統(tǒng)都是32位系統(tǒng),無法充分利用硬件資源,造成資源利用率低下,整個系統(tǒng)性能得不到提高。
1.3.1 虛擬化技術比較 目前基于x86架構的服務器虛擬化主流產品有VMware的vSphere,開源的Xen,微軟的Hyper-V和開源的KVM。
1)VMware vSphere是業(yè)界領先的用于構建云計算基礎架構的虛擬化平臺。利用vSphere可以減少IT空間占用,并最大限度地提高現有IT基礎架構的利用率。允許多個虛擬機共享單個物理機的計算、網絡連接和資源存儲。通過其內置的業(yè)務連續(xù)性功能、基于策略的服務級別管理以及集成的網絡安全和防火墻保護來提供應用系統(tǒng)的可用性,已在全世界數以萬計的客戶部署中經過了生產驗證[3]。
2)Hyper-V采用微內核的架構,兼顧了安全性和虛擬機系統(tǒng)性能的要求。Hyper-V底層的Hypervisor運行在最高的特權級別下,微軟將其稱為ring-1,而虛擬機的OS內核和驅動運行在ring 0,應用程序運行在ring 3下,這種架構就不需要采用復雜的BT(二進制特權指令翻譯)技術,可以進一步提高安全性[4]。但是鑒于Hyper-V采用Windows Server 2008內核,決定其穩(wěn)定性具有一定的局限性。
3)Xen采用半虛擬化技術,需要修改操作系統(tǒng)的內核,加入一個Xen Hypervisor層。它允許安裝在同一硬件設備上的多個系統(tǒng)同時啟動,由Xen Hypervisor進行資源調配。在這種虛擬環(huán)境下,依然需要模擬硬件設備,安裝Guest操作系統(tǒng),并且需要修改操作系統(tǒng)的內核,部署和維護較為復雜。
4)KVM是開源的虛擬化軟件,KVM是Linux內核的一部分,這個輕量級的虛擬化管理程序模塊能直接與硬件交互,不需要修改虛擬化操作系統(tǒng),并且補丁包能夠和Linux內核兼容,輕松控制虛擬化進程,同時減輕管理負擔。但KVM的出現時間不長,技術尚不成熟,生產環(huán)境中還較少使用。
綜上分析,文中重點考慮虛擬化軟件在生產環(huán)境中的使用程度、穩(wěn)定性、可靠性和易維護性,選用了VMware虛擬化軟件進行部署,通過vCenter對虛擬機進行管理。網上評卷虛擬化部署結構如圖2所示。
圖2 網上評卷虛擬化部署結構Fig.2 Online marking virtualization deployment structure diagram
1.3.2 共享存儲的選擇 共享存儲是虛擬化部署的一個重要組成部分,共享存儲可以選擇NAS,IP SAN或FC SAN。在網上評卷系統(tǒng)中,掃描后的考生答題圖像保存在NAS存儲上。評卷教師在評卷期間,瀏覽器通過文件服務器下載考生答題子圖會占用大量的網絡帶寬,如果虛擬化使用NAS存儲或IP SAN存儲,在虛擬機進行實時遷移或復制時,會影響評卷教師評卷的流暢度。實際測試中發(fā)現,在千兆網絡下,克隆或遷移一臺4個vcpu,8 GB vram,80 GB磁盤大小的虛擬機,如果使用NAS存儲,時間約20 min左右,同時其他虛擬機的運行流暢度會受到較明顯的影響;而采用8 Gb帶寬的FC SAN存儲,只需要5 min左右,且不影響其他虛擬機的運行。因此文中在部署中,選用了FC存儲。FC存儲劃分成多個LUN,分別用于存放不同評卷公司需要使用的虛擬機文件和虛擬機模板,在進行虛擬機遷移、克隆等操作時,可避免對已運行的虛擬機性能產生影響。
1.3.3 虛擬服務器的快速部署 在網上評卷系統(tǒng)中,應用服務器和文件服務器選用虛擬機部署,對于負載比較高的評卷項目(如高考),數據庫服務器采用物理機部署,負載比較輕的評卷項目數據庫服務器使用虛擬機部署。根據不同評卷公司系統(tǒng)的情況,為每個評卷公司創(chuàng)建評卷所需的虛擬服務器(分別安裝應用服務器、文件服務器和數據庫服務器虛擬機),每種服務器均按實際要求進行安裝并優(yōu)化,完成后生成虛擬機模板[5]。在網上評卷系統(tǒng)準備期間,根據虛擬機模板批量生成所需服務器。高考評卷期間,原本需要約一周的準備時間可壓縮到半天,而且可以確保每臺復制出來的服務器都經過了優(yōu)化。在網上評卷系統(tǒng)運行過程中,如果需要增加應用服務器或文件服務器,可以用虛擬機模板直接克隆生成,將生成后的虛擬機IP地址、主機信息進行相應更改后,即可快速投入使用,這個過程一般可在15~30 min完成。
在第一次復制完虛擬機后,需要對每臺虛擬機的評卷參數進行設置,設置完成及本次評卷結束后,虛擬機將全部關閉,下次評卷開始時不再需要重新設置這些參數,只需啟動這些虛擬機即可。
虛擬化部署方式極大地提高了部署效率,同時,也保證了每臺服務器的可靠性和穩(wěn)定性。
1.3.4 群集系統(tǒng)的高可用性 在采用虛擬化部署前,一臺物理服務器故障只會導致一個應用無法工作,而虛擬化部署后,一臺物理機故障會導致運行的多個應用無法工作。用于確保更高級別高可用性的傳統(tǒng)解決方案都需要較大開銷,并且難以實施和管理。群集的高可用性能減少計劃內停機時間,防止出現計劃外停機[6],并在物理機出現故障時提供自動恢復能力。群集中的主機均會受到監(jiān)控,如果發(fā)生故障,故障主機上的虛擬機將在備用主機上重新啟動[7]。在網上評卷系統(tǒng)中啟用了群集系統(tǒng)的高可用性,解決了原部署模式下,當物理服務器出現突發(fā)故障后長時間影響業(yè)務的正常運行,提高了系統(tǒng)的健壯性。
1.3.5 虛擬服務器的權限管理 網上評卷系統(tǒng)的虛擬機包括用于管理虛擬平臺所需要的虛擬機和不同評卷公司評卷用的虛擬機,管理虛擬平臺所用虛擬機主要有DNS服務器、Active Directory服務器、vCenter服務器。在網上評卷用戶權限設置中,設置了網絡管理和若干個評卷公司兩個角色,每個評卷公司角色下又設置了掃描虛擬機、應用服務器、文件服務器和數據庫服務器4個角色,每個角色分配相應的管理或使用人員。這樣,不同的用戶登錄后只能看到相應的虛擬服務器,確保了虛擬機的訪問安全。
1.3.6 提高網上評卷系統(tǒng)的可維護性 在網上評卷系統(tǒng)運行過程中,對硬件設備進行計劃內維護時,可使用實時遷移技術vmotion將虛擬機遷移到其他物理機上,不需要中斷業(yè)務的正常運行。
1.3.7 提高硬件資源的利用率 網上評卷系統(tǒng)采用虛擬化方式部署后,每臺物理機上都運行著若干臺虛擬機,極大地提高了硬件資源的利用率[8],也降低了硬件設備的數量,整個評卷系統(tǒng)所使用的服務器比原來減少了近一半。
網上評卷系統(tǒng)采用虛擬化部署后,硬件費用、維護成本等各方面都有了較大幅度降低,而系統(tǒng)性能則完全能滿足網上評卷的要求,表1為普通高考網上評卷虛擬化部署前后的對比情況。
表1 普通高考網上評卷虛擬化部署前后的對比Tab.1 College entrance examination online marking virtualization deployment before and after contrast
云計算是一種新型的計算模式,能夠把IT基礎設施資源、應用系統(tǒng)作為服務通過互聯網提供給用戶,它也是一種新的基礎架構管理方法,能夠把大量的、高度虛擬化的資源管理起來,組成一個龐大的資源池,以服務方式進行管理[9]。
云計算定義了3種服務模式,基礎設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS)。Iaas通過網絡向用戶提供計算機(物理機和虛擬機)、存儲空間、網絡連接、負載均衡和防火墻等基本計算資源;用戶在此基礎上部署和運行各種軟件,包括操作系統(tǒng)和應用程序。PaaS實際上是指將軟件研發(fā)的平臺作為一種服務,以SaaS的模式提交給用戶。平臺通常包括操作系統(tǒng)、編程語言的運行環(huán)境、數據庫和 Web服務器,用戶在此平臺上部署和運行自己的應用。用戶不能管理和控制底層的基礎設施,只能控制自己部署的應用。SaaS是一種通過Internet提供軟件的模式,云用戶通過云客戶端(通常是Web瀏覽器)使用軟件。云用戶不能管理應用軟件運行的基礎設施和平臺,只能做有限的應用程序設置。
根據網上評卷系統(tǒng)的特點,可以對現有部署結構進一步加以改進,在現有服務器虛擬化基礎上,對網絡、存儲等資源進行虛擬化,以PaaS服務的方式提供網上評卷所需的數據庫服務器平臺、Web服務器平臺和文件服務器平臺,評卷公司直接從提供的云服務中申請資源即可完成系統(tǒng)的部署。
文中提出了在網上評卷項目中采用虛擬化部署的方式。并在2012年江蘇省普通高考、學業(yè)水平測試和成人高考的網上評卷項目中進行了部署實施。實踐結果表明:采用虛擬化部署方式能大幅度地提高部署效率和質量,減少大量的重復低級工作,充分提高硬件資源的利用率;同時,利用虛擬化的高可用性、實時動態(tài)遷移、資源動態(tài)分配等優(yōu)點,解決原有部署方式中由于硬件服務器故障等計劃外停機和計劃內停機而導致的評卷工作中斷,確保了網上評卷系統(tǒng)可靠、穩(wěn)定地運行。
[1]Scott Lowe.Mastering VMware vSphere 5[M].Indianapolis:John Wiley and Sons,2011.
[2]楊志彬.高校實驗教學用服務器資源虛擬化部署[J].實驗室研究與探索,2010,29(7):75-78.YANG Zhi-bin.Study on virtualization deployment of server resource for university's laboratory[J].Research and Exploration in Laboratory,2010,29(7):75-78.(in Chinese)
[3]VMware中國官方網站.ESXi和 vCenter Server5.1 文檔中心[EB/OL].(2012-09-14)[2013-01-16].http://www.vmware.com.cn.
[4]韓寓.服務器虛擬化技術研究與分析[J].電腦知識與技術,2011,7(7):1654-1655.HAN Yu.Server virtualization technology research and analysis[J].Computer Knowledge and Technology,2011,7(7):1654-1655.(in Chinese)
[5]繆一峰.醫(yī)院虛擬化服務器部署[J].計算機應用與軟件,2011,28(8):206-208,259.MIAO Yi-feng.Hostital virtual server deployment[J].Computer Applications and Software,2011,28(8):206-208,259.(in Chinese)
[6]薛秀珍.利用VMware部署圖書館服務器虛擬化解決方案[J].信息技術,2010(4):151-154.XUE Xiu-zhen.Using VM ware software to implement library server virtualization[J].Information Technology,2010(4):151-154.(in Chinese)
[7]葉玲,孫鑒坤.虛擬化技術在圖書館服務器中的應用[J].高校圖書情報論壇,2012,11(1):12-14.YE Ling,SUN Jian-kun.Application of virtualization technology in the library server[J].Academic Library and Information Tribune,2012,11(1):12-14.(in Chinese)
[8]張文盛.虛擬化服務器的應用研究[J].辦公自動化,2010(4):25-26.ZHANG Wen-sheng.Application of server virtualization in colleges and universities[J].Office Information,2010(4):25-26.(in Chinese)
[9]李雙權,王燕偉.云計算中服務器虛擬化技術探討[J].郵電設計技術,2011(10):27-33.LI Shuang-quan,WANG Yan-wei.Research on the server virtualization technology in cloud computing[J].Designing Techniques of Posts and Telecommunications,2011(10):27-33.(in Chinese)