论文部分内容阅读
随着计算科学和商业计算的发展,使得软件模型和架构越来越快地发生变化,同时促进网格计算、并行计算、分布式计算迅速发展成为云计算。云计算主要包括基础设施即服务(IaaS),平台即服务(PaaS),软件即服务(SaaS),并通过这些技术将计算资源统一管理和调度。作为一种新的计算模型,云计算凭借其低成本、高效率得到了快速发展,也促进了近几年开源云计算架构的不断发展和完善。OpenStack是一个开放源的云计算项目和工具集,并且提供了关于基础设施即服务(IaaS)的解决方案。OpenStack不仅可以快速部署全虚拟化环境,而且可以通过此环境来建立多个互联的虚拟服务器,并能够使用户快速部署应用在虚拟机上。此外,另一个由Apache提供的基于平台即服务(PaaS)的开源分布式计算的架构Hadoop在百度、亚马逊、Facebook等国内外大型网站已经成功应用。Hadoop的核心设计是MapReduce和HDFS。MapReduce的设计是将任务分解成若干子任务分别交给节点处理,最后汇总返回主节点。HDFS的设计是作为分布式文件系统,为Hadoop的分布式存储来提供底层支持。利用OpenStack来构建一个基于基础设施即服务(IaaS)的云计算体系结构,并在此基础上搭建Hadoop环境,按照这个结构实现基础设施即服务(IaaS)和平台即服务(PaaS)的协同工作,并以web界面展示的方式,为用户进入计算云平台提供了便捷的操作方式。该体系结构的核心思想是利用OpenStack来搭建任意多个私有云,每个私有云都是一个服务节点,并且每个服务节点都有多个资源节点,不同私有云以及私有云中的资源相互独立。通过OpenStack来完成对服务节点和资源节点的配置和部署,同时在每个资源节点部署Hadoop。用户可以在申请资源的时候提交作业,云计算平台会根据资源的情况随机分配到不同的节点,完成计算后将作业结果返回。计算云体系结构由三层结构组成:基础设施层、中间件层和云门户层。础设施层是利用虚拟化技术Xen等虚拟化工具和OpenStack搭建而成。中间件层和门户层都是建立在基础设施层之上,基其中最主要的是中间件层,它封装了通信模块、文件传输模块、远程对象模块。通信模块完成云服务节点和资源节点的创建和部署,进而实现计算资源的分配和存储等功能,并采用WebService的方式发布,为上层和将来的二次开发提供了统一的接口。文件传输模块采用FTP技术来实现服务器和客户端实时交互及信息反馈。远程对象模块用来完成应用层的发布,更清晰快捷地将结果以多种形式来展示。在研究与设计云计算平台同时,充分考虑用户体验,通过设计良好的交互界面为用户提供基础设施即服务(IaaS),云用户使用Web界面的可以提交作业和申请资源,管理者则可以对资源进行有效的管理和部署。