一种虚拟化云中容错资源供给方法_2

文档序号:9288352阅读:来源:国知局
虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的GR-count柱形图;
[0049] 图7为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的HAT-count柱形图;
[0050] 图8为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的RTH-count柱形图;
[0051] 图9为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的GR-intervalTime柱形图;
[0052] 图10为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的HAT-intervalTime柱形图;
[0053] 图11为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的RTH-intervalTime柱形图;
[0054] 图12为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的GR-a柱形图;
[0055] 图13为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的HAT-a柱形图;
[0056] 图14为根据本发明实施例的一种虚拟化云中容错资源供给方法中,FASARD与6种 基准算法在随机合成依赖任务组上工作时的RTH-a柱形图。
【具体实施方式】
[0057] 为使本发明的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中 的附图,对本发明实施例中的技术方案进一步进行清楚、完整、详细地描述,显然,所描述的 实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域 普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0058] 根据本发明的实施例,提供了一种虚拟化云中容错资源供给方法。
[0059] 如图1所示,根据本发明实施例的提供的一种虚拟化云中容错资源供给方法包 括:
[0060] 步骤S101,获取已到达的依赖任务组信息与虚拟化云的物理主机信息;
[0061] 步骤S103,使用PB模型为依赖任务组中的每个任务建立主版本与副版本;
[0062] 步骤S105,根据依赖任务组信息为依赖任务组中的每个任务的每个版本均指定一 个最早开始时间与一个最晚完成时间;
[0063] 步骤S107,根据依赖任务组信息激活多个物理主机,并在每个被激活的物理主机 上划分出多个虚拟机,获取每个被激活的物理主机上的每个虚拟机信息;
[0064] 步骤S109,根据依赖任务组中的每个任务的每个版本的最早开始时间与最晚完成 时间、以及每个被激活的物理主机上的每个虚拟机信息,将依赖任务组中的每个任务的每 个版本在指定的时间段上加载到每个被激活的物理主机上的每个虚拟机中;
[0065] 步骤S111,在每个被激活的物理主机上的每个虚拟机中按照指定的时间安排运行 被加载的依赖任务组中的每个任务的每个版本,并根据计算物理主机的负载情况与实时利 用情况使用资源扩展机制与资源收缩机制调节系统的资源利用率;
[0066] 步骤S113,完成依赖任务组的全部任务并返回任务结果。
[0067] 其中,依赖任务组信息包括任务集合、任务间关系集合与任务截止期,任务集合记 载了依赖任务组中每个任务的大小,任务间关系集合记载了依赖任务组中任意两个任务之 间的依赖关系,任务截止期为依赖任务组的最晚完成时间;物理主机信息包括物理主机集 合,物理主机集合记载了每个物理主机处理能力的大小;虚拟机信息包括每个被激活的物 理主机上的虚拟机集合,虚拟机集合记载了每个虚拟机所在的物理主机以及每个虚拟机处 理能力的大小。
[0068] 并且,使用PB模型为依赖任务组中的每个任务建立主版本与副版本,为在依赖任 务组中依次指定每个任务,并为被指定的任务创建一个主版本与一个副版本,其中,同一个 任务的主版本与副版本重复进行相同的工作。
[0069] 并且,多个被激活的物理主机之间存在传输时延;根据依赖任务组信息为依赖任 务组中的每个任务的每个版本均指定一个最早开始时间与一个最晚完成时间包括:
[0070] 对于任一子任务的主版本,其最早开始时间为其多个父任务中每个父任务的完成 时间加上父任务所在物理主机与子任务所在物理主机之间的传输时延之和中的最大值;
[0071] 对于任一子任务的副版本,其最早开始时间为其多个父任务中每个父任务的完成 时间加上父任务所在物理主机与子任务所在物理主机之间的传输时延之和、以及同一任务 的主版本任务长度二者的较大值;
[0072] 对于任一非子任务的主版本,其最早开始时间为该任务的主版本所在物理主机的 所在虚拟机为执行该任务的主版本而准备就绪的时间与该任务所在的依赖任务组信息到 达时间中的较大值;
[0073] 对于任一非子任务的副版本,其最早开始时间为该任务的副版本所在物理主机的 所在虚拟机为执行该任务的副版本而准备就绪的时间与该任务所在的依赖任务组信息到 达时间中的较大值;
[0074] 对于任一任务的任意版本,其最晚完成时间为该任务的截止时间;
[0075] 其中,一子任务与一父任务为一依赖任务对,子任务依赖于父任务,子任务必须获 得父任务的执行结果才能执行。
[0076] 同时,根据计算物理主机的负载情况与实时利用情况使用资源扩展机制与资源收 缩机制调节系统的资源利用率中,资源扩展机制包括水平扩展与垂直扩展,资源收缩机制 包括水平收缩与垂直收缩;其中,水平扩展为通过创建新的虚拟机增加计算资源规模,垂直 扩展为将主机的未启用处理能力分配到该主机的虚拟机上,水平收缩为通过关闭虚拟机降 低计算资源规模,垂直收缩为降低虚拟机的处理能力。
[0077] 并且,资源扩展机制按以下方式运作:
[0078] 将所有活动主机根据剩余处理能力由大到小排序,并依次指定每个主机;
[0079] 分别访问主机上的每个虚拟机,获得待分配任务在每个虚拟机上的最早开始时 间,并根据待分配任务在每个虚拟机上的最早开始时间计算为完成待分配任务每个虚拟机 分别需要的处理能力;
[0080] 根据指定主机的未启用处理能力大小判断将未启用处理能力分配到虚拟机能否 是虚拟机的处理能力足够完成待分配任务,若能则使用垂直扩展将未启用处理能力分配到 一个可用的虚拟机上并将待分配任务分配到该虚拟机上;
[0081] 依次指定每台活动主机直到该任务被成功分配或所有活动主机都被指定过,若所 有活动主机都被指定过但该任务仍未被成功分配,则使用水平扩展创建一台新的虚拟机并 将待分配任务分配到该虚拟机上;
[0082] 若使用水平扩展无法创建新的虚拟机,则返回任务分配失败信息。
[0083] 同时,资源收缩机制按以下方式运作:
[0084] 指定休眠阈值、关闭阈值、第一空闲时长阈值与第二空闲时长阈值;
[0085] 当有任务的主版本或副版本被调度到虚拟机上时,或当虚拟机上有副版本因为主 版本失效而需要执行时,根据第一空闲时长阈值、第二空闲时长阈值与任务长度,更新休眠 阈值与关闭阈值;
[0086] 当虚拟机连续空闲的时常超过休眠阈值时,将虚拟机的处理能力压缩到最小;
[0087] 当虚拟机连续空闲的时常超过关闭阈值时,关闭该虚拟机并将占用的处理能力返 还主机;
[0088] 当虚拟机被关闭且所在主机的负载情况与实时利用情况处于较低水平时,关闭该 主机并将主机上剩余虚拟机迀移到其他主机上。
[0089] 并且,当有任务的主版本或副版本被调度到虚拟机上时,或当虚拟机上有副版本 因为主版本失效而需要执行时,根据第一空闲时长阈值、第二空闲时长阈值与任务长度,更 新休眠阈值与关闭阈值包括:
[0090] 当有任务的主版本或副版本被调度到虚拟机上时,休眠阈值更新为第一空闲时长 阈值与任务的主版本长度之和、与旧休眠阈值两者中的较大值,关闭阈值更新为第二空闲 时长阈值与任务的主版本长度之和、与旧关闭阈值两者中的较大值;
[0091] 当虚拟机上有副版本因为主版本失效而需要执行时,休眠阈值更新为第一空闲时 长阈值与任务的副版本长度之和、与旧休眠阈值两者中的较大值,关闭阈值更新为第二空 闲时长阈值与任务的副版本长度之和、与旧关闭阈值两者中的较大值。
[0092] 下面根据具体实施例进一步阐述本发明的技术特征。
[0093] 由于任务到达通常不具有周期性,在本实施例中,我们考虑动态到达的依赖任务。 一组依赖任务可以表示为一个有向无环图(DirectedAcyclicGraph,下文中简称为DAG)。 一个DAG可被定义为G= {T,E},其中,T= {kb,…,tn}表示实时的非周期任务集合,E 表示任务间的关系集合。eij=(td 表示任务依赖于任务ti,即只有获得ti的执 行结果或者消息才能执行。因此,我们称^为、的父任务,^为^的子任务。对任一任 务心^ 和caj分别表示任务^的父任务集合和子任务结合。P(『,.)= 0表示任 务心没有父任务,C(f,) = 0表示任务^没有子任务。一个DAG的达到时间和截止期分别 表示为a(G)和d(G)。任务h可以描述成一个三元组t; =(a;,山,sj,其中,a;、山和s;分 别表示任务h的达到时间、截止期和任务大小。任务t^勺截止期d1可以通过其所在DAG 的截止期d(G)计算得到。任务大小用百万指令数(millioninstructions,下文中简称为 MI)衡量。在PB模型中,对于任一任务hGT,存在两个版本,分别表示为主版本 <和副版 本^%if和f被分配到不同的主机上以实现容错。< 和分别表示主版本的开始 时间和完成时间。类似地,<和4夂分别表示副版本:< 的开始时间和完成时间。尸:?)和 尸(<)分别表示:if和^的父任务集合乂乂^和以^分别表示^和^的子任务集合。
[0094] 虚拟化云可描述为一个物理主机的无限集合H= {^,匕,…}。虽然云中的主 机数量是无限的,但活动主机的数量是有限的。集合表示云中活动主机集合, H-Ha表示关闭主机集合。对任一主机hkGH,其处理能力pk用每秒百万指令数(million instructionspersecond,下文中简称为MIPS)衡量。每个主机1\上有多个虚拟机,用集 合% 卞# }表示,每个虚拟机v]kGVk有不同的处理能力p]k。对于主机h』 的虚拟机,其处理能力满足<P,,, &vjk的就绪时间表示为rjk。
[009
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1