[发明专利]一种虚拟机容错方法和系统无效
申请号: | 201110204570.9 | 申请日: | 2011-07-21 |
公开(公告)号: | CN102455951A | 公开(公告)日: | 2012-05-16 |
发明(设计)人: | 兰雨晴;徐舫;宋潇豫;夏颖 | 申请(专利权)人: | 中标软件有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F9/455;G06F11/00 |
代理公司: | 北京汇智英财专利代理事务所 11301 | 代理人: | 刘祖芬 |
地址: | 200030 上海市番*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟机 容错 方法 系统 | ||
技术领域
本发明与虚拟机相关,或者特指通过步调一致计算实现虚拟机容错的方法和系统。
背景技术
步调一致计算系统是指在多个处理器或计算机上通过并行或者顺序执行同一操作的计算机系统。每个处理器或计算机接收并执行操作,操作包括可执行代码、总线操作、异步事件等,通过输入产生相同的输出,输出包含端口输出、寄存器值的改变和内存值变化。因此,当一个处理器或计算机在运行一个程序、服务或者一系列指令发生错误时,其他机器或者处理器能够继续当前程序、服务或者指令的执行。
步调一致计算系统能够提供容错功能,但是步调一致计算系统比标准的计算机硬件系统要昂贵很多,当冗余的处理器和计算器增加时,步调一致计算系统的成本会更高。由于成本约束,步调一致计算系统通用性较差。
发明内容
为了解决上述问题,本发明描述了一种容错方法和系统,它是利用虚拟机实现步调一致计算系统来实现容错功能的。
本发明的总体构思是: 一个虚拟机与至少两个其他虚拟机通信,建立一个虚拟的步调一致计算系统,每个虚拟机运行在网络中的一个节点计算机上。一个虚拟机与其他一个以上虚拟机通信决定成员关系配置文件,通常指定第一个虚拟机为活动虚拟机,其他虚拟机为备选虚拟机。当活动虚拟机执行一个单步操作时,将产生一个操作令牌,该令牌包含该单步操作步骤的内容。活动虚拟机根据成员关系配置文件将操作令牌分发到所有备选虚拟机。各个备选虚拟机依次接收并执行操作令牌并发送到下一个备选虚拟机,保证所有虚拟机保持一致的状态。一个或多个虚拟机发生故障时,未发生故障的虚拟机重新建立成员关系配置文件,恢复故障发生前的状态,继续故障发生前的操作任务,从而有效地实现了系统的容错功能。
本发明涉及一种虚拟机容错方法,包括以下步骤:
一个虚拟机与其他两个以上虚拟机通信,建立虚拟步调一致计算系统的成员关系,成员包括数个虚拟机,每个虚拟机运行在联网的节点计算机上。首先,一个虚拟机与其他虚拟机通信,决定虚拟步调一致计算系统的成员关系配置文件,在该成员关系配置文件中确定活动虚拟机和备选虚拟机。成员关系配置文件中用户指定的第一位虚拟机、最先启动的虚拟机或者计算能力最强的虚拟机为活动虚拟机。成员关系配置文件中除了活动虚拟机之外的虚拟机为备选虚拟机,活动虚拟机的下一个备选虚拟机为第一备选虚拟机,依次类推,最后一个备选虚拟机为最后备选虚拟机,最后备选虚拟机的下一个虚拟机为活动虚拟机。
然后,虚拟步调一致计算系统中的每个成员虚拟机按照成员关系配置文件中的顺序执行每个单步操作。活动虚拟机执行一个单步操作并根据该单步操作产生一个操作令牌,并发送操作令牌到成员关系配置文件中的第一备选虚拟机;其他备选虚拟机依次接收操作令牌并执行操作令牌中包含的单步操作内容;直到最后备选虚拟机执行完单步操作后返回操作令牌到活动虚拟机,活动虚拟机根据下一个单步操作的内容产生新的操作令牌。其中,每个虚拟机均监测其他虚拟机的工作状态。当虚拟步调一致计算系统中如果有一个或多个虚拟机发生故障被其他虚拟机检测到,检测到故障的虚拟机与所有剩余的虚拟机通信重新建立虚拟步调一致计算系统的成员关系;重新执行故障发生前的操作令牌并传递到新的成员关系配置文件中的下一个虚拟机。
本发明还提供了一种虚拟机容错系统,包括:
三个以上的运行在联网的节点计算机上的虚拟机。
一个成员关系逻辑组件,用于发现并维护参与步调一致计算的虚拟机的列表,确定成员关系配置文件。成员关系逻辑组件中的成员关系配置文件中用户指定的第一位虚拟机、最先启动的虚拟机或者计算能力最强的虚拟机为活动虚拟机。成员关系配置文件中除了活动虚拟机之外的虚拟机为备选虚拟机,活动虚拟机的下一个备选虚拟机为第一备选虚拟机,依次类推,最后一个备选虚拟机为最后备选虚拟机,最后备选虚拟机的下一个虚拟机为活动虚拟机。
一个执行逻辑组件,用于产生操作令牌,传递操作令牌到成员关系配置文件中的下一个虚拟机,并接收前一个虚拟机发送过来的操作令牌。
一个容错逻辑组件,根据定时器的配置决定虚拟机是否发生故障。执行逻辑组件中的活动虚拟机执行一个单步操作并根据该单步操作产生一个操作令牌,并发送操作令牌到成员关系配置文件中的第一备选虚拟机;其他备选虚拟机依次接收操作令牌并执行操作令牌中包含的单步操作内容;直到最后虚拟机执行完单步操作后返回操作令牌到活动虚拟机,活动虚拟机根据下一个单步操作的内容产生新的操作令牌。
附图说明
图1展示了一个实际的包含了多个计算设备的网络架构,使其连接成为一个虚拟的步调一致计算系统。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中标软件有限公司,未经中标软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110204570.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:紫外线照射装置以及印刷装置
- 下一篇:一种治疗直肠脱垂的中药配方