本文研究的是基于状态感知的自主迁移调度[4]的方法,所谓状态感知,即通过某些手段收集当前的状态信息,本文不研究有关状态感知方面的问题,我们的调度算法是由整个系统通过状态分析后给出的一个需要迁移的虚拟机列表,而后我们才需要完成一个调度安排,为该迁移请求中的所有虚拟机找到一个使得整个集群系统负载更均衡的迁移安排。调度问题在虚拟机集群系统中一直是一个比较重要的问题,调度的好坏将直接关系到整个集群系统的服务性能和运行安全环境。当然也关系到数据中心的资源利用率,用户满意度,运营成本和稳定性等。
调查表明,数据中心的资源耗费率惊人[5],除了使用节能方法改造数据中心外,虚拟化服务器整合技术为上述问题提供了新的可行的解决方法,我们在虚拟化数据中心可以利用负载转移、在线迁移等各种手段去开发出系统的剩余资源,保证在性能稳定的同时还能减少资源的浪费。
1.2 研究现状
1.3 论文工作
本文旨在设计一种在基于状态感知的自主迁移调度算法,状态感知并不是本文研究的重点,本文只关注于自主迁移调度算法的设计和优化,需要设计出一个全局的迁移算法来服务于虚拟机在线迁移管理系统,本文算法会在每次感知到一系列的迁移请求时,预先算出迁移后整个集群系统中各物理机的负载情况,选择一种使得整个集群系统的负载更均衡的策略,在分配各迁移请求的目的虚拟机时,我们采用了模拟退火算法来近似的得到我们的解方案。在得到解方案后,我们还将通过优化使得虚拟机迁移的开销最小化。我们希望可以在找到一种让集群系统更稳定,负载更均衡,与此同时还能使得迁移的开销最小化的迁移调度方案。最后,我们用模拟实验的方法验证了本文算法相对于随机选择算法无论在负载均衡还是迁移开销上都是优秀的。
2 相关理论基础
2.1 虚拟化技术
虚拟化技术[10]常常出现于云计算中,我们可以通过虚拟化技术来动态的管理资源,也可以通过调整虚拟机映像上的某些服务同时将虚拟机映射到服务器上来保障订阅者的SLA需求。同时,对于整个的集群系统,虚拟化技术可以将虚拟机和物理机之间根据某些约束来进行重新映射。在云计算的方方面面,我们都能看到虚拟化技术,但与此同时,我们为了获得更好的性能,我们要统一的利用资源来适应云计算环境的变化。为了提高资源的利用率,我们还必须保障负载均衡。本文的研究重点也是放在了怎样调度虚拟机使得整个集群中的资源利用率最高和如何有效的获得负载均衡。防止负载不平衡导致整个系统的服务的不良好体验。
虚拟化技术应用在计算机方面通常指的是计算元件在虚拟的基础上运行而不是真实的基础上运行[7]。本文中的虚拟机即是指我们在物理机上开辟出多个空间来形成多台机器,这些机器拥有与物理机类型的结构,并且各自独立。
虚拟化技术与系统的多任务不同的,后者是指在一个操作系统,多个程序同时运行,而虚拟化技术,指在一台物理机上运行多个OS,并且每个操作系统都有多个程序运行,每个操作系统都有其被分配的CPU和内存。
本文中的虚拟化指的是平台虚拟化,即为操作系统提供硬件层的抽象,通过虚拟机监控器为上层应用提供一个统一的接口,我们把运行虚拟机监控器的操作系统称为宿主操作系统,虚拟机中运行的操作系统我们称之为客户机操作系统。除了平台虚拟化外还有应用虚拟化和桌面虚拟化两种。
平台虚拟化技术又有下列三个子分类[7]: 虚拟机在线迁移管理系统之自主迁移调度方法设计与实现(2):http://www.751com.cn/jisuanji/lunwen_11985.html