摘要:文章從計算機實驗室存在的問題出發(fā),給出一種基于設施進行改造和建設的解決方案,綜合了一些相對前沿的技術,包括虛擬化和云計算等??紤]環(huán)境和設施的局限性,方案采用了多層次的技術策略,包括面向定制需求實現(xiàn)的虛擬機池供應;構建虛擬社區(qū)環(huán)境提供分布式和云計算獨立實驗平臺;基于虛擬桌面服務和安全服務構造,實現(xiàn)桌面應用實驗供應;采用多用戶和Web虛擬機應對Web開發(fā)類綜合性實驗和課程設計。
關鍵詞:實驗平臺;虛擬技術;云計算;實驗教學;研究性實驗。
0、引言
當今高校計算機教學實驗室常常存在“網(wǎng)吧化”現(xiàn)象,在一定程度上反映了國家級計算機類示范中心稀少的原因。在2012年之前全國高校居然只有10個國家級計算機實驗示范教學中心。目前,計算機已成為一種普及性很強的個人工具,很多人認為計算機類的實驗室和1臺個人計算機進行實驗似乎沒有差別。
國內高校很多計算機類的實驗室為學生提供簡單且便于統(tǒng)一計算的環(huán)境,滿足眾多課程共享的實驗要求。信息技術應用的迅猛發(fā)展,導致信息系統(tǒng)廣度和復雜度的不斷發(fā)展,推動著計算和應用模式的革新。單一純機房式配置環(huán)境已經(jīng)無法適應這個發(fā)展態(tài)勢,在實驗教學與實踐方面出現(xiàn)了不少的問題。
1)常規(guī)課程實驗教學。
對于像計算機系統(tǒng)結構、操作系統(tǒng)以及網(wǎng)絡技術等課程,我們需要涉及基層軟硬件及重要的服務環(huán)境配置,部分實現(xiàn)更需要用到多臺計算機和多種設備,而現(xiàn)有的實驗教學條件有限,導致學生學完理論后無法進行實驗,從而影響總體的教學效果,導致在以后工作中解決類似問題時經(jīng)驗不足。
2)開放性實驗和創(chuàng)新性實踐教學。
除了上述一些實驗內容外,許多實驗室也承擔開放實驗項目、創(chuàng)新實驗項目、畢業(yè)設計等教學任務。一些開放性實驗項目往往會涉及應用系統(tǒng)架構,如LAMP開源架構、J2EE多層技術解決方案、分布式文件系統(tǒng)、云計算、網(wǎng)格計算、搜索引擎、軟件和系統(tǒng)安全的測試及信息系統(tǒng)優(yōu)化等。這些是學生畢業(yè)后在工作中都將遇到的現(xiàn)代主流信息技術內容。
如何在保障完成高強度實驗教學任務的前提下構建個性化、自助式、分布式及綜合性實驗環(huán)境,成為現(xiàn)代計算機實驗教學中心建設和改革的重要任務。
1、技術背景
近年來,互聯(lián)網(wǎng)應用的迅猛發(fā)展大大地推動了相關技術的融合。隨著應用規(guī)模和數(shù)據(jù)處理的海量化,如何整合和發(fā)揚傳統(tǒng)的計算技術已成為當今技術發(fā)展的一種趨勢。最典型的是面向互聯(lián)網(wǎng)環(huán)境的云計算,它集成了分布式計算、網(wǎng)格計算以及虛擬化等技術。近年來由于許多著名公司(Google、Yahoo、IBM、Alllazorl等)的推動,云計算的發(fā)展逐漸大行其道。云計算經(jīng)行業(yè)應用和學術機構的傳播,變得觸手可及。就其本質而言,它們并非全新技術內容,但是如何利用這些技術去整合我們的基礎設施和應用資源,卻是一個值得探索的技術話題。
目前,云計算沒有一致的定義,比較認可的定義是:通過對現(xiàn)有各種計算資源的整合,為用戶提供不同層面的按需服務。云計算按層次主要分為3種:基礎設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS)。
計算資源實質上是不同層面上資源(粒度)的邏輯虛擬化。在基礎設施方面(IaaS),最綜合的途徑是系統(tǒng)虛擬化技術。系統(tǒng)虛擬化技術于20世紀60年代由IBM公司提出并實現(xiàn),通過對大型機的硬件資源進行分區(qū),將具有強大計算能力的物理機邏輯地劃分為相互隔離的小型虛擬機,從而實現(xiàn)在一個大型計算機系統(tǒng)上獨立安全地運行多個項目而相互不干擾。近幾年來隨著PC能力大幅度地提升,這種技術被成功地移植到PC領域。
2、應用概況
目前,許多信息化相對成熟的政府機構采用虛擬技術及云計算整合其眾多的業(yè)務系統(tǒng),產(chǎn)生了顯著的效益。一些大學的網(wǎng)絡中心也已經(jīng)嘗試利用虛擬化技術整合了眾多分散的服務器環(huán)境,結果表明虛擬化在生產(chǎn)級場合的應用是可行的。
企業(yè)級服務器虛擬化部署的成功已經(jīng)為計算機實驗教學環(huán)境的建設提供了技術可行性支持。近年來將虛擬化技術引入到教學環(huán)境中的趨勢漸漸出現(xiàn),許多學校采用了工作站為主的局部工作站虛擬化解決方案,在服務器配置和管理、操作系統(tǒng)安裝、網(wǎng)絡技術、網(wǎng)絡安全、信息系統(tǒng)的安全、管理信息系統(tǒng)等課程進行了嘗試;還有一些院校(如首都師范大學)開展了一定規(guī)模的基于服務器的虛擬化應用,為學生提供統(tǒng)一的平臺,在更大范圍內進行實驗教學環(huán)境改革的嘗試,并取得一定的成效;也有不少院校針對虛擬化環(huán)境中教學模式的改革進行了探討。
這些技術逐漸運用于實驗環(huán)境的建設并取得了初步的成效,但在系統(tǒng)的整體部署和管理、學生實驗評價等方面還沒有進行更為深入的探索。這些工作需要對教學計劃進行調整和改革。
3、在服務器整合中融合虛擬化技術
3.1 系統(tǒng)構建
實驗中心提供以機房形式為主的應用軟件環(huán)境。經(jīng)過幾年的建設,我們分別部署了一些教學服務平臺,如在線程序判題、課程伴隨站點、技能考試系統(tǒng)、教學服務資源以及面向教學文件和實驗報告管理的文件傳輸?shù)确?。但是各個系統(tǒng)處于各自為政狀態(tài),無法統(tǒng)一進行管理和資源配置,提供的服務范圍有限,也沒有規(guī)范的后備保障措施。
我們通過增加必要的設備,其中核心設備選用若干較高配置的服務器、網(wǎng)絡存儲以及專用存儲交換機等,包括14臺4G~24G的服務器、IPSAN存儲、8臺高配置的計算機、2臺用于存儲連接的千兆交換機等,對中心網(wǎng)絡布局進行了重新整合,為核心服務提供獨立的網(wǎng)段,制定配套管理措施,增加網(wǎng)絡監(jiān)控服務,通過集群和虛擬化等技術重點整合計算資源及其配服務建設。計算機實驗教學中心服務平臺整合框架示意圖如圖1所示。
服務器整合的對象包括兩類:傳統(tǒng)的柜式服務器以及高配置的PC工作站,構造了系統(tǒng)整合的設備層。部分高配置的服務器通過集群和虛擬化技術提供虛擬主機池。
為配合系統(tǒng)后臺的應用,平臺構建了扮演支撐角色的中間層,實現(xiàn)各種中間服務,例如統(tǒng)一身份認證和權限控制的目錄服務、服務器集群和虛擬化的控制服務器、接入服務器以及提供全局共享服務的網(wǎng)絡存儲系統(tǒng)等,另外還為各種傳統(tǒng)服務器提供后備支撐。
在上述工作的基礎上,整合原先的諸多服務器,提供的服務包括以下幾個方面。
1)實現(xiàn)傳統(tǒng)的服務(如Oracle、Mysql和SQL Server等)、Web虛擬主機服務(提供Web相關課程的站點建設開發(fā)服務)以及整合了實驗報告統(tǒng)一提交和教學文檔管理的FTP服務等。
2)進一步強化和支撐原先的一些集中式Web應用服務,例如基于Django架構開發(fā)的在線判題系統(tǒng)、基于Moodle建設的系列課程伴隨站點以及基于C/S架梅的技能考試系統(tǒng)等。
3)以虛擬池形式提供獨立計算機系統(tǒng),實現(xiàn)個性化、定制和持續(xù)化實驗的需求;其次,采用社區(qū)化模式實現(xiàn)分布式環(huán)境技術探索性的實踐需求;再者,經(jīng)過接入服務器和認證服務器,實現(xiàn)對外的虛擬化桌面供應和開放的實驗服務等。下面主要說明這部分內容在教學中實施的情況。
3.2 教學實施
1)整合現(xiàn)有的系列服務器后,選擇部分課程和實踐教學作為試驗對象。具體的教學形式包括常規(guī)課程的實驗教學、開放性實驗和畢業(yè)設計等。課程種類、課程內容、實驗內容和虛擬機環(huán)境都是比較豐富的。具體工作歷經(jīng)3個階段,從技術方案選擇、實施方式制定到實驗教學內容確立逐步展開。
2)選擇合適的服務器整合方案,開展技術研究和探索,包括對VMwBxe系統(tǒng)解決方案進行探索。具體內容有基本框架構建、分布式資源整合、設計虛擬桌面應用以及本地工作站虛擬機技術的了解、安裝和測試工作。
3)在部分實驗室先期開展本地化虛擬環(huán)境的實驗教學。近年來為計算機應用研究生的“現(xiàn)代數(shù)據(jù)庫技術”課程構建Linux+Virtualbox環(huán)境,提供SQL Server和Oracle系統(tǒng)的管理實驗。
4)探索本地計算機和虛擬服務平臺相結合的方式,選擇一些開放性的實驗,預先在本地機器上開展準備實驗,然后移植至虛擬服務器進行測試,解決虛擬機數(shù)量和總體處理能力局限的矛盾。
5)探索虛擬化系統(tǒng)的配套服務機制,針對多虛擬服務器選擇合適的管理平臺,采用管理服務器實現(xiàn)部分服務器的集群,部署虛擬機池,控制中心數(shù)據(jù)管理采用數(shù)據(jù)庫服務器。中間服務器采用Tomcat,實現(xiàn)多虛擬機的批量復制克隆、遷移等操作,并為虛擬桌面的應用提供支持。
6)在上述摸索的基礎上,選擇課程、開放實驗以及畢業(yè)設計開展課程云服務實驗解決方案的實施,提供多門課程數(shù)百人的課程實驗和實踐活動?;谡麄€服務平臺的部分實驗實踐活動說明如表1所示。
3,3 實施效果
由于實施方案涉及面相對較廣,在學生、教師、實驗中心3個方面產(chǎn)生了不同的影響,總結起來有如下幾點。
1)解決不同課程間或同一課程內不同實驗間的銜接問題。
原先的實驗是一個片段。不少學生實驗做得不錯,但是實驗外和實驗間的操作卻沒有掌握。例如,有一位ASP,NET編程技術學得不錯的同學,讓他在IIS中手工注冊,NET組件卻不會。因為以前ASENET實驗的環(huán)境都是老師準備好的。后來學生在提供的虛擬機中解決了,因此自行探索的能力明顯得到了提升。
2)利用學生Owner的心理,激發(fā)學生積極性。
在傳統(tǒng)實驗中,學生做一次實驗換一臺計算機,擁有感,而且上一個實驗與下一個實驗間的銜接不夠。實驗完成得不完美,學生覺得無所謂,只要大概完成實驗,就覺得差不多了。利用虛擬機后,在一門課程內甚至一個學期內,學生可以持續(xù)獨占此虛擬機。如果期間某個實驗沒有完成,往往會影響后續(xù)實驗的進展。整體“落后”會讓學生覺得沒有面子,從而督促自己積極追趕。而學習好的同學,為了能讓“自己的虛擬機”更加完美,也會投入更多精力,把實驗做得精益求精。
3)探索性實驗。
常規(guī)實驗室中每臺機器要應付多門課程的共同需要,無法為實驗者提供多主機環(huán)境,在畢業(yè)設計、開放實驗、學生科研時尤其如此。基于虛擬化環(huán)境我們可以完成如數(shù)據(jù)庫集群、復制和分布式處理有關的項目,例如Hadoop應用系統(tǒng)構建,Mysql、Sql Server、Oracle的容災,基于圖挖掘應用等實驗項目,也可以為研究生的部分課程開展實踐環(huán)節(jié),強化研究生的工程實踐能力。
4)教學評價。
我們初步設計了一個通過訪問單元計算機(虛擬機)的方式,檢查各個學生實驗機器的狀態(tài),實現(xiàn)跟蹤和評價實驗過程及其結果。
5)實驗環(huán)境的管理。
常規(guī)實驗室環(huán)境必須保障每臺機器的正常運轉狀況。當不正常情況發(fā)生時,現(xiàn)場需要及時維護,工作量可想而知?;谔摂M化技術的機器可以采用克隆、遷移等模式實現(xiàn)備份及故障轉移,而且由于采用了本地的RAID技術或網(wǎng)絡存儲(如IP SAN),其可靠性明顯高于普通的PC機。
6)實驗教學示范中心建設作用。
虛擬技術在實驗教學中的推進,改變了實驗室的建設模式,為實驗室實現(xiàn)示范中心目前建設的5個轉變開創(chuàng)了新的局面,并能帶動實驗教學整體改革。在有關教師的參與下,實驗課程模式也進行了配合,取得了初步的成效,具體表現(xiàn)為以下幾個方面。
①減少了實驗室硬件設備的投入,提高了實驗室設備管理效率,放寬了實驗教學中心安排教學計劃的柔性空間。
②調整和改革實驗教學內容和設置,引導教師參與實驗教學建設,引發(fā)整個教學體系和指導思想的改變。
③探索信息技術專業(yè)本科學生工程型人才的培養(yǎng)途徑,提高學生實踐操作技能,有助于學生全面系統(tǒng)地把握信息技術。
4、結語
溫州大學計算機實驗教學中心在綜合現(xiàn)代技術整合服務平臺基礎上開展的活動,既有常規(guī)的實驗課程,也包括開放性實驗和畢業(yè)設計等環(huán)節(jié)。
通過虛擬技術實現(xiàn)部分服務的重組,主要解決了個性化和分布式服務的實驗教學需求。顯然在目前情況下無法滿足所有學生所有課程的學習需要。我們通過切分和擴展(物理集群)兩種不同層次的集中和虛擬技術策略,滿足不同形式的實驗改革要求?;诙嘤脩艉蚖eb虛擬機構造滿足Web開發(fā)類綜合和課程設計的實驗要求;基于虛擬桌面服務和安全服務構造,實現(xiàn)了對外提供網(wǎng)絡測試實驗平臺;通過實驗的可持續(xù)性和可測量(基于軟件輔助評測),提供更加完備的實驗過程監(jiān)控和行為評測。
如何進一步整合服務器系統(tǒng)以及深化管理支撐平臺建設成為下一步工作的內容之一。在運作過程中積淀的數(shù)據(jù)為教學服務更為深層的分析和評價提供了依據(jù),其作用會更加強大,以至于對于實驗教學體系產(chǎn)生根本的影響,使系統(tǒng)成為計算機實驗教學示范中心運作的核心。