论文部分内容阅读
近年以来,随着互联网+的提出,为了充分发挥互联网在生产要素配置的优化和集成作用,越来越多的互联网技术被应用到传统领域。虚拟化技术作为互联网云计算领域的重要分支,也被应用到传统的能源领域,为电网应用带来透明化、隔离性以及统一管理的优势。在电网实际环境下,应用占用资源大,应用内部和应用之间通信频繁,在虚拟机调度时需要充分考虑这些因素,同时在虚拟机发生异常时,需要有高效透明的数据备份机制保证虚拟机的容错恢复。 目前虚拟机主要利用资源预测、服务质量保证,网络拓扑热点或者系统的整体负载情况等某一种外部因素来调度,很少考虑应用间关联关系,而在批量调度虚拟机时,现有的方法多迭代使用单机调度算法,在单机调度计算复杂时,调度时间开销很大。同时在虚拟机容错时,现有的数据同步方法主要采用内存预拷贝,粒度大,代价高,不适用现有的电网应用的使用内存量大,核心数据变化小,存在大量中间类型数据的特点。综上所示,面向电网应用的虚拟机调度与容错研究需要解决以下三个问题:(1)针对单虚拟机调度,如何满足电网应用在虚拟机上运行的需求,从而提高应用运行的性能。(2)针对多虚拟机批量调度,如何快速有效的部署虚拟机,减少部署过程的选择开销。(3)针对虚拟机容错中的数据同步方式,如何满足电网应用的高效透明的数据同步需求。 针对以上问题,本文分析现有的虚拟机调度机制,结合电网应用的特点,设计和实现了面向电网应用的虚拟机调度与容错机制,并在国家电网真实环境下验证了系统的有效性。本文的研究内容如下: (1)提出了一种面向电网应用的单虚拟机的调度机制。针对电网应用运行的需求,提出应用配额限制,保证极限资源情况下应用稳定运行,并缩小后续计算的范围,降低计算的复杂度。针对应用间相互关联和电网应用容灾需求,提出应用关联检测方式,通过计算虚拟机之间的通信代价和容灾距离,并利用负载代价修正虚拟机的部署策略,避免系统资源的分配比例失调,保证系统运行的稳定。 (2)提出一种面向电网应用的多虚拟机批量调度机制。首先针对虚拟机批量调度时镜像的复制需求,根据虚拟机的通信代价聚类虚拟机,形成可供选择的虚拟机群。然后以虚拟机群的中心点为起点,通过概率的方式依次选取安装路径,并对本次选取的虚拟机更新其概率,经过若干次迭代,选择最优的虚拟机部署。该机制能尽可能的减少选择时间,保证选择相对最优的虚拟机。 (3)提出了一种高效的、多优先级同步的虚拟机核心数据同步机制,满足虚拟机容错的需求。通过构建虚拟机的同步目录结构,对应用的核心数据去重,减少了网络中数据的传输量,并能在虚拟机异常时,快速恢复数据。通过建立多优先级队列的数学模型,优先同步最重要的数据。为了减少非必要的数据的同步,在优先级队列的基础上加入自适应优先级调整的方式,对中间型文件延迟同步,对临时文件不同步,减少了不必要的同步。 (4)设计并实现了虚拟机管理系统,该系统实现了面向电网平台的调度与容错机制,并在实际使用和本文实验中证明方法切实可行。