论文部分内容阅读
虚拟化技术作为计算资源的一种抽象,将硬件和应用程序分离开来,通过数据中心进行细化和自动化系统配置,监控和管理,改变了传统计算机资源的人工管理配置,减少了错误率,提高了效率,降低了成本。它能够快速重新审定服务器的资源需求来最优化各个虚拟机的资源共享,进而满足应用程序的需求,并且对不断变化的事物条件进行更有效的响应,提高了故障隔离的性能,增强了客户VM(Virtual Machine)的独立性,强化了性能隔离。随着虚拟化技术的重新崛起和广泛应用,虚拟计算环境中,虚拟机上的资源分配管理问题,即如何根据上层负载的变化和资源需求动态分配资源,在满足应用负载QoS(quality of service)目标的同时,提高系统的资源利用率,降低管理的复杂度,减少使用的物理机器数量,节省资源,已成为目前的研究热点。本文研究了虚拟机上的资源分配管理问题,详细介绍了虚拟化技术,Xen虚拟机以及资源管理中的预测方法等。对动态自适应资源分配策略和多机资源管理的已有研究进行了总结和归纳。在此基础上,本文建立了单个虚拟机上的动态资源分配管理器,提出了多机上的资源管理策略和相关算法。主要内容包括:(1)针对单机上的资源管理提出了自适应的动态资源分配管理机制,建立了资源分配控制管理模型。主要由控制器,判断器,分配器以及相关的分配规则构成。为了有效地控制虚拟机上资源的在线分配,提高虚拟机上资源的利用率,本文采用动态资源分配技术,将各种资源动态的分配到各个负载不断变化的虚拟机中。利用灰色预测模型,预测虚拟机上的资源分配值,通过调整灰色预测模型的边值条件,使预测更加准确。同时运用控制理论,反馈控制资源利用率值,使得系统自动的调节资源分配值,进而使资源利用率达到一定的理想水平。(2)针对多物理机器的资源管理,根据应用环境的不同,本文给出不同的资源管理模型和相关算法,设计了基于不同约束的资源分配管理器。综合考虑了迁移开销,资源利用率,负载均衡和机器数量等目标因素,针对虚拟机迁移,制定相关的迁移策略,将多机器的资源管理问题分阶段来考虑。基于有限资源量的分配管理,以QoS保证和一定利用率条件下的负载均衡为主要目标,由局部控制和全局控制两个阶段组成,提出了Sub-Virtual Machine Set(SVMS)和Migration算法,并且将SVMS算法的最优性进行了理论证明,保证了负载均衡和资源利用率,满足了应用程序的服务质量要求。(3)基于无限资源量的资源分配管理,在保证服务质量、最大化资源利用率和最小化迁移开销的前提下,由初始阶段确定需要迁移的虚拟机,提出了Search Virtual Machine(SVM)算法。第二阶段以最少的物理机器数量和最大化资源利用率为目标,制定相应的迁移方案,设计了Improved Migration(IM)算法,进行虚拟机的迁移,减少了机器的使用量,保证了一定的资源利用率。本文对单机上的资源分配管理模型进行了Xen上CPU资源分配的控制实验,结果显示,当利用率目标随着时间而变化时,模型能够快速的追踪这种变化,从而使资源分配值也随之变化,不仅分配值能达到利用率目标的要求,而且利用率的收敛速度较快。而多机上的资源管理器的模拟仿真显示,SVMSM算法在资源利用率,迁移开销和均衡性等方面均取得了较大的改进,而SVMIM算法则在资源利用率、物理机器的使用量和系统能耗上都得到了较好的结果。