APP下载

基于移动云平台应用开发关键技术研究

2016-05-14孟寅子

电子技术与软件工程 2016年6期

孟寅子

摘 要移动云计算可以看作是,将作为一种商业计算模型的云计算应用于移动环境中所形成概念。本文主要阐述在移动云计算模式下应用开发所需用到的关键技术,主要对移动云计算体系结构、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