论文部分内容阅读
近些年,随着云计算的兴起,数据中心的规模和数量都急剧增大。由于数据中心的设备耗电量巨大,如何降低数据中心服务器以至整个数据中心的能耗成为业界热点关注的问题。随着虚拟化技术的发展,其中虚拟机迁移技术可以作为一种解决云数据中心能耗的方法。当服务器的资源使用率太低,其电能消耗远高于其提供服务的能力时,就造成了物理资源的浪费。一个大规模数据中心,每天处于这种空闲状态的服务器数目不少,如果能避免出现这样的情况,那么在很大程度上将优化数据中心的整体能耗。此外,当服务器的资源使用率太高,也会增加服务器的能耗,并且无法满足其上运行的一些虚拟机的资源请求,如此可通过虚拟机迁移来降低服务器因高负载而增加的能耗,并且缓解资源不足的状态。其次,OpenStack云平台目前只能在控制节点通过命令nova live-migration实现迁移,或者在OpenStack管理页面手动迁移,其缺乏虚拟机迁移机制中确定迁移时机和目标虚拟机选择的自主性。而且,OpenStack中Nova-Scheduler模块的目标主机选择算法单一,只是经过主机过滤后按照内存剩余量排序,优先选择内存剩余量大的作为目标主机。针对以上问题,本文在研究和分析了近几年国内外流行的虚拟机迁移策略之后,结合OpenStack开源云平台,提出了一种优化的虚拟机迁移策略。本文首先分析了OpenStack现有的资源分配方式,然后分析了OpenStack的动态迁移策略,着重分析了OpenStack的Scheduler模块。通过优化的虚拟机迁移策略与OpenStack调度模块相结合,着重改进了Scheduler中定位目标主机的算法。由于Scheduler在选择目标主机时并没有考虑无效迁移,所以本文提出的目标主机选择策略,通过设置合适的阈值,结合时间序列预测技术,避免了无效迁移,节省了数据中心整体能耗。最后,本文利用CloudSim仿真软件模拟了一个数据中心,通过对CloudSim中相关类的修改,在其上实现了本文提出的虚拟机迁移算法。通过仿真实验,得到了虚拟机迁移的相关能耗数据,通过分析比较这些数据,证实该算法在一定程度上能够优化数据中心能耗。