劉 穎,邵雨舟,賈 嵐,史虹湘,李志偉
(北京經濟管理職業學院信息學院,北京 100102)
高校云服務平臺中自助云服務系統的實現
劉 穎,邵雨舟,賈 嵐,史虹湘,李志偉
(北京經濟管理職業學院信息學院,北京 100102)
基于高校校園網云服務平臺,提出自助云服務系統實現方法。提供的自助云服務包括校園信息推送、個人特色服務、虛擬機按需服務和云存儲服務等。闡述了自助云服務子系統的系統設計,深入分析了不同服務的工作流程,介紹了實現方案,為實現自助云服務提供了可行思路和具體的實施方法。
自助云服務;信息推動;個人特色服務;虛擬機;云存儲
云計算是一種利用互聯網實現隨時隨地、按需、便捷地訪問共享資源池的計算模式。隨著“云+端模式”的深入發展,逐漸分化出了3個平臺,即終端平臺、云平臺以及在云和終端之上的商務、社交等云服務平臺。終端平臺包括Andriod、蘋果、Windows等終端操作系統。云平臺由國內外大型企業及運營商提供,例如亞馬遜[1]、谷歌[2]、微軟[3]、AT&T[4]等公司構建的公共云。服務平臺則可以提供豐富的應用服務。蘋果的iCloud[5]、百度的百度云[6]則實現了云存儲服務。
如何引入云計算、建設云服務平臺是推進高校信息化進程的一個研究方向。對高校云服務平臺的研究主要有如下幾個方面。
1)虛擬實驗室平臺
在現有高校使用云服務的研究中,基于云計算的虛擬實驗室是比較熱的研究。基于云計算理念的虛擬實驗教學系統[7]利用云計算平臺,將本地或異地的不同實驗用戶與虛擬實驗室聯結起來,共享一個虛擬的實驗空間。用戶通過瀏覽器開展遠程實驗和本地實驗,從而實現虛擬實驗教學和管理的目的。
基于云計算的虛擬科研環境[8]利用國家網格中可共享的虛擬機資源,通過網格技術來訪問和使用資源,實現國家網格資源共享,為不同學科的科研提供在線云服務。
2)基于云計算的數字校園
高校的數字校園項目[9]把學校的管理系統移植到數據中心,云計算為學校的行政管理部門服務。財務系統、人事系統、檔案系統、研究生系統等都在云里存儲,各部門訪問云里的數據。
高校統一信息平臺建設[10]把基礎設施分為教務系統虛擬服務器組、人事系統虛擬服務器組和科研管理虛擬服務器組。用戶通過云門戶服務形式登錄并申請所需的資源。
3)借助公共云提供特定服務
高校借助亞馬遜EC2構建校園的云服務系統[11],提供特定的服務。比如允許用戶創建web服務器、視頻服務器、存儲服務器等。
現有的研究能滿足師生部分教學需求,但沒有完全解決高校信息化建設和師生需求之間的矛盾。師生在教學中遇到的問題主要有以下幾點:
1)教學資源利用率低
師生離開辦公室或實驗室后,辦公電腦、實驗室即空閑,硬件、軟件資源利用率不高。
2)學生學習延續性受阻
學生在實驗室進行課堂學習,執行部分實踐操作,如果課后或實習期間想繼續學習、完善學習內容,則需要在自己的機器上復制學習環境。這會影響學習的延續性。
3)不支持移動教學
隨著師生移動性的增加,現有的教學不局限于固定位置的辦公和學習。學生外出實習的機會越來越多,實習期間沒有必須的學習、實驗環境,包括安裝了教學軟件的計算機、學習資料等。老師在外辦公,如果有緊急教學任務,也沒有必須的備課、教學環境。
4)手機終端存在瓶頸
師生外出期間可能不會隨身攜帶電腦,但一定會攜帶手機。而手機的CPU、內存等硬件指標和存儲容量受機體大小和電池容量的限制,目前手機還無法實現需要大量運算的應用。如果教學需要軟件支持,則無法在手機上完成。
將云計算合理有效地應用到教學環境中輔助教學科研工作,能解決師生需求,也是發展的方向。高校校園網云服務平臺[12]提出了建設一個用戶參與、用戶自助定制服務的云服務平臺。本文設計了基于高校校園網的云服務平臺,重點研究了如何構建其中的自助云服務子系統。
校園網云服務平臺包含數據中心和應用服務等兩類硬件和軟件設施。云服務平臺框架如圖1所示。
圖1 云服務平臺框架
用多臺服務器和存儲設備組成一個數據中心,實現云計算功能。基于數據中心,把基礎的計算和存儲資源開放給用戶,直接提供虛擬機,實現基礎設施即服務IaaS。管理員為每個師生分配1臺虛擬計算機,安裝基本的操作系統。師生通過1個能聯網的瘦終端、1部手機、1臺平板電腦就能連到云服務平臺,輸入用戶名和密碼即可登錄自己的虛擬機。用戶在虛擬機上訪問因特網、安裝教學軟件、準備教學材料、存放個人資料,總而言之,和普通的電腦無區別。所有接入互聯網的場所,通過登錄虛擬機就能實現辦公、授課和學習。
基于虛擬機服務,提供了自助云服務,鼓勵用戶按需定制服務。待實現的自助云服務包括校園信息推送、個人特色服務、虛擬機按需服務和云存儲服務等4種。
1)校園信息推送
目前校園信息發布形式單一。學校、院系、班級的公共信息主要通過學校網站主頁、師生郵箱等途徑發布,無法保證所有人都能看到這些信息。部署云服務平臺后,各院系、行政部門等單位管理人員可登錄自助云服務系統,選擇自助信息發布,提供接收信息的用戶id、發布的信息內容、信息有效期。后臺管理系統根據用戶信息和虛擬機運行管理信息,向特定人群推送信息。
2)個人特色服務
普通用戶均可登錄自助云服務系統,提交云服務申請,提供必要的服務信息。當用戶登錄自己的虛擬機時,后臺系統查詢用戶定制的云服務,獲取或自行生成服務數據,向虛擬機發送服務數據。服務數據可包括課表提醒、天氣信息、系統維護命令等。
3)虛擬機按需服務
包括個人虛擬機的升級服務和單位或學生社團臨時或長期租用虛擬機。個人用戶根據教學需要,有增加硬盤空間、提高CPU性能、增加內存大小的需求。院系或社團根據工作需要租賃虛擬機,搭建網站服務器、FTP服務器等。用戶通過自助云服務系統提交申請,管理人員分配虛擬資源。
4)云存儲服務
師生在自助云服務系統上申請或撤銷存儲空間,存儲空間以HTTP、FTP、文件夾鏈接等方式訪問。
為了提供形式多樣的自助云服務,需要建設自助云服務子系統,下面將探討如何實現該子系統。
自助云服務子系統分為前端和后臺2部分。前端設計向用戶呈現一個友好的自助服務定制界面,用戶登錄該頁面就可以進行服務定制。后臺系統則根據服務定制請求提供云服務。自助云服務子系統架構如圖2所示。
圖2 自助云服務子系統架構
前端系統包括Web服務器,后臺系統包括用戶自助服務數據庫、控制模塊和管理模塊。數據庫中存放服務信息,不同服務采用不同的數據存放形式。控制模塊劃分為自助服務控制和虛擬機控制2個子模塊。管理模塊劃分為用戶管理和虛擬機管理2個子模塊。用戶管理子模塊以用戶id為索引維護著用戶信息,包括班級、院系、所使用的虛擬機id、當前是否在線。虛擬機管理子模塊以虛擬機id為索引維護虛擬機信息,包括虛擬機物理位置、虛擬資源使用情況等。Web服務器、控制模塊、管理模塊、虛擬機之間采用socket通信。不同自助服務的工作流程有差異。本節將設計每類自助服務的工作流程。
2.1 校園信息推送
目前校園信息發布形式較單一,學校、院系、班級的公共信息主要通過學校網站主頁、師生郵箱等途徑發布。為了信息發布渠道多元化,向各院系、行政部門等單位的指定人員開通向師生發布公共信息的自助服務功能。例如,信息學院的教學管理員具有向本學院師生發布信息的權力。如果有調課安排,管理員登錄自助服務定制界面,選擇發布信息功能,輸入/選擇/導入受影響班級的學生和教師id,填寫待發布的信息內容,點擊確認即可。后臺系統根據師生id把該信息推送給對應師生的虛擬機。虛擬機上的服務代理模塊接收該信息,并呈現給用戶。具體工作流程如圖3所示。
圖3 自助信息發布流程
1)部門管理員登錄自助服務頁面,選擇自助信息發布,提供接收信息的用戶id、發布的信息內容以及信息有效期;
2)將自動分配的信息id和部門管理員提供的信息保存到數據庫中;
3)向當前在線的用戶發送信息。通知自助服務控制模塊推送信息,提供信息id;
4)自助服務控制模塊根據信息id查詢用戶自助服務數據庫,獲得用戶id和信息內容;
5)根據用戶id向用戶管理模塊查詢用戶是否上線,如果上線,用戶管理模塊返回虛擬機id;
6)通知虛擬機控制模塊發送信息,提供虛擬機id和信息內容;
7)根據虛擬機id向虛擬機管理模塊請求虛擬機物理位置;
8)向該用戶登錄的虛擬機發送信息,比如會議通知、放假通知等。虛擬機上接收代理模塊接收并顯示信息;
9)對于當前離線的用戶,當他們登錄時,用戶管理模塊查詢用戶自助服務數據庫,根據用戶id查看該用戶是否有需要發送的信息;
10)如果有待發送的信息,通知自助服務控制模塊向該用戶發送信息。提供信息id、用戶id和虛擬機id;
11)根據信息id和用戶id查詢信息內容和有效期;
12)如果信息還在有效發送期內,通知虛擬機控制模塊發送信息,提供虛擬機id和信息內容;
13)和第7)步一致;
14)和第8)步一致。
2.2 個人特色服務
為了讓云服務平臺更好地為師生服務,本文設計了諸多方便師生教學、生活的自助服務。例如,用戶按照規定格式導入自己的課表,當他們登錄虛擬機后,后臺服務程序依據當前時間點推送當天和第二天的課表。若用戶定制了天氣提醒服務,則后臺服務程序在用戶登錄后,推送天氣信息。若用戶希望定時對虛擬機進行系統維護,比如刪除臨時文件、進行磁盤整理,則用戶選擇服務周期,后臺服務程序定期執行服務操作。師生登錄自助服務定制界面,進入個人特色服務專區,點擊某個服務,輸入信息,然后提交申請。后臺系統各模塊協作執行該服務,工作流程如圖4所示。
圖4 個人自助服務流程
1)用戶登錄自助服務頁面,提交服務申請。如果要申請課表提醒服務,則根據提示錄入課表;
2)將用戶申請的自助服務信息存放到數據庫中,以備后臺系統執行自助服務時查詢。用戶下次登錄虛擬機時后臺系統就可以執行自助服務;
3)當用戶登錄虛擬機時,用戶管理模塊查詢用戶自助服務數據庫,根據用戶id查詢是否有自助服務;
4)如果檢測到該用戶定制了自助服務,則通知自助服務控制模塊執行服務,攜帶用戶id和虛擬機id;
5)根據用戶id,自助服務控制模塊查詢用戶自助服務數據庫,獲得對應的服務數據;
6)自助服務控制模塊通知虛擬機控制模塊,向虛擬機發送自助服務信息,攜帶虛擬機id和服務數據;
7)虛擬機控制模塊根據虛擬機id向虛擬機管理模塊請求虛擬機物理位置;
8)虛擬機控制模塊向該用戶登錄的虛擬機發送服務數據,比如課表、天氣信息、系統維護命令。虛擬機內置服務代理模塊,與虛擬機控制模塊建立TCP連接,接收服務指令并執行相應的服務。
2.3 虛擬機按需服務
師生因為教學安排需要使用某軟件,若該軟件消耗較多內存和CPU,則普通的虛擬機配置不能滿足教學要求。教學管理員登錄自助服務定制界面,選擇虛擬機按需服務,提供待升級虛擬機對應的用戶ID,需要的性能指標,然后提交申請。云服務平臺管理人員根據用戶請求,手工提升或降低虛擬機性能。此外,院系或社團需要獨立的虛擬機構建網站服務器、FTP服務器,則通過自助服務定制界面申請新虛擬機,云服務平臺管理人員審核請求,手工分配一臺新虛擬機,安裝基本的操作系統和應用軟件、進行基本的配置。
1)云存儲服務
師生需要存儲大批量文件(比如影視素材、日志文件等),虛擬機提供的基本存儲空間不滿足需要,則可登錄自助服務定制界面,申請云存儲服務,提供需要的存儲大小。云服務平臺管理人員手工分配存儲空間,讓用戶以HTTP、FTP、文件夾鏈接等方式訪問。
2)自助云服務子系統實現
自助云服務子系統在linux環境下實現。自助服務網站由Apache和Tomcat搭建。虛擬機運行服務代理進程。用MySQL實現用戶自助服務數據庫。控制模塊和管理模塊分別用控制進程和管理進程實現。每個進程用多線程方式實現各子模塊功能,系統進程設計如圖5所示。
控制進程內有3個線程。其中 socket select線程負責監聽控制層和外部其他模塊的TCP通信,即監聽web服務器、管理進程和虛擬機向控制進程發來的消息。Socket select線程監聽到消息后,構造內部消息,傳遞給進程內對應線程。線程之間采用消息隊列方式傳遞信息。線程向外部其他模塊發送消息則直接調用socket API。管理進程實現方式和控制進程類似。進程內和進程間的線程采用消息驅動的異步通信方式。線程從消息隊列中提取消息進行處理,如果期間需要向其他線程發送消息,發送后不需要等待回應,則保存當前處理狀態,然后從消息隊列中提取新消息進行處理。線程間傳遞的消息以〈消息名(攜帶參數)〉表示。
圖5 自助云服務子系統進程設計
控制進程和 web服務器之間傳遞的消息包括:
WEB2CTRL_SENDMSG(msgid):web服務器通知自助服務控制線程發布信息。
控制進程和管理進程之間傳遞的消息包括:
MGR2CTRL_EXC_SRV(userid,vpid):用戶管理線程通知控制進程執行自助服務。
CTRL2MGR_QUERY_ONLINE(userid):自助服務控制線程查詢用戶使用的虛擬機id。
MGR2CTRL_RESULT_ONLINE(userid,vpid):用戶管理線程回應虛擬機id。
CTRL2MGR_QUERY_LOC(vpid):虛擬機控制線程查詢虛擬機物理位置。
MGR2CTRL_RESULT_LOC(vpid,phyloc):虛擬機管理線程回應虛擬機物理位置。
MGR2CTRL_SEND_MSG(msgid,userid,vpid):用戶管理線程通知控制進程發布信息。
控制進程向虛擬機傳遞的消息包括:
CTRL2VP_REQUEST_SRV(srvbody):虛擬機控制線程向用戶虛擬機上的服務代理進程發送自助服務執行命令。
CTRL2VP_DISP_MSG(msgbody):虛擬機控制線程向用戶虛擬機上的服務代理進程發送信息發布請求。
控制進程內傳遞的消息包括:
CTRL_SERV2VP_EXC_SRV(vpid,srvptr):自助服務控制線程通知虛擬機控制線程執行自助服務。
CTRL_SERV2VP_DISP_MSG(vpid,msgptr):自助服務控制線程通知虛擬機控制線程發布信息。
控制進程是自助云服務子系統的核心進程。下面對其線程進行詳細介紹。自助服務控制線程工作過程,即對消息的處理流程如圖6所示。
圖6 自助服務控制線程設計
線程監聽消息隊列,如果有消息,根據不同消息類別進行處理。
虛擬機控制線程主要負責確定虛擬機位置,向虛擬機的服務代理進程推送信息或發送服務請求,其工作過程如圖7所示。
高校部署云服務平臺后,師生無論處于何地,都可以通過移動終端或便攜式計算機登陸虛擬機,工作和學習不受時間和地點的限制。自助云服務子系統實現了師生根據自身需求申請服務的功能。
校園信息推送使學校和各學院的管理人員可以自助發布信息,拓展了信息發布渠道,加強了校園信息共享,為師生提供的個人特色服務方便了教學和生活;虛擬機按需服務和云存儲服務能降低學校基礎設施建設成本,實現綠色校園;對用戶來說,操作過程也較容易,即登錄自助服務定制界面,提供必要的信息,點擊確定即可。
高校引入云計算是校園信息化建設的必然趨勢。本文基于高校的云服務平臺,提供了自助云服務子系統的詳細設計方案和實現方法。下一步將研究云服務平臺和物聯網相結合[13],為師生提供更多優質服務。
圖7 虛擬機控制線程設計
[1] Amazon EC2[EB/OL].http://aws.amazon.com/ec2.
[2] Google App Engine[EB/OL].http://code.google.com/ appengine/.
[3] Microsoft Azure[EB/OL].http://www.microsoft.com/ windowsazure/.
[4] AT&T Cloud[EB/OL].www.attcloudarchitect.com.
[5] Apple Inc.iCloud[EB/OL].https://www.icloud.com/.
[6] 百度云[EB/OL].http://yun.baidu.com/.
[7] 魯慧民,劉剛.基于云計算理念的虛擬實驗教學系統設計探討[J].實驗技術與管理,2012,29(4):334-338.
[8] 于建軍,狄焰亮,董科軍,等.科研在線:云服務模式的網絡虛擬科研環境[J].華中科技大學學報:自然科學版,2011,39(SI):33-37.
[9] 楊玉寶.基于云計算平臺的數字校園建設方案_以廣州大學數字校園建設為例[J].中國教育信息化,2012 (8):9-12.
[10]王愛清,趙冬生.云計算環境下高校校級統一信息平臺建設探討[J].實驗技術與管理,2011,28(5):282-285.
[11]錢戴明,樂嘉錦.云計算在校園多媒體系統中的應用[J].計算機應用與軟件,2011,28(12):239-242.
[12]劉穎,劉淼晶.高校校園網云服務平臺建設研究[J].北京市經濟管理干部學院學報,2012,27(4):67-70.
[13]呂倩.基于云計算及物聯網構建智慧校園[J].計算機科學,2011,38(10):18-21.
(責任編輯 楊黎麗)
Implementation of Self Cloud Service Sub-system in Cloud Service Platform of Campus
LIU Ying,SHAO Yu-zhou,JIA Lan,SHI Hong-xiang,LI Zhi-wei
(School of Information,Beijing Institute of Economic Management,Beijing 100102,China)
Based on the cloud service platform in campus,a self cloud service system is implemented.The self cloud service includes information pushing in campus,personal service,on-demand virtual PC service,cloud storage service,and so on.First of all,the system design of cloud service platform is implemented.Then,the work flow of different services is analyzed.At last,the implementation scheme is described.It provides a feasible and concrete method for implementing the self cloud service system.
self cloud service;information pushing;personal service;virtual PC;cloud storage
TP393
A
1674-8425(2014)07-0110-06
10.3969/j.issn.1674-8425(z).2014.07.022
2013-10-16
北京市教委項目(PXM2014_014232_000017)
劉穎(1981—),女,碩士研究生,講師,主要從事計算機網絡應用和云計算研究。
劉穎,邵雨舟,賈嵐,等.高校云服務平臺中自助云服務系統的實現[J].重慶理工大學學報:自然科學版,2014(7):110-115.
format:LIU Ying,SHAO Yu-zhou,JIA Lan,et al.Implementation of Self Cloud Service Sub-system in Cloud Service Platform of Campus[J].Journal of Chongqing University of Technology:Natural Science,2014(7):110-115.