论文部分内容阅读
得益于虚拟化技术的成熟发展,虚拟机越来越多的出现在了企业、学校和科研机构当中。相对于物理机来说,虚拟机拥有更好的迁移性、可扩展性和相对低廉的购入成本与维护成本,所以越来越多的中小型企业和创业者倾向于购买虚拟机来部署服务。因此对于云服务提供者和用户来说,如何在满足SLA的情况下对云环境下或者运行于同一物理资源池上的虚拟机合理的分配资源从而实现硬件资源池的最大化利用变得越来越重要。 当前的云服务提供者(如亚马逊的EC2)提供的是一种粗粒度的资源分配策略,为了简单起见,其向用户提供具有固定硬件资源配置和计算能力的虚拟机实例,每一种类型的实例映射为不同大小的CPU、内存和其他硬件资源,并且根据用户所选择的类型进行收费。但当前的这种硬件分配和收费策略存在明显的缺点:对于用户来说,为了避免虚拟机使用过程中可能出现的性能问题,其可能会超额的购买配置,这样不仅使硬件资源未能得到充分的利用,同时也增加了预算的成本,而且这种成比例的硬件资源分配也可能使用户得到一个性能次优的实例;而对于目的在于收益最大化的云服务提供商来说,粗粒度的硬件资源分配不仅不能给用户提供最优的性能体验,而且那些超额配置的资源本可以提供给更多的用户使用,因此也没能达到最大的盈利。在这种情况下,对云环境下或共享同一物理资源池的虚拟机应用性能进行建模就变得有意义了。 本文通过对不同硬件资源对虚拟机应用性能影响的单独分析,识别了影响虚拟机应用性能的关键特征,确定了虚拟机应用性能建模的最小特征集合,并将这些特征作为原始特征应用到虚拟机应用性能建模中去;同时本文还证明了虚拟机应用性能与硬件资源之间存在着复杂的非线性关系,尤其当把硬件资源之间的相互影响以及资源间的竞争都考虑进去时,情况将变的更加复杂。本文提出了一种基于SVD特征拓展结合非线性模型的建模方法SVDFeature++,该方法通过奇异值分解(SVD)对原始硬件资源特征进行特征拓展,同时通过非线性的方法进行建模,实验表明建立的模型效果良好,与目前比较先进的方法相比,在评价指标精确度和鲁棒性上都有着较好的效果。此外,本文还根据SVDFeature++方法设计并实现了支持云环境下或基于同一物理资源池的虚拟机应用性能建模工具,用户可以在该工具的辅助下对虚拟机合理的分配硬件资源。