论文部分内容阅读
随着云计算技术的成熟和发展,越来越多的用户开始租赁、使用云资源,也有越来越多企业开始提供云资源的供给服务。我们可以从复杂的云环境中抽象出三类主要角色——云资源提供商、云应用提供商和云应用用户。本文旨在从这三类角色的主要需求出发,设计并实现一种云环境下需求驱动的动态资源调度框架。该框架能够针对各类角色的需求自动化地完成云环境下资源调度过程中的虚拟机资源供给、安置和整合活动。云应用用户往往会就云应用的性能、可用性、安全性等方面向云应用提供商提出一系列要求。另一方面,云应用提供商向云资源提供商租赁虚拟机资源为云应用提供计算能力的支持,他们希望资源调度框架能够能够对云应用进行弹性的虚拟机资源供给,使云应用在满足与云应用用户约定的服务质量约束的前提下尽可能的节约资源租赁成本。此外,虚拟机资源的安置方式将对云应用的可用性和云应用的虚拟机资源的内部通信开销造成直接的影响。因此,云应用提供商希望资源调度框架能够在生成虚拟机资源安置方案时能够综合考虑上述两个因素。从云资源提供商的角度看,他们希望资源调度框架能够通过虚拟机资源整合活动使计算中心处于负载正常的状态同时有效提高物理基础设施的资源利用率。本文分离并提取了上述三类角色对于云环境下虚拟机资源调度的主要需求,并将这些需求作为虚拟机资源调度过程中的虚拟机资源供给、安置、整合活动的约束条件,在此基础之上设计了一种需求驱动的动态资源调度框架,并为该框架提供了一组通用的实现。在云应用的工作负载预测方面,本文提出了一种时间序列预测模型与规律性导向的预测模型相结合的工作负载预测模型。该模型能够在较好地预测出工作负载的发展趋势的同时,利用工作负载潜在的规律性克服时间序列预测模型预测结果中存在的滞后性,达到了较好地覆盖负载高峰的效果。在虚拟机资源供给方面,本文在框架的虚拟机资源供给模块中实现了一种主动式与反应式相结合的资源供给策略。该策略在上述工作负载预测模型的支持下,能够在云应用的负载高峰和低谷到来前做出相应的调整;在预测不足或过度的情况发生时,反应式计算单元能够迅速做出反应,将云应用的虚拟机资源数目调整到理想水平。在虚拟机资源安置方面,本文在框架的虚拟机资源安置模块中实现了一种可用性感知及通讯开销优化的虚拟机资源安置策略。为了对云应用的可用性及云应用虚拟机资源的内部通讯开销进行定量分析,本文首先对上述两个指标的计算进行了建模。基于所建的计算模型,我们提出的虚拟机资源安置策略在计算虚拟机资源安置方案时兼顾了云应用可用性和虚拟机资源内部通信开销。在虚拟机资源整合方面,本文在框架的虚拟机资源整合模块中实现了一种面向整合逻辑组的主动式虚拟机资源整合机制。该机制通过将计算中心中的物理机切分为一组整合逻辑组,有效地限制了整合操作的作用范围,间接地将计算整合方案的时间复杂度限制在可接受的范围内。我们还利用拆分的思想,将整合活动拆分为——识别、筛选、映射三个步骤依次求解。在整合方案的求解过程中,我们还采用了主动式的思想,根据计算中心中的物理机和虚拟机的资源利用率的预测值进行整合活动,打破了静态整合活动中由于滞后带来的局限性。本文在真实的云环境下对上述框架进行了实验验证。实验结果表明,框架中实现的负载预测模型相较于其他参考模型能够在更小的平均相对误差水平下以更高的覆盖率对真实负载值进行覆盖;框架中实现的虚拟机资源供给策略能够在帮助云应用在绝大多数时间内满足预设的SLA约束同时,自动化地为云应用进行弹性的虚拟机资源供给;框架中实现的虚拟机资源安置策略能够帮助云应用在运行过程中始终满足可用性指标的约束,同时尽可能减少云应用的虚拟机资源的内部通讯开销;框架中实现的虚拟机资源整合机制在满足云环境中虚拟机的计算资源需求量的基础上,有效地提高了物理基础设施的资源利用率且减少了物理机过载情况的出现。至此,框架的有效性在真实的云环境下得到了完整的验证。