金永霞
(河海大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 常州 213022)
云計算技術(shù)與應(yīng)用課程的實驗教學(xué)探索與實踐
金永霞
(河海大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 常州 213022)
對云計算技術(shù)專業(yè)人才的培養(yǎng)是近年來高校本科教學(xué)的一個熱點問題,云計算技術(shù)是一門以實踐為中心的課程,實驗教學(xué)對培養(yǎng)學(xué)生的云計算設(shè)計和應(yīng)用能力具有重要作用。文章從實驗平臺建設(shè)、實驗內(nèi)容設(shè)計、實驗?zāi)J礁母?、?chuàng)新實踐能力培養(yǎng)等方面對云計算課程的實驗教學(xué)進行有益的探索,旨在提升實驗教學(xué)質(zhì)量,有效訓(xùn)練學(xué)生對云計算環(huán)境的認知、分析、設(shè)計和運用能力。
實驗教學(xué);云計算實驗平臺;實驗?zāi)J?;實踐創(chuàng)新
云計算技術(shù)是近年來計算機和互聯(lián)網(wǎng)領(lǐng)域的研究熱點,云計算技術(shù)的迅速發(fā)展對高校培養(yǎng)高素質(zhì)復(fù)合型和創(chuàng)新型工程技術(shù)人才提出新的要求,因而云計算課程正逐漸成為電子信息類專業(yè)的核心課程。目前,國內(nèi)各高校根據(jù)自己的實際情況,開設(shè)云計算相關(guān)的課程,在培養(yǎng)云計算專業(yè)人才方面進行探索和實踐[12]。為促進學(xué)生掌握云計算相關(guān)技術(shù),培養(yǎng)學(xué)生的云計算設(shè)計和應(yīng)用能力,河海大學(xué)在物聯(lián)網(wǎng)工程專業(yè)開設(shè)云計算技術(shù)與應(yīng)用課程,主要介紹云計算的基本理論、關(guān)鍵技術(shù)以及云系統(tǒng)的架構(gòu)和應(yīng)用。課程的目標是讓學(xué)生了解云計算的解決方案,掌握云計算的服務(wù)模式,并在此基礎(chǔ)上通過實踐部署云平臺,進而在云平臺上構(gòu)建相關(guān)云應(yīng)用。由于云計算是來源于互聯(lián)網(wǎng)企業(yè)的一項綜合性技術(shù),是虛擬化、分布式計算、并行計算、負載平衡等多種計算機和網(wǎng)絡(luò)技術(shù)發(fā)展融合的成果,云計算技術(shù)的實踐性、時代性與發(fā)展性,決定云計算是一門以實踐為中心的課程,因此實驗環(huán)節(jié)對整個課程的教學(xué)質(zhì)量起至關(guān)重要的作用。筆者對云計算技術(shù)與應(yīng)用課程的實驗教學(xué)進行探索和實踐,通過構(gòu)建實驗平臺、優(yōu)化實驗內(nèi)容、創(chuàng)新實驗?zāi)J?、強化綜合設(shè)計訓(xùn)練等措施,幫助學(xué)生掌握云計算的理論知識和實用技術(shù),使學(xué)生在未來的就業(yè)市場更有競爭實力。
為了給云計算課程的教學(xué)和實踐提供實驗環(huán)境支持,筆者采用“IBM OpenStack Solution for System X”云平臺解決方案設(shè)計企業(yè)級私有云架構(gòu)[3],構(gòu)建基于OpenStack的云計算實驗平臺并在其上部署虛擬桌面、分布式計算等應(yīng)用環(huán)境,按實驗需求分配基礎(chǔ)設(shè)施資源,提供實驗教學(xué)的軟硬件環(huán)境支持。OpenStack是一整套云計算開源軟件項目的綜合,旨在為公共及私有云的建設(shè)與管理提供軟件,實現(xiàn)基礎(chǔ)設(shè)施級的資源配置?;贠penStack的云計算實驗平臺根據(jù)用戶需求快速創(chuàng)建實驗環(huán)境,為云計算課程以及其他物聯(lián)網(wǎng)專業(yè)課程提供應(yīng)用開發(fā)和環(huán)境管理服務(wù)。云計算實驗平臺框架如圖1所示。
云計算實驗平臺的物理設(shè)施資源包括網(wǎng)絡(luò)、計算和存儲設(shè)備等,通過使用虛擬化技術(shù)KVM對底層硬件進行虛擬化,形成統(tǒng)一的虛擬資源池[4]。云計算實驗平臺中部署了OpenStack的核心服務(wù)組件,包括存儲服務(wù)、計算服務(wù)、鏡像服務(wù)、認證服務(wù)、網(wǎng)絡(luò)服務(wù)等,以提供實驗所需的軟硬件資源管理;同時還配置了開源的網(wǎng)絡(luò)資源監(jiān)控工具Ganglia和 Nagios,對云平臺的運行狀況及性能進行實時監(jiān)控。Nagios用于監(jiān)控云平臺的主機、網(wǎng)絡(luò)和服務(wù)狀態(tài),Ganglia用于監(jiān)控系統(tǒng)資源負荷情況。
圖1 云計算實驗平臺框架
在基于OpenStack的云實驗平臺下配置常用的云應(yīng)用工具,如數(shù)據(jù)庫、桌面云系統(tǒng)、分布式數(shù)據(jù)處理和存儲平臺Hadoop等。桌面云系統(tǒng)為實驗教學(xué)提供一種自主創(chuàng)建和管理虛擬機實驗環(huán)境的方式,采用VDI(virtual desktop instructure,虛擬桌面架構(gòu))模式構(gòu)建。云實驗平臺將實驗所需的軟件環(huán)境制作為鏡像,需要時再利用這些鏡像創(chuàng)建虛擬機,學(xué)生只需獲得使用權(quán)限,通過桌面云登錄到虛擬機,就可獲得所需的實驗資源。云實驗平臺下的Hadoop應(yīng)用環(huán)境為分布式數(shù)據(jù)處理的相關(guān)實驗以及專業(yè)工程實踐提供環(huán)境支持和展示服務(wù);在OpenStack云平臺中部署Hadoop,不僅能充分利用云平臺中未被利用的計算資源,最大限度地提高服務(wù)器資源利用率,還可簡化Hadoop集群的部署工作,大大提高實驗環(huán)境的部署效率。
云計算實驗教學(xué)的目標是引導(dǎo)學(xué)生動手對云平臺進行操作和配置,加深理解云計算的理論和架構(gòu)并掌握一些云應(yīng)用構(gòu)建和部署的經(jīng)典技術(shù),最終能夠利用云平臺開發(fā)各種應(yīng)用。圍繞這個目標,河海大學(xué)與IBM公司合作共同建設(shè)云計算技術(shù)與應(yīng)用課程,設(shè)計云計算實驗的關(guān)鍵內(nèi)容和實驗項目,幫助學(xué)生對所學(xué)理論和技術(shù)建立完整的知識體系;在教學(xué)實施過程中通過IBM公司提供技術(shù)支持和平臺支持、教師參加IBM的云計算技術(shù)培訓(xùn)等各種方式,積極吸收云計算企業(yè)的前沿科技成果;充分利用IBM公司提供的云平臺資源實施相關(guān)的實驗項目,設(shè)計IaaS、PaaS以及SaaS相關(guān)的實驗項目并持續(xù)完善課程教學(xué)內(nèi)容,優(yōu)化課程體系。
在IaaS級別上的實驗項目主要是對開源云平臺OpenStack的部署和應(yīng)用。通過安裝和配置OpenStack核心組件,學(xué)生可以深入理解基礎(chǔ)設(shè)施云架構(gòu),從而理解怎樣構(gòu)建公有云和私有云;學(xué)生采用腳本安裝或源碼安裝方式搭建一個多節(jié)點的OpenStack云平臺,安裝OpenStack的主要組件服務(wù)并對OpenStack云平臺實現(xiàn)基本的操作管理,掌握IaaS平臺對基礎(chǔ)設(shè)施資源的分配和使用模式。
在PaaS級別上的實驗項目包括Hadoop以及IBM BlueMix平臺的應(yīng)用。學(xué)生通過搭建一個Hadoop集群的分布式計算平臺,熟悉其核心組件,同時自主研究大數(shù)據(jù)分析算法,對現(xiàn)實中海量數(shù)據(jù)處理場景進行分析,并在Hadoop集群環(huán)境中處理實現(xiàn)。BlueMix是IBM公司推出的PaaS公用平臺,學(xué)生在BlueMix平臺配置開發(fā)環(huán)境,可以實現(xiàn)移動應(yīng)用、Web應(yīng)用、大數(shù)據(jù)應(yīng)用和物聯(lián)網(wǎng)應(yīng)用的開發(fā)和部署[5],通過自主研發(fā)和實踐操作理解云計算PaaS平臺的可靠、高效以及高可伸縮的處理特點。
在SaaS級別上,以IBM Worklight開發(fā)環(huán)境為核心,將云計算和移動開發(fā)相結(jié)合,設(shè)計海量并發(fā)移動應(yīng)用開發(fā)等案例。這些實驗內(nèi)容的設(shè)置,旨在通過實踐教學(xué)結(jié)合行業(yè)云應(yīng)用案例,幫助學(xué)生掌握云應(yīng)用的特點以及構(gòu)建、部署、運行和管理云應(yīng)用的相關(guān)技術(shù)。學(xué)生通過實驗可以了解虛擬化、集群管理、云平臺資源分配、云應(yīng)用部署和發(fā)布等多種技術(shù)內(nèi)容,加深對云平臺層次模型的理解,提高云平臺的實踐技能。
教師在實驗教學(xué)實施過程中不斷完善和補充實驗項目,結(jié)合物聯(lián)網(wǎng)專業(yè)的其他實驗教學(xué)平臺,開發(fā)與工程訓(xùn)練與工程應(yīng)用相關(guān)的實驗項目,如與移動流媒體應(yīng)用開發(fā)實驗平臺相結(jié)合,在云計算平臺部署后端移動視頻直播服務(wù)器,實現(xiàn)手機視頻即拍即傳、手機視頻直播和點播播放功能,設(shè)計基于云平臺的實時移動視頻應(yīng)用實驗項目,作為開放性實驗發(fā)布。
在實驗教學(xué)中,教師可不斷豐富教學(xué)資源,對實驗素材進行整理和測試并補充完善相關(guān)的理論知識,編著出版針對本科生層次的云計算實踐教程,使學(xué)生能夠在教程的指導(dǎo)下獨立完成實驗項目;同時對課程進行在線課堂建設(shè),整合包含視頻、PPT、文字等多種媒體形式的實驗素材,實現(xiàn)優(yōu)質(zhì)資源共享。由于云計算技術(shù)發(fā)展迅速,平臺更新快,很多新的研究成果和技術(shù)需要通過網(wǎng)絡(luò)資源獲取,因此在線課堂應(yīng)密切關(guān)注云計算技術(shù)的發(fā)展動態(tài),緊密跟蹤主流云計算平臺與技術(shù),及時更新技術(shù)資料和知識點,拓寬學(xué)生的知識面。
依托在線課堂,教師應(yīng)改革實驗教學(xué)模式,強化課前預(yù)習(在線)和課后拓展(在線)環(huán)節(jié)并在課堂實驗中增加研討內(nèi)容,逐步打破傳統(tǒng)的單一課堂實驗?zāi)J?,形成“課前預(yù)習(線上)+實驗研討(線下)+課后拓展(線上)”的混合型實驗?zāi)J健T诰€課堂的開放性和云實驗平臺的共享性決定課程采用混合型實驗?zāi)J骄哂邢忍靸?yōu)勢:學(xué)生可以隨時提前進行實驗預(yù)習和設(shè)計實驗方案,并通過網(wǎng)絡(luò)平臺傳給教師審核;教師可以在云實驗平臺上驗證學(xué)生提交的實驗作品;課后拓展實驗所需的軟硬件資源可以通過遠程登錄云實驗平臺申請分配,并通過虛擬桌面的方式獲取。
在混合實驗?zāi)J较?,教師在實驗前準備相關(guān)知識點的視頻和閱讀資料上傳到在線課堂,并為學(xué)生制訂可完成的預(yù)習目標,讓學(xué)生有的放矢,自由自主地完成與實驗相關(guān)的預(yù)習任務(wù);在實驗中引導(dǎo)學(xué)生完成實驗并進行互動討論,讓班級同學(xué)以小組形式開展協(xié)同學(xué)習,將實驗任務(wù)落實到組內(nèi)的每個成員;實驗驗收時由各組講解相應(yīng)內(nèi)容,教師與其他小組進行點評和提問,參與討論;要求學(xué)生在實驗后在線提交實驗作品和實驗報告,根據(jù)學(xué)生表現(xiàn)和實驗結(jié)果打分并計入課程總成績。
混合型實驗?zāi)J酱蚱苽鹘y(tǒng)實驗方式對實驗場地和時間的限制,讓學(xué)生自主決定學(xué)習時間、學(xué)習內(nèi)容和學(xué)習難度,解決學(xué)生學(xué)習意愿與資源供給的矛盾,從而有效提高實驗效果。學(xué)生成為教學(xué)活動的主體,通過線上學(xué)習、線下動手實踐和討論的方式獲得良好的學(xué)習體驗,不僅輕松學(xué)習專業(yè)知識,還可鍛煉自主學(xué)習能力、自控能力和表達能力。
對于云計算的初學(xué)者和本科層次的學(xué)生來講,課程教學(xué)比較有效的方法是讓學(xué)生快速建立云計算的基本概念,然后通過實驗操作直觀了解云平臺的使用,在此基礎(chǔ)上再深入了解和剖析云計算系統(tǒng)的體系結(jié)構(gòu)和實現(xiàn)模塊,因此在實驗教學(xué)過程中,教師應(yīng)按照課程教學(xué)的進度實時安排實驗內(nèi)容,做到理論和實踐相結(jié)合,通過實踐及時消化理解課堂所授知識點;同時,鼓勵學(xué)生在完成課堂實驗的基礎(chǔ)上,充分利用課外時間對云計算進行深入學(xué)習和實踐,完成拓展實驗項目。學(xué)生以課外小組的形式提高學(xué)習,學(xué)習主題不限,可以是IaaS/PaaS平臺搭建配置,也可以在云平臺上進行應(yīng)用開發(fā),或者設(shè)計一套從底層到應(yīng)用的云計算解決方案。以PaaS平臺BlueMix為例,該云平臺具有強大的靈活性和兼容性,不限制開發(fā)內(nèi)容和開發(fā)工具,學(xué)生可以根據(jù)自己的興趣,充分發(fā)揮自身特長,在該平臺實現(xiàn)與硬件、網(wǎng)絡(luò)、軟件開發(fā)相關(guān)的應(yīng)用并且即時發(fā)布到互聯(lián)網(wǎng)。課后拓展實驗環(huán)節(jié)注重綜合能力訓(xùn)練[6],學(xué)生能夠充分發(fā)揮自己的主動性和創(chuàng)造性,通過在開放的實驗環(huán)境中設(shè)計開發(fā)云計算應(yīng)用系統(tǒng),逐步培養(yǎng)自主創(chuàng)新意識和創(chuàng)新能力。
對于表現(xiàn)突出或者在公有云平臺上發(fā)布優(yōu)秀作品的學(xué)生,鼓勵他們參加國家、省部級組織的云計算相關(guān)賽事,如云計算應(yīng)用大賽、IBM公有云平臺開發(fā)大賽等,利用學(xué)科賽事訓(xùn)練學(xué)生的實踐創(chuàng)新能力[7]。通過自主學(xué)習和參加競賽,學(xué)生能夠充分理解最先進的軟件開發(fā)模式,掌握最新的云計算技術(shù),提高云計算設(shè)計和應(yīng)用能力。
云實驗平臺構(gòu)建、產(chǎn)學(xué)合作優(yōu)化實驗內(nèi)容、在線課堂建設(shè)、創(chuàng)新實驗?zāi)J降却胧┰谠朴嬎銓嶒灲虒W(xué)中實施,目的是提升學(xué)生的學(xué)習體驗,啟發(fā)和引導(dǎo)學(xué)生自主學(xué)習,有效訓(xùn)練學(xué)生的綜合實踐能力。實驗教學(xué)幫助學(xué)生對云計算建立直觀感性的認識,從管理者和開發(fā)者的角度了解云平臺是什么,能提供什么服務(wù),而不再停留在對云計算空泛的理論認識上。由于云計算技術(shù)更新快、實踐要求高,教師在今后的實驗教學(xué)環(huán)節(jié)中還須設(shè)計更為有效的激勵機制,以激發(fā)學(xué)生興趣,吸引他們投入更多的課外時間開展云計算技術(shù)的研究和實驗,更好地掌握云計算的實戰(zhàn)技能。
[1] Google中國教育合作項目[EB/OL]. [2016-08-24]. http://www.google.cn/university/curriculum/elite.html.
[2] 超星視頻. Cloud computing infrastracture, platform and theory[EB/OL]. [2016-08-24]. http://video.chaoxing.com/serie_400003949. shtml.
[3] 張小斌. OpenStack企業(yè)云平臺架構(gòu)與實踐[M]. 北京: 電子工業(yè)出版社, 2015: 309-322.
[4] Von Hagen W. 使用 KVM 虛擬化技術(shù)[EB/OL]. (2014-03-24)[2016-08-24]. https://www.ibm.com/developerworks/cn/linux/l-usingkvm/.
[5] IBM Bluemix[EB/OL]. [2016-08-24]. https://www.ibm.com/cloud-computing/bluemix/.
[6] 朱金秀, 范新南, 朱昌平, 等. 電氣信息類人才實踐創(chuàng)新能力培養(yǎng)體系[J]. 實驗室研究與探索, 2011, 30(10): 129-131.
[7] 朱昌平, 曾曉陽, 劉艷, 等. 通過“六大賽事”促進IT大學(xué)生實踐創(chuàng)新能力的提高[J]. 實驗室研究與探索, 2009, 28(11): 13-16.
(編輯:宋文婷)
1672-5913(2017)02-0146-03
G642
江蘇高校品牌專業(yè)建設(shè)工程資助項目(PPZY2015B141);2014年度教育部―IBM產(chǎn)學(xué)合作專業(yè)綜合改革項目“云計算技術(shù)與應(yīng)用”(留金美[2015]7530號);河海大學(xué)2015年度創(chuàng)新性教學(xué)實驗項目“云計算IaaS與PaaS平臺配置與開發(fā)實驗項目”(河海教務(wù)[2015] 60號)。
金永霞,女,實驗師,研究方向為云計算實踐與應(yīng)用,jinyx@hhu.edu.cn。