孟寅子
摘 要移動云計算可以看作是,將作為一種商業計算模型的云計算應用于移動環境中所形成概念。本文主要闡述在移動云計算模式下應用開發所需用到的關鍵技術,主要對移動云計算體系結構、IaaS平臺彈性擴展機制及開源的IaaS平臺OpenNebula做有針對性的研究,闡明移動云計算模式作為一種計算密集型應用開發解決方案的意義。
【關鍵詞】移動云計算 IaaS 彈性擴展 OpenNebula
移動設備由于其便攜性、體積小等特點,雖然在各個方面都在向智能化演進,但短時間內其處理能力還是難以和計算機相比。因此可以借助基于云計算模式服務器存儲和處理應用,從而弱化對移動終端設備的處理需求,在后臺,云計算的存儲量和計算能力也解決了手機存儲量有限和丟失信息的問題。
1 移動云計算體系結構
移動云計算可以分為四層,接收層,基本管理層,虛擬層和物理層。
1.1 接收層
也叫接受控制層,包括客戶端的服務界面,服務注冊和合理服務接收。
1.2 基本管理層
在云計算技術中,管理層位于服務和服務器集群之間,在移動云計算系統架構中提供管理、服務和管理系統。
1.3 虛擬層
虛擬層即虛擬項例如計算池,存儲池和網絡池,虛擬功能可由軟件功能實現,包括虛擬環境,虛擬系統,虛擬平臺等等。
1.4 物理層
物理層主要描述了支持移動云服務的硬件設備和技術,它可以是便宜的計算機也可以是非智能手機。
2 IaaS云計算彈性擴展機制
在(基礎設施作為服務)IaaS中,虛擬機作為資源提供給用戶,用戶通過虛擬機獲得所需要的計算能力。在彈性云計算平臺中會提供一些模板,用于虛擬機的創建,這些模板一般按照CPU的計算能力、內存大小來劃分。創建虛擬機所需的系統軟件通常來自于IaaS環境所提供的鏡像文件,除虛擬機所需OS外,還可將用戶的應用程序、配置等一起打包成為加密機器鏡像。
在一個虛擬機創建完成之后,它可被上傳到被IaaS提供商所托管的資源環境中去,并利用IaaS提供商的原始存儲(例如資源調度、負載均衡、服務監控等機制)對這臺虛擬機進行相關配置。用戶在IaaS環境中,就像在使用裸機和磁盤一樣,即可以將Windows作為操作系統運行其上,也可將Linux作為操作系統運行其上,允許用戶動態申請或釋放節點是IaaS區別于傳統分布式服務器集群最大的優勢。
3 OpenNebula:IaaS彈性云平臺
OpenNebula是Amazon云計算EC2的一種開源實現,是IaaS平臺的典型代表。下面主要介紹虛擬化、網絡、主機與集群、存儲這四個子系統。
3.1 虛擬化子系統
虛擬化子系統負責與主機上的虛擬機監控程序進行通信,其負責在一個虛擬機生命周期中對其進行的各種操作。其通過相應的驅動器與主機中的虛擬機監控程序進行通信,在創建一個虛擬機時,應該指定其hypervisor的類型,驅動器可以看作是一個接口,虛擬化子系統通過這個接口與使用響應虛擬化技術的hypervisor進行通信。在OpenNebula管理的主機底層操作系統必須基于Linux,但可以安裝不同的Linux發行版本,不同的主機可以采用不用的虛擬化技術。
3.2 網絡子系統
OpenNebula提供了一個容易使用的可定制化的網絡子系統,以便更好的整合現存數據中心特定的網絡要求。OpenNebula需要一個網絡,以便前端節點通過網絡訪問各個主機,從而管理和監控各主機的虛擬機監控程序,以及傳送鏡像文件。為了使位于不同主機中的,虛擬機之間可以進行網絡通信,默認配置是將虛擬機的網絡接口連接到其物理主機的網橋上。當運行一個虛擬機后,OpenNebula將這個虛擬的網絡接口連接到一個網橋,或者連接到一個自定義的虛擬網絡中。這樣虛擬機就可以訪問不同網絡,公網或者是私網。
3.3 存儲子系統
Datastore(數據倉庫)是一個存儲介質,用于存儲虛擬機所需用到的磁盤鏡像,一個數據倉庫將會通過SAN/NAS servers進行備份,完整安裝好的OpenNebula通常會有多種類型的Datastore,OpenNebula里的磁盤鏡像可以有四種類型,每種類型都可以有多個Datastore對其進行存儲。存儲系統允許用戶在數據倉庫中存儲磁盤鏡像,這些磁盤鏡像可以用于定義虛擬機的操作系統,或者用于與其他用戶數據共享。
3.4 主機和集群系統
主機是一臺可以運行虛擬機實例服務器,并且與OpenNebula的前端服務器相連接,OpenNebula可以部署在異構配置的主機上,例如可以用基于版本的不同虛擬機監控器和基于不同版本的Linux主機搭建同一個OpenNebula平臺。集群是共享數據倉庫和虛擬網絡的主機的集合,集群通常能夠提供負載均衡、高可靠性、高性能計算。
4 結束語
以智能手機為代表的移動設備在性能上的表現與過去相比已經顯著提高,各種基于移動設備的面向計算密集型復雜應用也隨之而來,基于移動云平臺的服務器可以利用彈性云計算技術有效解決服務器端維護和管理比較繁瑣,且擴展困難,資源利用率較低等問題。同時云計算將這些自我維護和管理的虛擬計算資源集中起來,通過專門軟件實現自動管理,用戶可動態申請部分資源,有利于提高效率、降低成本。
參考文獻
[1]鄧茹月,覃川,謝顯中.移動云計算的應用現狀及存在問題分析[J].重慶郵電大學學報:自然科學版,2012,24(6):716-723.
[2]P.Marshall,K.Keahey,and T.Freeman.
"Elastic Site:Using Clouds to Elastically Extend Site Resources"[C].IEEE/ACM International Symposium on Cluster,Cloud and Grid Computing(CCGrid 2010),May 2010.
[3]D Milojii,IM Llorente,RS Montero.
OpenNebula:A Cloud Management Tool [C].Internet Computing IEEE,2011,15(2):11-14.
作者單位
山東省農村信用社聯合社 山東省濟南市 250000