一种基于运行时模型的云计算容错机制配置方法_2

文档序号:9288355阅读:来源:国知局
构件选择第i个容错机 制后的故障转移时间。的取值范围为0或1,当g结果为1时表示为第j个构件选择第i个容错机制。上述公式可通过扩展,引入更多容错约束。
[0026] 进一步的,云平台容错运行时模型的构造分为两个步骤:构造容错元模型以及实 例化容错元模型。第一,构造云平台容错元模型。该元模型包括两个子模型,即云平台元模 型以及容错机制元模型。首先,本发明对CloudStack、OpenStack和Eucalyptus三大开源云 平台的管理能力进行统计,取其并集构造出通用云平台元模型。其次,本发明对目前云平台 中7种常用的容错机制进行建模,包括类、属性和关联,形成容错机制元模型。最后,本发明 将通用云平台元模型与容错机制元模型进行合并得到云平台容错元模型。第二,构造面向 容错的云平台运行时模型,即对元模型的实例化。元模型是平台无关模型,定义了云平台管 理能力以及运行时信息的结构,而运行时模型是平台相关模型,通过对各个平台管理能力 的绑定实现对元模型的实例化。本文实现了两种运行时模型构造方法,即基于访问模型的 构造方法(如图3)与基于模型转换的构造方法(如图4)。SM0RT(宋晖,黄罡,武义涵, 等.运行时软件体系结构的建模与维护[J].软件学报,2013, 24(8): 1731-1745)提供了基 于访问模型的运行时模型构造方法,将管理功能集中定义在访问模型中,通过代码生成工 具构造维护运行时模型的引擎。此外,针对已经具有运行时模型管理能力的云平台,本文提 供一种更为便捷的运行时模型实现方式,即模型转换。通过构造模型转化器,将其原有的运 行时模型转化为符合本文元模型约束的运行时模型。
[0027] 进一步的,云平台元模型从两个方面进行构造,1)云平台通用部署结构的角度。包 含如下类:数据中心、集群、共享存储、集群存储、物理机、虚拟机、虚拟存储以及应用。2)云 平台通用层次(应用层、虚拟层和物理层)和模块(计算、存储和网络)的角度。云平台元 模型如图5所示。
[0028] 进一步的,容错机制元模型的构造包括目标应用类和容错类。如图6,描述了三种 容错机制实例运行时所需要的信息,分别是应用双工机制,虚拟机热备以及虚拟机心跳检 测 。
[0029] 进一步的,云平台容错配置框架中的容错部署方案包括容错对象、故障类型、容错 机制以及容错范围四类属性。容错对象是指云平台中可能会发生故障并需要进行容错的实 体,故障类型是指对潜在故障的假设,容错机制则描述了一种针对故障源中的某种故障类 型实现容错能力的策略及其参数设置,容错范围是针对云环境下容错机制的一种部署范围 的描述。利用容错部署方案,管理员可实现基于运行时模型的容错机制部署。
[0030] 本发明的主要内容包括:
[0031] 步骤一:分析目标应用结构信息,对目标应用进行构件排名,按照排名推荐容错机 制。
[0032] 步骤二:构造面向容错的云平台运行时模型。建立云平台元模型以及容错机制元 模型;建立维护面向容错的运行时模型与云平台之间同步的访问模型;自动化生成与该云 平台同步的面向容错的云平台运行时模型。
[0033] 步骤三:制定容错部署方案。
[0034] 步骤四:允许用户使用QVT脚本对运行时模型注入错误,测试容错效果,计算可靠 性。
[0035] 步骤一中提出了一种应用构件排名算法。首先将目标应用描述为构件依赖图,描 述构件信息及构件间的交互信息,其中最重要的属性是构件可靠性,但该属性在实际环境 中是难以估计的,因此本文使用静态分析方法,即对所有构件分别提升其可靠性,并基于整 体可靠性的提升程度对构件进行排名。
[0036] 步骤二中的云平台容错运行时模型包括两个子模型,即云平台运行时模型、容错 机制运行时模型,分别描述云平台运行时信息和容错机制运行时信息。云平台运行时信息 的内容定义在云平台元模型中,如图5所示。包括:数据中心信息(名称,标识符,物理位 置,集群个数),集群信息(名称,标识符,虚拟化方式,物理机个数),存储信息(名称、标识 符、容量、使用率),主机信息(名称、标识符、内存信息、CPU信息、网络信息、操作系统、虚拟 机个数),虚拟机信息(名称、标识符、内存信息、CPU信息、网络信息、操作系统),应用信息 (名称、标识符、重要性、是否备份、CPU占用率、内存占用率、网络)。这些信息之间的关系 为:云平台部署图包含零到多个数据中心,数据中心包含若干集群和存储,集群包含零到多 个物理机,存储包含零到多个存储设备,物理机包含零到多个虚拟机,存储设备包含零到多 个虚拟存储,虚拟机包含零到多个应用。容错机制运行时信息的内容定义在容错机制元模 型中,如图6所示,包括:目标应用信息(名称、标识符、重要性、是否备份、CPU占用率、内存 占用率、网络),目标应用所在虚拟机信息(名称、标识符、内存信息、CPU信息、网络信息、操 作系统),容错机制运行信息(名称、标识符、配置信息、部署信息)。运行时模型最主要的 特征是与运行时云平台具有双向关联,即运行时模型的变化会引起云计算平台运行时的变 化(由云计算平台API中的set方法实现),反之,云计算平台运行时的变化也会引起运行 时模型的变化(由API中的get方法实现)。
[0037] 步骤二中建立面向容错的运行时模型,具体包含面向容错的云平台元模型的构造 以及访问模型的构造。元模型中定义了面向容错的可管理元素及其组织结构,即需要管理 的信息。访问模型定义了访问这些元素的具体方法,即通过调用该云平台的API实现某管 理元素的读写。
[0038] 步骤三中,容错机制部署方案包括四种类型的属性:容错对象、故障类型、容错机 制、容错范围。(1)容错对象是指在云平台中可能会发生故障且需要进行容错的主体,例 如虚拟机、应用等。本文从计算(如图7)、存储(如图8)、网络(如图9)三个模块分别描 述其在应用层、虚拟化层以及物理层的容错对象。(2)故障类型是对故障源中可能出现的 故障类型的一种假设,本文将故障类型分为三种:瞬时性故障、fail-stop故障、拜占庭故 障(ChenJ.;LuY.;ComsaI.;etal. .Ascalabilityhierarchicalfaulttolerance strategy:CommunityFaultTolerance.AutomationandComputing. 2014. 212-217) 〇瞬时 性故障是一种具有不确定性的随机发生的故障,具有难以重现的特点,一般可采取重启等 方式实现容错。Fail-stop故障是云平台中常出现的故障之一,例如,由于软硬件错误导致 虚拟机或物理机停止运行,或由于硬件老化等因素导致磁盘坏道都属于这类故障。拜占庭 故障是指在运行阶段发生的任意类型的故障,尤其是指由于受到攻击产生的故障(范捷, 易乐天,舒继武.拜占庭系统技术研究综述.软件学报,2013. 24(6) : 1346-1360)。(3)容错 机制属性,是指在容错机制部署时对参数进行初始化,例如热备机制中的心跳频率,双工机 制中的冗余个数等。(4)容错范围是指容错机制被激活的范围,在容错范围外部无法观察到 容错过程。根据云平台的部署模型,我们将容错范围分为五个级别:虚拟机范围(VM)、物理 机范围(PM)、集群范围(Cluster)、数据中心范围(Datacenter)、以及云平台范围(Cloud)。
[0039] 步骤四中,使用基于模型的故障注入技术和可靠性分析技术实现容错测试。运行 时模型描述了系统的运行状态,通过QVT对运行时模型的操作模拟系统故障。当容错机制 检测到系统错误,并实现容错后,通过基于模型的可靠性分析方法计算系统可靠性等指标, 评估容错效果。
[0
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1