陳曉亮
摘 要 大數(shù)據(jù)作為一個熱點(diǎn)技術(shù)和服務(wù)被廣泛應(yīng)用于社會與學(xué)術(shù)等領(lǐng)域。本文考慮高校大數(shù)據(jù)與云計(jì)算課程教學(xué)實(shí)踐過程較少涉及環(huán)境配置方面的問題。綜合學(xué)生面對繁雜的配置工具和方法的困難,提出了用Devstack實(shí)現(xiàn)Openstack單節(jié)點(diǎn)云平臺搭建的大數(shù)據(jù)相關(guān)課程平臺搭建實(shí)驗(yàn)規(guī)劃。以此更好地服務(wù)于高校的信息類專業(yè)本科人才培養(yǎng)。
關(guān)鍵詞 大數(shù)據(jù) 高校信息化 課程規(guī)劃
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A DOI:10.16400/j.cnki.kjdks.2016.06.024
Abstract Big data as a hot technology and services are widely used in fields such as social and academic. In this paper, the process of teaching practice of big data and cloud computing course in Colleges and universities is little involved in the problem of environment configuration. Comprehensive students faced with complex configuration tools and methods of difficulties, proposed using Devstack to achieve Openstack single node cloud platform to build a large data related courses platform to build experimental planning. In order to better serve the information professional undergraduate talent training in Colleges and universities.
Key words big data; college information; course planning
0 引言
近年來,隨著社會信息化程度的加劇,云計(jì)算、大數(shù)據(jù)、物聯(lián)網(wǎng)被廣泛關(guān)注,數(shù)據(jù)被認(rèn)為是基礎(chǔ)性資源,逐漸影響每個人的生活方式。高校作為實(shí)踐育人、推動創(chuàng)新的載體,承擔(dān)著服務(wù)社會、發(fā)展科學(xué)的重要任務(wù)。大部分工科類高校,或綜合類高校的信息、計(jì)算機(jī)、物聯(lián)網(wǎng)等專業(yè)均相繼開授大數(shù)據(jù)與云計(jì)算等必修課程,以滿足與時(shí)俱進(jìn)培養(yǎng)信息類人才的需求。
以西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院為例,該學(xué)院累計(jì)三個本科專業(yè):計(jì)算機(jī)科學(xué)與技術(shù),軟件工程,物聯(lián)網(wǎng)均開授大數(shù)據(jù)相關(guān)課程。根據(jù)側(cè)重點(diǎn)不同,開授的課程分別為大數(shù)據(jù)與云計(jì)算,移動大數(shù)據(jù)技術(shù),大數(shù)據(jù)分析等相關(guān)課程。
基于此,本文以O(shè)penstack云平臺搭建為目標(biāo),規(guī)劃了兩個重要的大數(shù)據(jù)課程實(shí)驗(yàn):(1)用Devstack單機(jī)安裝Openstack Juno單節(jié)點(diǎn)環(huán)境。(2)用虛擬機(jī)安裝Devstack。文中給出了實(shí)驗(yàn)規(guī)劃的理由,實(shí)驗(yàn)流程、教師課前準(zhǔn)備以及學(xué)生操作步驟等,以此填補(bǔ)我校學(xué)生實(shí)驗(yàn)缺乏平臺搭建實(shí)踐的空缺。
1 OpenStack安裝部署實(shí)驗(yàn)規(guī)劃
隨著行業(yè)軟件功能及不同環(huán)境版本的增加,通過對近三年西華大學(xué)各計(jì)算機(jī)與信息類工科專業(yè)學(xué)生首次接觸實(shí)踐課程難點(diǎn)調(diào)查的問卷統(tǒng)計(jì)。我們發(fā)現(xiàn),軟件安裝與系統(tǒng)兼容被認(rèn)為是初學(xué)者最難度過的首要關(guān)卡,通常認(rèn)為的首個程序或首個應(yīng)用已經(jīng)不再是阻礙學(xué)生進(jìn)一步學(xué)習(xí)的重要因素。
大數(shù)據(jù)的課程尤為如此。不管是分布式批量計(jì)算的Hadoop、HBase、Hive、Drill等還是分布式流式計(jì)算的Apache Storm,或者是云平臺搭建的OpenStack,其安裝過程都尤為復(fù)雜。我校計(jì)算機(jī)與物聯(lián)網(wǎng)專業(yè)已行的大數(shù)據(jù)實(shí)驗(yàn)大綱并沒有面向?qū)W生的安裝部署實(shí)驗(yàn)。往往學(xué)完相關(guān)課程,能夠做大數(shù)據(jù)分析,卻不能自行部署適用的軟件環(huán)境。顯然需要做進(jìn)一步的改進(jìn)?;诖耍疚脑诖颂岢鲆环N可行的用于學(xué)生的Opstack安裝部署實(shí)驗(yàn)。
用于教學(xué)的OpenStack平臺部署需要考慮應(yīng)用環(huán)境問題:(1)Demo環(huán)境:快速,簡單,最小化的Openstack環(huán)境,作為運(yùn)維操作課程的講課環(huán)境。對硬件要求小,采用現(xiàn)有硬件或者虛擬化環(huán)境。(2)學(xué)生實(shí)驗(yàn)環(huán)境:低成本,學(xué)生親手體驗(yàn)Openstack環(huán)境。安全性低。規(guī)模小,穩(wěn)定性/安全性要求低。適合開源軟件。本文提出的部署規(guī)劃適用于學(xué)生實(shí)驗(yàn)環(huán)境。Openstack的部署安裝分為三類:單節(jié)點(diǎn)結(jié)構(gòu),雙節(jié)點(diǎn)結(jié)構(gòu)和多節(jié)點(diǎn)結(jié)果??紤]一般高校實(shí)驗(yàn)室的情況,本科學(xué)生實(shí)驗(yàn)通常只能采取單節(jié)點(diǎn)結(jié)構(gòu)布置。即一臺服務(wù)器運(yùn)行所有的nova組件,同時(shí)也驅(qū)動虛擬實(shí)例。這種配置只為實(shí)驗(yàn)的目的進(jìn)行安裝,其結(jié)構(gòu)圖如圖1所示。
1.1 Openstack安裝部署實(shí)驗(yàn)一:用Devstack單機(jī)安裝Openstack Juno單節(jié)點(diǎn)環(huán)境
通過多次物理服務(wù)器與虛擬指標(biāo)配比,我們認(rèn)為以下環(huán)境為Devstack的最佳軟件環(huán)境:物理服務(wù)器16Core,64G,600G。由VMware軟件虛擬成10個環(huán)境,其虛擬配置分別為Devstack 4Core,6G,50G。所有環(huán)境均由同一個中心節(jié)點(diǎn)進(jìn)行控制。圖2為Devstack實(shí)驗(yàn)環(huán)境的物理連接圖。
考慮Devstack的標(biāo)準(zhǔn)安裝過程需要從Internet下載Openstack代碼和python庫,而課堂環(huán)境沒有足夠的帶寬供大家實(shí)時(shí)下載。因此教師應(yīng)該預(yù)先準(zhǔn)備Devstack環(huán)境的鏡像。即學(xué)生直接拿到老師配置好環(huán)境的Devstack并在此基礎(chǔ)上進(jìn)行操作。
學(xué)生具體實(shí)驗(yàn)步驟規(guī)劃如下:
(1)學(xué)生分組及各節(jié)點(diǎn)IP由教師預(yù)先配置,如表1所示。按照10人一組為編號,共享一個控制節(jié)點(diǎn)(vCenter),10人分別對應(yīng)前面所述虛擬化的10個環(huán)境,此種配置采用4臺物理服務(wù)器一般情況下即能滿足一個教學(xué)單位的教學(xué)。也可根據(jù)實(shí)際情況做小量微調(diào)。
(2)學(xué)生操作流程如下:①打開筆記本wifi功能(如是臺式機(jī)則用無線wifi工具轉(zhuǎn)接),連接自己的wifi SSID。②自動獲取IP地址,ping通各自分組的控制節(jié)點(diǎn)地址。③通過SSH進(jìn)入自己的Devstack實(shí)驗(yàn)環(huán)境,以glin用戶登錄。登錄之后打開localrc文件,修改IP:HOST_IP=自己的主機(jī)IP地址。另添加新的配置RECLONE=false、 OFFLINE=true和disable_service tempest。⑤運(yùn)行./stack,系統(tǒng)會自動化編譯openstack juno版本。最后出現(xiàn)登錄Openstack的方法表示安裝成功。⑥執(zhí)行./stack.sh,從輸出信息“This is your host ip: 10.30.30.200; Horizon is now available at http://10.30.30.200/; Keystone is serving at http://10.30.30.200:5000/; The default users are: admin and demo; The password: password;2016-0102 11:52:48.731 | stack.sh completed in 240 seconds. ”可以知道執(zhí)行的步驟和結(jié)果。⑦學(xué)生需要學(xué)會安裝后的細(xì)節(jié)檢查。第一種方式為通過瀏覽器訪問Openstack服務(wù)。另一種方式為通過命令行模式檢查環(huán)境變量和服務(wù)狀態(tài)。
1.2 Openstack安裝部署實(shí)驗(yàn)二:用虛擬機(jī)安裝Devstack
在1.1節(jié)中,教師事先配置了Devstack環(huán)境并發(fā)布給學(xué)生操作。對于學(xué)有余力的學(xué)生,可以學(xué)習(xí)Devstack的安裝方法。實(shí)驗(yàn)步驟如下:
(1)安裝Vmware Workstation 虛擬化軟件,要注意該軟件只在Windows平臺運(yùn)行。
(2)創(chuàng)建Ubuntu 14.04虛擬機(jī),虛擬機(jī)類型為Linux下Ubuntu64位,虛擬機(jī)資源動態(tài)分配4G內(nèi)存和50G硬盤,配置虛擬機(jī)第一塊網(wǎng)卡為NAT模式,第二塊網(wǎng)卡為Host-Only模式;下載Ubuntu 14.04官方安裝包鏡像安裝并創(chuàng)建一個用戶,用于Devstack安裝,其余均選擇默認(rèn)。
(3)配置網(wǎng)絡(luò)連接。
(4)下載Devstack軟件包,配置Devstack。
(5)配置Openstack安裝環(huán)境,下載并安裝Openstack運(yùn)行所需要的系統(tǒng)軟件,大概包括一些python的組件、mysql、rabbitmq-server等。下載openstack組件,包括nova 、keystone、glance、noVNC、horizon等。下載并安裝openstack源碼所依賴的python庫和框架。安裝openstack各組件。啟動各項(xiàng)服務(wù)。
(6)如1.1節(jié)所描述自動安裝Openstack組件并執(zhí)行安裝后的檢查。Openstack單節(jié)點(diǎn)部署實(shí)驗(yàn)過程完畢。學(xué)生提交執(zhí)行記錄及截圖報(bào)告用于實(shí)驗(yàn)成績考評。
2 結(jié)論
本文考慮高校大數(shù)據(jù)與云計(jì)算課程教學(xué)實(shí)踐過程較少涉及環(huán)境配置方面的問題。綜合學(xué)生面對繁雜的配置工具和方法的困難,以西華大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)和物聯(lián)網(wǎng)課程教學(xué)為基礎(chǔ),提出了用Devstack實(shí)現(xiàn)Openstack單節(jié)點(diǎn)云平臺搭建的實(shí)驗(yàn)規(guī)劃。部署實(shí)驗(yàn)一,由教師配置好部署工具Devstack并做成鏡像于上課時(shí)發(fā)布給學(xué)生,學(xué)生可直接安裝環(huán)境并完成Openstack后續(xù)操作,減輕學(xué)生對云平臺搭建的恐懼感。其次,部署實(shí)驗(yàn)二提供用虛擬機(jī)VMware工作站安裝Devstack的方法細(xì)節(jié)。該實(shí)驗(yàn)也可提供給學(xué)有余力的同學(xué),或希望驗(yàn)證理論的教師和學(xué)生。本文的方法硬件需求小,適用于各高校同類課程的理論與實(shí)驗(yàn)教學(xué)。
參考文獻(xiàn)
[1] 程學(xué)旗,靳小龍,王元卓等.大數(shù)據(jù)系統(tǒng)和分析技術(shù)綜述.軟件學(xué)報(bào),2014.25(9):839-862.
[2] 李學(xué)龍,龔海剛.大數(shù)據(jù)系統(tǒng)綜述.中國科學(xué):信息科學(xué),2015.45(1):1-44.
[3] 韓翠峰.大數(shù)據(jù)帶給圖書館的影響與挑戰(zhàn).圖書與情報(bào),2012.5:37-40.