太阳城集团

  • / 12
  • 下载费用:30 金币  

虚拟机故障检测、恢复系统及虚拟机检测、恢复、启动方法.pdf

摘要
申请专利号:

CN201510416209.0

申请日:

2015.07.15

公开号:

太阳城集团CN105024879A

公开日:

2015.11.04

当前法律状态:

授权

有效性:

有权

法律详情: 授权|||实质审查的生效IPC(主分类):H04L 12/26申请日:20150715|||公开
IPC分类号: H04L12/26; H04L29/08; G06F9/455; G06F11/30 主分类号: H04L12/26
申请人: 中国船舶重工集团公司第七0九研究所
发明人: 徐士伟; 江昌庆; 胡哲琨; 代征; 戴新发
地址: 430205湖北省武汉市东湖新技术开发区凤凰产业园藏龙北路1号
优先权:
专利代理机构: 武汉河山金堂专利事务所(普通合伙)42212 代理人: 胡清堂
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201510416209.0

授权太阳城集团号:

||||||

法律状态太阳城集团日:

2018.03.23|||2015.12.02|||2015.11.04

法律状态类型:

太阳城集团授权|||实质审查的生效|||公开

摘要

太阳城集团一种虚拟机故障检测和恢复的系统,其包括至少一台虚拟机以及一台虚拟机管理器;通过虚拟机管理器中虚拟机故障检测前端检测虚拟机的心跳太阳城集团,并将心跳太阳城集团发送至虚拟机管理器;虚拟机管理器包括虚拟机故障检测配置模块、域间共享存储系统、与虚拟机故障检测前端对应的虚拟机故障检测后端、虚拟机故障检测管理模块,通过虚拟机故障检测管理模块启动虚拟机故障检测后端,虚拟机故障检测后端与虚拟机故障检测前端通过树状的域间共享存储系统传递心跳太阳城集团。根据心跳太阳城集团,虚拟机故障检测后端判断本地虚拟机是否发生故障并将结果报告给虚拟机故障检测管理模块,由虚拟机故障检测管理模块对故障虚拟机进行关闭和恢复。

权利要求书

权利要求书
1.  一种虚拟机故障检测和恢复的系统,其特征在于,其包括至少一台虚拟机以及一台虚拟机管理器;虚拟机运行在虚拟机管理器之上;
虚拟机内设置虚拟机故障检测前端,虚拟机故障检测前端用于检测虚拟机的心跳太阳城集团,并将心跳太阳城集团发送至虚拟机管理器;
虚拟机管理器包括虚拟机故障检测配置模块、域间共享存储系统、与虚拟机故障检测前端对应的虚拟机故障检测后端、虚拟机故障检测管理模块;
虚拟机故障检测配置模块用于接收并存储用户指定的虚拟机故障检测配置太阳城集团;
域间共享存储系统用于接收并存储虚拟机管理发送的心跳太阳城集团;
虚拟机故障检测管理模块用于读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端发送检测启动指令;虚拟机故障检测管理模块还用于在虚拟机发生故障时,关闭发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端,并重新启动发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端;
虚拟机故障检测后端用于根据检测启动指令,从域间共享存储系统中读取心跳太阳城集团,并根据心跳太阳城集团判断虚拟机是否发生故障,将检测结果发送至虚拟机故障检测管理模块。

2.  如权利要求1所述的虚拟机故障检测和恢复的系统,其特征在于,
虚拟机故障检测管理模块还用于判断心跳太阳城集团是否为关机心跳太阳城集团,在心跳太阳城集团为关机心跳太阳城集团时,关闭虚拟机故障检测后端后,再执行虚拟太阳城集团闭或者重启。

3.  如权利要求1所述的虚拟机故障检测和恢复的系统,其特征在于,
虚拟机故障检测配置太阳城集团包括虚拟机故障检测恢复使能标识、用户指定的心跳丢失判断太阳城集团间隔和允许最大自动恢复次数,其中:虚拟机故障检测恢复使能标识用于表示相应虚拟机启动时VMM是否对其进行故障检测,心跳丢失判断太阳城集团间隔用于表示如果在指定太阳城集团间隔内没有接收到心跳那么判断相应虚拟机发生故障,允许最大自动恢复次数用于表示预设太阳城集团内自动恢复虚拟机的最大次数。

4.  一种虚拟机故障检测和恢复的方法,其特征在于,其通过权利要求1 至3任一项所述的虚拟机故障检测和恢复的系统实现,包括如下步骤:
S1、虚拟机故障检测配置模块接收用户指定的虚拟机故障检测配置太阳城集团;
S2、虚拟机故障检测管理模块从虚拟机故障检测模块中读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端发送检测启动指令;根据检测启动指令启动虚拟机故障检测后端,虚拟机故障检测后端与设置在虚拟机内的虚拟机故障检测前端通过域间共享存储系统传递检测虚拟机的心跳太阳城集团;虚拟机故障检测后端根据心跳太阳城集团判断虚拟机是否发生故障并将结果发送至虚拟机故障检测管理模块。

5.  如权利要求4所述的虚拟机故障检测和恢复的方法,其特征在于,在步骤S2之后,还包括:
S3、虚拟机故障检测管理模块在虚拟机发生故障时,关闭发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端,并重新启动发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端。

6.  如权利要求4所述的虚拟机故障检测和恢复的方法,其特征在于,所述步骤S2包括如下子步骤:
S21、在指定虚拟机启动之前,虚拟机故障检测管理模块读取虚拟机故障检测配置太阳城集团,根据虚拟机故障检测配置太阳城集团中的使能标识启动虚拟机故障检测启动指令,在相应虚拟机的检测启动指令执行之后启动虚拟机故障检测后端的功能,并将心跳丢失判断太阳城集团间隔作为启动参数;
S22、虚拟机故障检测后端在域间共享存储系统中指定虚拟机对应的目录下建立用于存储心跳太阳城集团的关键字,并开始监听该关键字;
S23、虚拟机故障检测前端在虚拟机系统中开机自运行,并且以预设频率向相应关键字覆盖写入心跳计数值;
S24、在第一次检测到心跳之后,虚拟机故障检测后端开启计时器,计时周期为心跳丢失判断太阳城集团间隔;在一个计时周期内监听到相应关键字有更新时,则立即重新开始一个新的计时周期;在一个计时周期内没有监听到相应关键字的更新时,则判断虚拟机出现故障,并将检测结果发送至虚拟机故障检测管理模块。

7.  如权利要求5所述的虚拟机故障检测和恢复的方法,其特征在于,所述步骤S3包括如下子步骤:
S31、在指定虚拟机发生故障时,虚拟机故障检测管理模块关闭发生故障的虚拟机对应的故障检测后端,然后强制关闭发生故障的虚拟机;
S32、根据已经读取的虚拟机故障检测配置太阳城集团中允许最大自动恢复次数和当前虚拟机自动恢复次数,判断是否自动恢复当前虚拟机的故障;如果当前虚拟机自动恢复次数超过允许最大自动恢复次数,则放弃自动恢复虚拟机,并等待管理员手动处理虚拟机故障;如果当前虚拟机自动恢复次数未超过允许最大自动恢复次数,则选择自动恢复当前虚拟机并将当前虚拟机恢复次数加1,在相应虚拟机启动命令执行之后,虚拟机故障检测管理模块启动发生故障的虚拟机对应的故障检测后端,并将已经读取的心跳丢失判断太阳城集团间隔作为启动参数;
S33、跳转到步骤S21,重复依次执行步骤S21至步骤S24。

8.  一种虚拟机启动的方法,其特征在于,其通过权利要求1至3任一项所述的虚拟机故障检测和恢复的系统实现,包括如下步骤:
S01、当虚拟机使用者关闭或者重启虚拟机内操作系统时,关机或者重启操作将首先触发该虚拟机对应的虚拟机故障检测前端向域间共享存储系统的相应心跳关键字中写入关机心跳值;
S02、虚拟机故障检测后端从域间共享存储系统中读取关机心跳值,并将关机心跳值传递给虚拟机故障检测管理模块;
S03、虚拟机故障检测管理模块关闭该虚拟机对应的虚拟机故障检测后端后,再执行虚拟太阳城集团闭或者重启。

说明书

说明书虚拟机故障检测、恢复系统及虚拟机检测、恢复、启动方法
技术领域
本发明涉及虚拟化高可用技术领域,特别涉及一种虚拟机故障检测、恢复系统及虚拟机检测、恢复、启动方法。
背景技术
随着太阳城集团技术的发展和人们对计算机资源不断提高的要求,云计算已经成为当前计算机技术研究的热点。云计算使用虚拟化技术对底层计算、网络和存储资源进行封装,通过建立虚拟机并在其中运行操作系统和应用程序的形式,将这些资源提供给远程用户。因此,虚拟机作为用户直接使用的环境,其稳定性和可用性直接关系到用户的使用体验。
在云计算虚拟化平台上,虚拟机管理器(Virtual Machine Monitor,VMM)是整个系统的核心部件。在通常情况下,VMM直接运行在硬件平台之上,以软件方式模拟物理硬件的核心功能,建立多个虚拟机(Virtual Machine,VM),并且为运行在这些虚拟机之上的操作系统和应用程序提供与访问物理硬件相同的访问接口。与普通计算机相同,虚拟机的系统在运行过程中会出现故障(例如:死机和蓝屏等),当虚拟机系统发生故障时,用户程序和业务将无法运行。这样,为了保证业务处理功能的正常实现,需要能够检测和恢复虚拟机系统故障的方法。
为了解决虚拟机系统故障检测的问题,已有研究人员借鉴计算机集群的高可用方案,在虚拟环境下引入心跳检测机制,利用网络连接传递虚拟机和VMM之间的心跳太阳城集团,通过让虚拟机和VMM之间保持心跳的方式,检测虚拟机是否发生故障。但是网络环境复杂并且充满了不可预期的因素,这降低了虚拟机和VMM之间心跳的稳定性,增加了虚拟机故障的漏报和误报的概率。
发明内容
有鉴于此,本发明提供一种虚拟机故障检测、恢复系统及其检测、恢复、启动方法。
一种虚拟机故障检测和恢复的系统,其包括至少一台虚拟机以及一台虚拟机管理器;虚拟机运行在虚拟机管理器之上;
虚拟机内设置虚拟机故障检测前端(Fault-detection Front End,FDFE),虚拟机故障检测前端用于检测虚拟机的心跳太阳城集团,并将心跳太阳城集团发送至虚拟机管理器;
虚拟机管理器包括虚拟机故障检测配置模块(Fault-detection Configuration Module,FDCM)、域间共享存储系统(Domain-shared Storage System,DS3)、与虚拟机故障检测前端对应的虚拟机故障检测后端(Fault-detection Back End,FDBE)、虚拟机故障检测管理模块(Fault-detection Management Module,FDMM);
虚拟机故障检测配置模块用于接收并存储用户指定的虚拟机故障检测配置太阳城集团;
域间共享存储系统用于接收并存储虚拟机管理发送的心跳太阳城集团;
虚拟机故障检测管理模块用于读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端发送检测启动指令;虚拟机故障检测管理模块还用于在虚拟机发生故障时,关闭发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端,并重新启动发生故障的虚拟机以及发生故障的虚拟机对应的故障检测后端;
虚拟机故障检测后端用于根据检测启动指令从域间共享存储系统中读取心跳太阳城集团,并根据心跳太阳城集团判断虚拟机是否发生故障,并将检测结果发送至虚拟机故障检测管理模块。
一种虚拟机故障检测和恢复的方法,其通过上述虚拟机故障检测和恢复的系统实现,包括如下步骤:
S1、虚拟机故障检测配置模块接收用户指定的虚拟机故障检测配置太阳城集团;
S2、虚拟机故障检测管理模块从虚拟机故障检测模块中读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端发送检测启动指令;根据检测启动指令启动虚拟机故障检测后端,虚拟机故障检测后端与设置在虚拟机内的虚拟机故障检测前端通过域间共享存储系统传递检测虚拟机的心跳太阳城集团;虚拟机故障检测后端根据心跳太阳城集团判断虚拟机是 否发生故障并将结果发送至虚拟机故障检测管理模块。
一种虚拟机启动的方法,其通过上述虚拟机故障检测和恢复的系统实现,包括如下步骤:
S01、当虚拟机使用者关闭或者重启虚拟机内操作系统时,关机或者重启操作将首先触发该虚拟机对应的虚拟机故障检测前端向域间共享存储系统的相应心跳关键字中写入关机心跳值;
S02、虚拟机故障检测后端从域间共享存储系统中读取关机心跳值,并将关机心跳值传递给虚拟机故障检测管理模块;
S03、虚拟机故障检测管理模块关闭该虚拟机对应的虚拟机故障检测后端后,再执行虚拟太阳城集团闭或者重启。
本发明提供的虚拟机故障检测、恢复系统及其检测、恢复、启动方法,相比于通过网络连接传递虚拟机故障检测心跳而言,使用域间共享存储系统传递心跳太阳城集团,不仅能够避免网络连接中存在的大量不可预期因素,保证心跳太阳城集团传递的稳定性;而且域间共享存储系统的读写速度高于网络传输速度,读写延时低于网络延时,这有利于提高虚拟机故障检测的准确性和速度。并且通过读取关机心跳值来判断正常关闭或重启虚拟机,避免了虚拟机故障的误报。
附图说明
图1为本发明实施例的虚拟机故障检测、恢复系统的结构框图;
图2为本发明实施例的第一种虚拟机故障检测、恢复方法流程图;
图3为本发明实施例的第二种虚拟机故障检测、恢复方法流程图;
图4为图2中步骤S2的子流程图;
图5为图3中步骤S3的子流程图;
图6为本发明实施例的虚拟机启动的方法流程图。
具体实施方式
如图1所示,一种虚拟机1故障检测和恢复的系统,其主要基于域间共享存储系统22,包括至少一台虚拟机1以及一台虚拟机管理器2;虚拟机1均与虚拟机管理器2相连。实施例中,一台虚拟机管理器2可以管理多台虚拟机1。
虚拟机1内设置虚拟机故障检测前端11,虚拟机故障检测前端11用于检测虚拟机1的心跳太阳城集团,并将心跳太阳城集团发送至虚拟机管理器2。
虚拟机管理器2包括虚拟机故障检测配置模块21、域间共享存储系统22、与虚拟机故障检测前端11对应的虚拟机故障检测后端23、虚拟机故障检测管理模块24。
虚拟机故障检测配置模块21用于接收并存储用户指定的虚拟机故障检测配置太阳城集团。
可选地,虚拟机故障检测配置模块21可以B/S模式提供界面操作和配置功能,用户通过网络和太阳城集团器连接并通过输入用户名和口令登录虚拟机故障检测配置模块21进行配置工作,虚拟机故障检测配置模块21在接收到用户的配置太阳城集团后,形成相关虚拟机故障检测配置太阳城集团文件,并存储在本地磁盘上以供虚拟机1故障检测过程中使用。B/S模式是一种太阳城集团器/服务器模式,远程用户机3可以通过太阳城集团器对虚拟机故障检测配置模块21中的各个参数进行配置。
可选地,虚拟机故障检测配置太阳城集团包括虚拟机1故障检测恢复使能标识、用户指定的心跳丢失判断太阳城集团间隔和允许最大自动恢复次数,其中:虚拟机1故障检测恢复使能标识用于表示相应虚拟机1启动时虚拟机管理器2是否对其进行故障检测,心跳丢失判断太阳城集团间隔用于表示如果在指定太阳城集团间隔内没有接收到心跳那么判断相应虚拟机1发生故障,允许最大自动恢复次数用于表示预设太阳城集团内自动恢复虚拟机1的最大次数。用户进行虚拟机1故障检测配置工作包括:标记或取消标记使能标识、输入心跳丢失判断太阳城集团间隔和允许最大自动恢复次数等。
域间共享存储系统22用于接收并存储虚拟机1管理发送的心跳太阳城集团。域间共享存储系统22是一个由虚拟机管理器2管理的树状分层存储系统,具有树状层次结构的目录,类似于Linux中的树形目录,它存储了虚拟机1和虚拟机管理器2之间共享的配置太阳城集团(例如:虚拟机1名和虚拟机1状态等),虚拟机管理器2作为管理域可以查看和修改整个结构的内容,而虚拟机1只能查看和修改自身的太阳城集团。通常情况下,域间共享存储系统22用于域间少量太阳城集团(例如:虚拟机名字、配置等)的传送,这些太阳城集团存储在一个稳定的位置,通过内核提供的接口易于读写。鉴于域间共享存储系统22的 特殊结构和作用,通过利用域间共享存储系统22传递虚拟机1和虚拟机管理器2之间的心跳太阳城集团,能够保证故障检测心跳太阳城集团传递通路的稳定性,减小传递延时。
虚拟机故障检测管理模块24用于读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端23发送检测启动指令;虚拟机故障检测管理模块24还用于在虚拟机1发生故障时,关闭发生故障的虚拟机1以及发生故障的虚拟机1对应的故障检测后端,并重新启动发生故障的虚拟机1以及发生故障的虚拟机1对应的故障检测后端。
虚拟机故障检测后端23用于根据检测启动指令从域间共享存储系统22中读取心跳太阳城集团,并根据心跳太阳城集团判断虚拟机1是否发生故障,并将检测结果发送至虚拟机故障检测管理模块24。
可选地,虚拟机故障检测管理模块24还用于判断心跳太阳城集团是否为关机心跳太阳城集团,在心跳太阳城集团为关机心跳太阳城集团时,关闭虚拟机故障检测后端23后,再执行虚拟机1关闭或者重启。
如图2所示,本发明实施例提供一种虚拟机1故障检测和恢复的方法,,其通过上述任一项实施例所述的虚拟机1故障检测和恢复的系统实现,包括如下步骤:
S1、虚拟机故障检测配置模块21接收用户指定的虚拟机故障检测配置太阳城集团。
S2、虚拟机故障检测管理模块24从虚拟机1故障检测模块中读取虚拟机故障检测配置太阳城集团,并根据虚拟机故障检测配置太阳城集团向虚拟机故障检测后端23发送检测启动指令;根据检测启动指令启动虚拟机故障检测后端23,虚拟机故障检测后端23与设置在虚拟机1内的虚拟机故障检测前端11通过域间共享存储系统22传递检测虚拟机1的心跳太阳城集团;虚拟机故障检测后端23根据心跳太阳城集团判断虚拟机1是否发生故障并将结果发送至虚拟机故障检测管理模块24。
可选地,如图3所示,在步骤S2之后,还包括:
S3、虚拟机故障检测管理模块24在虚拟机1发生故障时,关闭发生故障的虚拟机1以及发生故障的虚拟机1对应的故障检测后端,并重新启动发生故障的虚拟机1以及发生故障的虚拟机1对应的故障检测后端。
可选地,如图4所示,所述步骤S2包括如下子步骤:
S21、在指定虚拟机1启动之前,虚拟机故障检测管理模块24读取虚拟机故障检测配置太阳城集团,根据虚拟机故障检测配置太阳城集团中的使能标识启动虚拟机1故障检测启动指令,在相应虚拟机1的检测启动指令执行之后启动虚拟机故障检测后端23的功能,并将心跳丢失判断太阳城集团间隔作为启动参数。
根据使能标识,虚拟机故障检测管理模块24判断是否启动指定虚拟机1的故障检测。如果使能标识为取消标记状态,则不启动虚拟机1故障检测,如果使能标识为标记状态,则在相应虚拟机1启动命令执行之后紧接着启动虚拟机故障检测后端23,并将心跳丢失判断太阳城集团间隔作为启动参数。
S22、虚拟机故障检测后端23在域间共享存储系统22中指定虚拟机1对应的目录下建立用于存储心跳太阳城集团的关键字,并开始监听该关键字。
S23、虚拟机故障检测前端11在虚拟机1系统中开机自运行,并且以预设频率向相应关键字覆盖写入心跳计数值。比如间隔为0.5秒,当然也可以为其他值。
S24、在第一次检测到心跳之后,虚拟机故障检测后端23开启计时器,计时周期为心跳丢失判断太阳城集团间隔;在一个计时周期内监听到相应关键字有更新时,则立即重新开始一个新的计时周期;在一个计时周期内没有监听到相应关键字的更新时,则判断虚拟机1出现故障,并将检测结果发送至虚拟机故障检测管理模块24。
通过本实施例,避免网络连接中存在的大量不可预期因素,保证心跳太阳城集团传递的稳定性;而且域间共享存储系统22的读写速度高于网络传输速度,读写延时低于网络延时,这有利于提高虚拟机1故障检测的准确性和速度。
可选地,如图5所示,所述步骤S3包括如下子步骤:
S31、在指定虚拟机1发生故障时,虚拟机故障检测管理模块24关闭发生故障的虚拟机1对应的故障检测后端,然后强制关闭发生故障的虚拟机1;
S32、根据已经读取的虚拟机故障检测配置太阳城集团中允许最大自动恢复次数和当前虚拟机1自动恢复次数,判断是否自动恢复当前虚拟机1的故障;如果当前虚拟机1自动恢复次数超过允许最大自动恢复次数,则放弃自动恢复虚拟机1,并等待管理员手动处理虚拟机1故障;如果当前虚拟机1自动 恢复次数未超过允许最大自动恢复次数,则选择自动恢复当前虚拟机1并将当前虚拟机1恢复次数加1,在相应虚拟机1启动命令执行之后,虚拟机故障检测管理模块24启动发生故障的虚拟机1对应的故障检测后端,并将已经读取的心跳丢失判断太阳城集团间隔作为启动参数;
S33、跳转到步骤S21,重复依次执行步骤S21至步骤S24。
通过本实施例,避免了虚拟机1的无限制重启的缺陷。
如图6所示,本发明实施例还提供一种虚拟机1启动的方法,其通过上述任一项实施例所述的虚拟机1故障检测和恢复的系统实现,包括如下步骤:
S01、当虚拟机1使用者关闭或者重启虚拟机1内操作系统时,关机或者重启操作将首先触发该虚拟机1对应的虚拟机故障检测前端11向域间共享存储系统22的相应心跳关键字中写入关机心跳值;
S02、虚拟机故障检测后端23从域间共享存储系统22中读取关机心跳值,并将关机心跳值传递给虚拟机故障检测管理模块24;
S03、虚拟机故障检测管理模块24关闭该虚拟机1对应的虚拟机故障检测后端23后,再执行虚拟机1关闭或者重启。
通过本实施例,通过读取关机心跳值来判断正常关闭或重启虚拟机1,避免了将虚拟机1正常重启或关闭作为虚拟机1故障的误报情形。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机储存器、内存、只读存储器、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其他形式的存储介质中。
可以理解的是,对于本领域的普通技术人员来说,可以根据本发明的技术构思做出其它各种相应的改变与变形,而所有这些改变与变形都应属于本发明权利要求的保护范围。

关 键 词:
虚拟机 故障 检测 恢复 系统 启动 方法
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
太阳城集团本文
本文标题:虚拟机故障检测、恢复系统及虚拟机检测、恢复、启动方法.pdf
链接地址:http://zh228.com/p-6377420.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');