论文部分内容阅读
随着IT技术的发展,近几年云计算技术逐渐成熟。由于数据中心的数量和规模急速增长,如何合理地利用资源同时有效节省数据中心能耗成为热门的课题。作为云计算底层的IaaS层,是整个云计算架构的基础,而IaaS层最重要技术便是虚拟化。虚拟化中典型的技术是服务器虚拟化,即在一台物理服务器上运行多台虚拟机。随之出现的虚拟机迁移技术不仅解决了系统故障、升级时候的困难,而且在提高服务质量和节省数据中心能耗方面也发挥了作用。目前比较流行的开源云计算平台OpenStack也引入了虚拟机迁移的策略,但是在OpenStack中的虚拟机迁移需要管理员权限使用命令行或者在OpenStack管理页面手动的触发虚拟机迁移工作。不能动态的进行虚拟机的调度显然是不尽人意的,而且OpenStack虚拟机迁移的目的主机选取算法仅仅是依据主机内存剩余量的大小,指标过于单一,因此需要一套完整的动态虚拟机调度算法。本文在详细研究了OpenStack平台现有的调度策略之后,参考现有的虚拟机迁移技术,设计了基于OpenStack的调度系统。该系统使用监控历史数据建模,预测主机未来m个时刻的性能,使用多重阈值判定虚拟机迁移时机;对目标虚拟机选取,提出迁移体积的概念,按照迁移体积由小到大进行选取;对目的主机的选取,一次只为一台虚拟机选取目的主机,首先过滤掉不符合要求的主机,为每台主机的物理资源赋予不同的权值系数,计算总的权重来排序候选目的主机,并且使用随机选取的方式选取。本文在使用CloudSim仿真软件对本文提出的算法进行了仿真,验证了该系列算法能够有效减少数据中心的能量、提高资源的利用率并维持系统的稳定。最后,本文对系统进行了实现,通过几组实验数据,观察系统运行的日志,证明了算法运用到系统的可行性。结合仿真算法的实验数据,证明了系统的有效性。