论文部分内容阅读
云计算是继水、电、气和通信之后的第5效用(utility),随着云计算的不断发展,单一云供应商由于资源有限无法满足所有用户的请求也无法保证提供给用户的资源的服务质量,再加上提供云服务的供应商数量不断增加,所以也就促使着各个云供应商之间的合作以及云计算联盟的形成。云计算联盟中用户及云供应商的数量都比单一供应商环境下要多,各个云供应商都能提供一些基础服务,那么如何将用户的请求任务分配给云供应商就变成了云计算联盟需要解决的问题,而这个过程也就是云联盟的资源调度问题。现有关于云计算联盟的研究较少,而已有的研究也主要是对云计算联盟的架构进行探讨,较少有人对云联盟的资源调度问题进行研究。基于以上问题,本文建立了云计算联盟资源调度模型,并提出了基于遗传算法的用户利益最大化资源调度方法以及基于蚁群算的供应商利益最大的资源调度方法,同时实现了基于CloudSim的云联盟资源调度算法。本文具体工作如下。(1)云计算联盟资源调度模型的建立。云计算联盟资源调度模型包括三个部分:云用户、云服务供应商、云联盟协调器。云用户使用云计算联盟提供的服务并与之交互。云服务供应商由一系列提供云服务的供应商组成,不同的云服务供应商提供的资源是异构的。云联盟协调器包括了交易策略知识库和云服务供应商信息知识库。交易策略知识库存放有市场交易策略,云联盟调度器需要调用知识库中的不同策略来进行云服务供应商的选择。(2)基于遗传算法的用户利益最大化资源调度方法。从用户角度出发,考虑到用户所选用的虚拟机模版大小及不同供应商资源的价格,以用户最终总任务的执行费用为指标,完成从任务到虚拟机,虚拟机到数据中心的两层调度。调度策略实现运用了遗传算法,遗传算法中染色体前部分为任务—虚拟编码,后半部分染色体为虚拟机—数据中心编码,通过染色体的前后两个部分求得最后总任务的执行费用。(3)基于蚁群算法的供应商利益最大化资源调度方法。从云供应商的角度出发,考虑将任务调度到数据中心上供应商的成本以及调度完成后资源的负载均衡,本文中考虑供应商的总成本最低,主要考虑任务到数据中心的传输成本,而传输成本与任务的输入输出文件大小和任务与数据中心节点位置远近相关;而负载率会产生一个修正系数,在蚁群算法计算过程中影响蚂蚁的收敛方向,最终得到的解在满足了供应商资源负载均衡的基础上使供应商成本达到最优。(4)基于CloudSim的云联盟资源调度算法实现。利用云计算仿真软件CloudSim模拟调度流程,通过对CloudSim资源包中的DatacenterBroker类进行改写该类以实现基于遗传算法的用户利益最大化资源调度方法和基于供应商利益最大的资源调度蚁群算法通过CloudSim的仿真,可观察到整个调度机任务执行过程,及最终结果的输出。