1。2 研究现状
1。3 研究内容
1。3。1 论文完成工作
对云计算进行了一定的认识和了解,对其发展趋势和重要性有了些认识,部署了Openstack,并在其上建立了多个虚拟主机,对其中的基本组件有了基本的认知,了解了云计算下IaaS常见的资源分配算法,运用CloudSim搭建了模拟仿真环境,并对自己提出的资源分配策略进行了仿真验证。
1。3。2 论文结构安排
本文首先介绍了云计算,然后介绍了云计算的三种应用模式和云计算的发展现状,然后对Openstack进行简要说明,再对资源分配的算法进行介绍,最后搭建模拟环境进行仿真,并对实验结果进行分析。本文主要分为如下六章:
第一章为绪论,主要介绍了云计算的一些概念和发展的现状,阐明了资源分配的重要性,并引出了一些分配策略,然后简短介绍了论文的结构。
第二章为云计算中的资源分配的概述,主要介绍了资源分配的发展和关键技术,指出其优缺点,附带介绍了一些Openstack知识。
第三章为基于蚁群算法的资源分配策略。主要介绍了蚁群算法在资源分配中的应用。
第四章为实验仿真,用CloudSim搭建实验平台,结合本文提出的资源分配策略进行实验分析比较。
第五章为全文的总结和工作展望,对本文的研究做概括性的总结,并提出未来的研究方向和目标。
1。4 本章小结
本章主要介绍了云计算的概念和发展现状以及IaaS这种应用模式,阐述了合理的资源分配策略的重要性以及如今主要的资源分配策略,引出了本文研究的意义,并对本文的达到的目标进行了简短的概括,最后介绍了论文的结构和内容的安排。
2 云计算中资源分配概述
2。1 Openstack简介
由于Openstack作为IaaS中一个典型的平台,所以在这里对其做简短的介绍。它是一系列开源软件项目的组合,这些软件项目直接是松耦合的关系,可以独立的安装、启动和停止,只有在必要的时候进行通信,所以扩展性很好,安全性也很高。Openstack是基础设施资源的系统管理平台,可以以集中的方式管理系统资源,如CPU、磁盘、内存等,它是IaaS(基础设施即服务)组件,它是一个通过数据中心(datacenter)控制大量的计算(compute)、存储(storage)和网络(networking)资源的云操作系统,可以让任何人都可以自行建立和提供云端运算服务[4]。所有的资源都可以通过面板(dashboard)被系统管理员管理,同时也可以授权用户自由分配所需使用的资源。它类似Windows操作系统,它不提供硬件的支持,只提供计算、存储和网络服务,但是它是可以管理硬件的,支持各种厂商提供的硬件环境,它是可以将硬件放在不同的硬件池或者资源池中,它是一个开源的云计算平台[5]。
Openstack主要是由Nova,Swift,Neutron这三大组件组成[6],它们分别负责计算、存储和网络的管理,它们是最主要的。加上其它的一些组件和服务一同构成了Openstack这个“生态圈”。如Dashboard提供了可视化界面,一般基于浏览器,这样便于管理员的操作与管理;Keystone则主要提供安全和验证服务;Glance主要提供镜像服务;Ceilometer主要提供收集信息的服务[7]。
2。2 云计算资源分配概述
由于云计算是各种技术融合在一起的产物,随着这些技术的日益完善,如虚拟化技术、并行计算和分布式计算,所以云计算也得到了迅速的发展。云环境下的资源分配策略直接影响着平台的性能,而性能的好坏又直接决定了云计算的服务质量,所以可以看出一个合理完善的资源分配策略对于一个云平台来说是有多么的重要。总体来说云计算中的资源分配问题就是一个NP问题,就是根据用户的不同任务,将云平台中的资源分配给用户用以快速高效地解决其任务。或者说实质上是解决大规模、多任务分配问题,云计算环境下资源分配的目标有服务质量、负载均衡、最优跨度、安全与经济原则等[8]。