陳曉亮
摘 要 大數據作為一個熱點技術和服務被廣泛應用于社會與學術等領域。本文考慮高校大數據與云計算課程教學實踐過程較少涉及環境配置方面的問題。綜合學生面對繁雜的配置工具和方法的困難,提出了用Devstack實現Openstack單節點云平臺搭建的大數據相關課程平臺搭建實驗規劃。以此更好地服務于高校的信息類專業本科人才培養。
關鍵詞 大數據 高校信息化 課程規劃
中圖分類號:G642 文獻標識碼: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 引言
近年來,隨著社會信息化程度的加劇,云計算、大數據、物聯網被廣泛關注,數據被認為是基礎性資源,逐漸影響每個人的生活方式。高校作為實踐育人、推動創新的載體,承擔著服務社會、發展科學的重要任務。大部分工科類高校,或綜合類高校的信息、計算機、物聯網等專業均相繼開授大數據與云計算等必修課程,以滿足與時俱進培養信息類人才的需求。
以西華大學計算機與軟件工程學院為例,該學院累計三個本科專業:計算機科學與技術,軟件工程,物聯網均開授大數據相關課程。根據側重點不同,開授的課程分別為大數據與云計算,移動大數據技術,大數據分析等相關課程。
基于此,本文以Openstack云平臺搭建為目標,規劃了兩個重要的大數據課程實驗:(1)用Devstack單機安裝Openstack Juno單節點環境。(2)用虛擬機安裝Devstack。文中給出了實驗規劃的理由,實驗流程、教師課前準備以及學生操作步驟等,以此填補我校學生實驗缺乏平臺搭建實踐的空缺。
1 OpenStack安裝部署實驗規劃
隨著行業軟件功能及不同環境版本的增加,通過對近三年西華大學各計算機與信息類工科專業學生首次接觸實踐課程難點調查的問卷統計。我們發現,軟件安裝與系統兼容被認為是初學者最難度過的首要關卡,通常認為的首個程序或首個應用已經不再是阻礙學生進一步學習的重要因素。
大數據的課程尤為如此。不管是分布式批量計算的Hadoop、HBase、Hive、Drill等還是分布式流式計算的Apache Storm,或者是云平臺搭建的OpenStack,其安裝過程都尤為復雜。我校計算機與物聯網專業已行的大數據實驗大綱并沒有面向學生的安裝部署實驗。往往學完相關課程,能夠做大數據分析,卻不能自行部署適用的軟件環境。顯然需要做進一步的改進。基于此,本文在此提出一種可行的用于學生的Opstack安裝部署實驗。
用于教學的OpenStack平臺部署需要考慮應用環境問題:(1)Demo環境:快速,簡單,最小化的Openstack環境,作為運維操作課程的講課環境。對硬件要求小,采用現有硬件或者虛擬化環境。(2)學生實驗環境:低成本,學生親手體驗Openstack環境。安全性低。規模小,穩定性/安全性要求低。適合開源軟件。本文提出的部署規劃適用于學生實驗環境。Openstack的部署安裝分為三類:單節點結構,雙節點結構和多節點結果。考慮一般高校實驗室的情況,本科學生實驗通常只能采取單節點結構布置。即一臺服務器運行所有的nova組件,同時也驅動虛擬實例。這種配置只為實驗的目的進行安裝,其結構圖如圖1所示。
1.1 Openstack安裝部署實驗一:用Devstack單機安裝Openstack Juno單節點環境
通過多次物理服務器與虛擬指標配比,我們認為以下環境為Devstack的最佳軟件環境:物理服務器16Core,64G,600G。由VMware軟件虛擬成10個環境,其虛擬配置分別為Devstack 4Core,6G,50G。所有環境均由同一個中心節點進行控制。圖2為Devstack實驗環境的物理連接圖。
考慮Devstack的標準安裝過程需要從Internet下載Openstack代碼和python庫,而課堂環境沒有足夠的帶寬供大家實時下載。因此教師應該預先準備Devstack環境的鏡像。即學生直接拿到老師配置好環境的Devstack并在此基礎上進行操作。
學生具體實驗步驟規劃如下:
(1)學生分組及各節點IP由教師預先配置,如表1所示。按照10人一組為編號,共享一個控制節點(vCenter),10人分別對應前面所述虛擬化的10個環境,此種配置采用4臺物理服務器一般情況下即能滿足一個教學單位的教學。也可根據實際情況做小量微調。
(2)學生操作流程如下:①打開筆記本wifi功能(如是臺式機則用無線wifi工具轉接),連接自己的wifi SSID。②自動獲取IP地址,ping通各自分組的控制節點地址。③通過SSH進入自己的Devstack實驗環境,以glin用戶登錄。登錄之后打開localrc文件,修改IP:HOST_IP=自己的主機IP地址。另添加新的配置RECLONE=false、 OFFLINE=true和disable_service tempest。⑤運行./stack,系統會自動化編譯openstack juno版本。最后出現登錄Openstack的方法表示安裝成功。⑥執行./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. ”可以知道執行的步驟和結果。⑦學生需要學會安裝后的細節檢查。第一種方式為通過瀏覽器訪問Openstack服務。另一種方式為通過命令行模式檢查環境變量和服務狀態。
1.2 Openstack安裝部署實驗二:用虛擬機安裝Devstack
在1.1節中,教師事先配置了Devstack環境并發布給學生操作。對于學有余力的學生,可以學習Devstack的安裝方法。實驗步驟如下:
(1)安裝Vmware Workstation 虛擬化軟件,要注意該軟件只在Windows平臺運行。
(2)創建Ubuntu 14.04虛擬機,虛擬機類型為Linux下Ubuntu64位,虛擬機資源動態分配4G內存和50G硬盤,配置虛擬機第一塊網卡為NAT模式,第二塊網卡為Host-Only模式;下載Ubuntu 14.04官方安裝包鏡像安裝并創建一個用戶,用于Devstack安裝,其余均選擇默認。
(3)配置網絡連接。
(4)下載Devstack軟件包,配置Devstack。
(5)配置Openstack安裝環境,下載并安裝Openstack運行所需要的系統軟件,大概包括一些python的組件、mysql、rabbitmq-server等。下載openstack組件,包括nova 、keystone、glance、noVNC、horizon等。下載并安裝openstack源碼所依賴的python庫和框架。安裝openstack各組件。啟動各項服務。
(6)如1.1節所描述自動安裝Openstack組件并執行安裝后的檢查。Openstack單節點部署實驗過程完畢。學生提交執行記錄及截圖報告用于實驗成績考評。
2 結論
本文考慮高校大數據與云計算課程教學實踐過程較少涉及環境配置方面的問題。綜合學生面對繁雜的配置工具和方法的困難,以西華大學計算機科學與技術和物聯網課程教學為基礎,提出了用Devstack實現Openstack單節點云平臺搭建的實驗規劃。部署實驗一,由教師配置好部署工具Devstack并做成鏡像于上課時發布給學生,學生可直接安裝環境并完成Openstack后續操作,減輕學生對云平臺搭建的恐懼感。其次,部署實驗二提供用虛擬機VMware工作站安裝Devstack的方法細節。該實驗也可提供給學有余力的同學,或希望驗證理論的教師和學生。本文的方法硬件需求小,適用于各高校同類課程的理論與實驗教學。
參考文獻
[1] 程學旗,靳小龍,王元卓等.大數據系統和分析技術綜述.軟件學報,2014.25(9):839-862.
[2] 李學龍,龔海剛.大數據系統綜述.中國科學:信息科學,2015.45(1):1-44.
[3] 韓翠峰.大數據帶給圖書館的影響與挑戰.圖書與情報,2012.5:37-40.