首页> 中国专利> 基于核内外协同的高可用计算机系统故障处理方法及装置

基于核内外协同的高可用计算机系统故障处理方法及装置

摘要

本发明公开了一种基于核内外协同的高可用计算机系统故障处理方法及装置,方法步骤如下:1)分别检测服务故障和硬件故障,将故障通过故障报告接口输出;2)检测到故障报告后进行分析,根据分析结果对硬件故障或者服务故障进行故障处理,记录日志并向管理员发送通知,然后判断是否需要进行双机热备,如果需要双机热备则通知指定的双机热备软件进行双机热备;装置则包括方法步骤完全对应的故障统一报告子系统和故障统一处置子系统。本发明能够实现软硬件故障统一管理,对软件故障和硬件故障的检测高效及时,处理流程简单,故障处理规则扩展方便、能够保证计算机系统在软件故障或硬件故障下高可用性。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-04-29

    授权

    授权

  • 2014-09-17

    实质审查的生效 IPC(主分类):G06F11/22 申请日:20140521

    实质审查的生效

  • 2014-08-20

    公开

    公开

说明书

技术领域

本发明涉及计算机系统的高可用管理技术领域,具体涉及一种基于核内外协同的高可用计算机系统故障处理方法及装置。

背景技术

计算机系统的可用性是评价一个计算机系统稳定可靠的指标,其通常通过平均无故障时间来进行度量。平均无故障时间越长,则该计算机系统的可用性就越高。影响计算机系统可用性的因素既有软件方面也有硬件方面。软件故障通常指计算机系统的程序或软件因为某种因素破坏导致无法正常工作或影响正常使用,软件故障的影响域一般为软件自身以及依赖于此软件的其它软件或程序。硬件故障通常指计算机系统的物理硬件因为某种因素破坏导致无法正常工作或影响正常使用,硬件故障对计算机系统影响较大,严重时会导致系统宕机。

现有技术的计算机系统对于硬件故障的检测依赖于硬件驱动程序,而对于软件故障,通常采用定时轮询机制完成服务状态检测。完成故障检测后,立即按照驱动或程序默认策略进行故障处理,并记录各自的处理日志。但是,现有技术的计算机系统在高可用管理上存在以下问题:1、计算机系统独立处理与报告软件和硬件故障,缺乏软硬件故障统一管理;2、传统热备技术对软件故障监测效率低,无法及时感知硬件故障;3、计算机系统对软硬件故障处理流程复杂,用户无法定义处置规则。

发明内容

本发明要解决的技术问题是:针对现有技术存在的技术问题,提供一种能够实现软硬件故障统一管理,对软件故障和硬件故障的检测高效及时,处理流程简单,故障处理规则扩展方便、能够保证计算机系统在软件故障或硬件故障下高可用性的基于核内外协同的高可用计算机系统故障处理方法及装置。

为了解决上述技术问题,本发明提供的技术方案为:

一种基于核内外协同的高可用计算机系统故障处理方法,其实施步骤如下:

1)在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过所述故障报告接口输出,同时在操作系统内核中检测硬件故障生成故障报告并通过在操作系统内核外建立的故障报告接口输出;

2)在操作系统内核外检测故障报告接口的故障报告,在收到故障报告后对故障报告进行分析,根据分析结果在操作系统内核中对硬件故障对应的硬件进行故障处理,或者在操作系统内核外对服务故障对应的服务进行故障处理,对故障处理记录日志并向管理员发送通知,然后根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通知指定的双机热备软件进行双机热备。

优选地,所述步骤1)中在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过所述故障报告接口输出具体是指:

1.1.1)在操作系统内核外以轮询的方式对操作系统中系统服务和应用服务进行状态检测,如果任意系统服务或者应用服务出现异常状态,则判定发生服务故障;

1.1.2)在判定发生服务故障后,根据系统服务或者应用服务出现异常状态的信息生成故障报告,将所述故障报告通过所述故障报告接口输出。

优选地,所述步骤1)中在操作系统内核中检测硬件故障生成故障报告并通过所述故障报告接口输出的详细步骤如下:

1.2.1)通过预先分布在故障注入接口、故障中断处理例程和硬件驱动中的多个硬件状态监测点检测对应的硬件状态信息,如果任意硬件状态监测点检测的硬件状态发生异常,则所述硬件状态监测点根据预设的规则收集对应硬件的现场数据作为硬件故障数据;

1.2.2)将硬件故障数据进行封装生成故障报告并存入预设的故障消息队列;

1.2.3)根据故障消息队列对存入故障消息队列的故障报告进行调度分发;

1.2.4)利用线程将调度输出的故障报告通过所述故障报告接口输出。

优选地,所述步骤2)的详细步骤如下:

2.1)在操作系统内核外基于守护进程检测故障报告接口的故障报告;

2.2)在操作系统内核外在收到故障报告后对故障报告进行分析,判断故障报告的故障类型,如果故障类型为服务故障,则根据服务依赖关系描述对服务故障对应的系统服务或者应用服务进行恢复;如果故障类型为硬件故障,则判断是否需要对故障报告对应的硬件进行故障硬件隔离,如果需要进行故障硬件隔离则跳转执行步骤2.3),否则判断是否需要对故障报告对应的硬件进行故障硬件恢复,如果需要进行故障硬件恢复则跳转执行步骤2.4),否则跳转执行步骤2.5);

2.3)在需要对故障报告对应的硬件进行故障硬件隔离时,在操作系统内核中对故障报告对应的硬件进行故障硬件隔离;

2.4)在需要对故障报告对应的硬件进行故障硬件恢复时,在操作系统内核中对故障报告对应的硬件进行故障硬件恢复;

2.5)对故障处理记录日志;

2.6)向管理员发送通知;

2.7)根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通过调用指定的双机热备软件的通知插件,通知所述双机热备软件进行双机热备。

本发明还提供一种基于核内外协同的高可用计算机系统故障处理装置,包括:

故障统一报告子系统,用于在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过所述故障报告接口输出,同时在操作系统内核中检测硬件故障生成故障报告并通过在操作系统内核外建立的故障报告接口输出;

故障统一处置子系统,用于在操作系统内核外检测故障报告接口的故障报告,在收到故障报告后对故障报告进行分析,根据分析结果在操作系统内核中对硬件故障对应的硬件进行故障处理,或者在操作系统内核外对服务故障对应的服务进行故障处理,对故障处理记录日志并向管理员发送通知,然后根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通知指定的双机热备软件进行双机热备。

优选地,所述故障统一报告子系统包括用于在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过所述故障报告接口输出的服务检测模块,所述服务检测模块包括:

服务状态轮询检测子模块,用于在操作系统内核外以轮询的方式对操作系统中系统服务和应用服务进行状态检测,如果任意系统服务或者应用服务出现异常状态,则判定发生服务故障;

服务故障报告子模块,用于在判定发生服务故障后,根据系统服务或者应用服务出现异常状态的信息生成故障报告,将所述故障报告通过所述故障报告接口输出。

优选地,所述故障统一报告子系统包括用于在操作系统内核中检测硬件故障生成故障报告并通过所述故障报告接口输出的硬件检测模块,所述硬件检测模块包括:

硬件状态监测子模块,用于通过预先分布在故障注入接口、故障中断处理例程和硬件驱动中的多个硬件状态监测点检测对应的硬件状态信息,如果任意硬件状态监测点检测的硬件状态发生异常,则所述硬件状态监测点根据预设的规则收集对应硬件的现场数据作为硬件故障数据;

硬件故障数据封装子模块,用于将硬件故障数据进行封装生成故障报告并存入预设的故障消息队列;

故障消息队列调度子模块,用于根据故障消息队列对存入故障消息队列的故障报告进行调度分发;

硬件故障数据报告子模块,用于利用线程将调度输出的故障报告通过所述故障报告接口输出。

优选地,所述故障统一处置子系统包括:

故障管理守护进程模块,用于在操作系统内核外基于守护进程检测故障报告接口的故障报告;

故障处理引擎,用于在操作系统内核外在收到故障报告后对故障报告进行分析,判断故障报告的故障类型,如果故障类型为服务故障,则根据服务依赖关系描述对服务故障对应的系统服务或者应用服务进行恢复;如果故障类型为硬件故障,则判断是否需要对故障报告对应的硬件进行故障硬件隔离,如果需要进行故障硬件隔离则调用故障隔离模块,否则判断是否需要对故障报告对应的硬件进行故障硬件恢复,如果需要进行故障硬件恢复则调用故障恢复模块;

故障隔离模块,用于在需要对故障报告对应的硬件进行故障硬件隔离时,在操作系统内核中对故障报告对应的硬件进行故障硬件隔离;

故障恢复模块,用于在需要对故障报告对应的硬件进行故障硬件恢复时,在操作系统内核中对故障报告对应的硬件进行故障硬件恢复;

日志记录模块,用于对故障处理记录日志;

故障通知模块,用于向管理员发送通知;

双机热备处理模块,用于根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通过调用指定的双机热备软件的通知插件,通知所述双机热备软件进行双机热备。

本发明基于核内外协同的高可用计算机系统故障处理方法具有下述技术效果:本发明通过在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过故障报告接口输出,同时在操作系统内核中检测硬件故障生成故障报告并通过在操作系统内核外建立的故障报告接口输出,通过硬件检测和服务检测结合的方式实现软件故障(服务故障)和硬件故障的统一报告,并通过内核模块和核外守护获取统一报告结合的方式实现报告完成后续统一的处理机制以及双机热备处理,能够解决计算机系统在高可用管理上存在的故障无法协同报告,软硬件无法统一管理以及传统热备软件无法及时感知故障的问题,对软件故障和硬件故障的检测高效及时,处理流程简单,故障处理规则扩展方便、在读取故障数据进行诊断的前提下通过故障隔离和故障恢复对故障进行处置并通报多机热备软件实施机间业务切换,保证计算机系统在软件故障或硬件故障的异常条件下的高可用性。

本发明基于核内外协同的高可用计算机系统故障处理装置为本发明基于核内外协同的高可用计算机系统故障处理方法完全对应的装置,因此也具有与本发明基于核内外协同的高可用计算机系统故障处理方法相同的技术效果,故在此不再赘述。

附图说明

图1为本发明实施例方法的基本流程示意图。

图2为本发明实施例方法检测服务故障的流程示意图。

图3为本发明实施例方法检测硬件故障的流程示意图。

图4为本发明实施例方法对服务故障和硬件故障的统一处置流程示意图。

图5为本发明实施例装置的框架结构示意图。

图6为本发明实施例装置中故障统一报告子系统的框架结构示意图。

图7为本发明实施例装置中故障统一处置子系统的框架结构示意图。

具体实施方式

如图1所示,本发明基于核内外协同的高可用计算机系统故障处理方法的实施步骤如下:

1)在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过故障报告接口输出,同时在操作系统内核中检测硬件故障生成故障报告并通过在操作系统内核外建立的故障报告接口输出;

2)在操作系统内核外检测故障报告接口的故障报告,在收到故障报告后对故障报告进行分析,根据分析结果在操作系统内核中对硬件故障对应的硬件进行故障处理,或者在操作系统内核外对服务故障对应的服务进行故障处理,对故障处理记录日志并向管理员发送通知,然后根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通知指定的双机热备软件进行双机热备。

如图2所示,本实施例步骤1)中在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过故障报告接口输出具体是指:

1.1.1)在操作系统内核外以轮询的方式对操作系统中系统服务和应用服务进行状态检测,如果任意系统服务或者应用服务出现异常状态,则判定发生服务故障;

1.1.2)在判定发生服务故障后,根据系统服务或者应用服务出现异常状态的信息生成故障报告,将故障报告通过故障报告接口输出。

如图3所示,本实施例步骤1)中在操作系统内核中检测硬件故障生成故障报告并通过故障报告接口输出的详细步骤如下:

1.2.1)通过预先分布在故障注入接口、故障中断处理例程和硬件驱动中的多个硬件状态监测点检测对应的硬件状态信息,如果任意硬件状态监测点检测的硬件状态发生异常,则硬件状态监测点根据预设的规则收集对应硬件的现场数据作为硬件故障数据;

1.2.2)将硬件故障数据进行封装生成故障报告并存入预设的故障消息队列;

1.2.3)根据故障消息队列对存入故障消息队列的故障报告进行调度分发;

1.2.4)利用线程将调度输出的故障报告通过故障报告接口输出。

如图4所示,本实施例步骤2)的详细步骤如下:

2.1)在操作系统内核外基于守护进程检测故障报告接口的故障报告;

2.2)在操作系统内核外在收到故障报告后对故障报告进行分析,判断故障报告的故障类型,如果故障类型为服务故障,则根据服务依赖关系描述对服务故障对应的系统服务或者应用服务进行恢复;如果故障类型为硬件故障,则判断是否需要对故障报告对应的硬件进行故障硬件隔离,如果需要进行故障硬件隔离则跳转执行步骤2.3),否则判断是否需要对故障报告对应的硬件进行故障硬件恢复,如果需要进行故障硬件恢复则跳转执行步骤2.4),否则跳转执行步骤2.5);

2.3)在需要对故障报告对应的硬件进行故障硬件隔离时,在操作系统内核中对故障报告对应的硬件进行故障硬件隔离;

2.4)在需要对故障报告对应的硬件进行故障硬件恢复时,在操作系统内核中对故障报告对应的硬件进行故障硬件恢复;

2.5)对故障处理记录日志;

2.6)向管理员发送通知;

2.7)根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通过调用指定的双机热备软件的通知插件,通知双机热备软件进行双机热备。

如图5所示,本实施例基于核内外协同的高可用计算机系统故障处理装置包括:

故障统一报告子系统,用于在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过故障报告接口输出,同时在操作系统内核中检测硬件故障生成故障报告并通过在操作系统内核外建立的故障报告接口输出;

故障统一处置子系统,用于在操作系统内核外检测故障报告接口的故障报告,在收到故障报告后对故障报告进行分析,根据分析结果在操作系统内核中对硬件故障对应的硬件进行故障处理,或者在操作系统内核外对服务故障对应的服务进行故障处理,对故障处理记录日志并向管理员发送通知,然后根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通知指定的双机热备软件进行双机热备。

如图6所示,本实施例的故障统一报告子系统包括用于在操作系统内核外检测包含系统服务故障和应用服务故障在内的服务故障生成故障报告并通过故障报告接口输出的服务检测模块,服务检测模块包括:

服务状态轮询检测子模块,用于在操作系统内核外以轮询的方式对操作系统中系统服务和应用服务进行状态检测,如果任意系统服务或者应用服务出现异常状态,则判定发生服务故障;

服务故障报告子模块,用于在判定发生服务故障后,根据系统服务或者应用服务出现异常状态的信息生成故障报告,将故障报告通过故障报告接口输出。

如图6所示,本实施例的故障统一报告子系统包括用于在操作系统内核中检测硬件故障生成故障报告并通过故障报告接口输出的硬件检测模块,硬件检测模块包括:

硬件状态监测子模块,用于通过预先分布在故障注入接口、故障中断处理例程和硬件驱动中的多个硬件状态监测点检测对应的硬件状态信息,如果任意硬件状态监测点检测的硬件状态发生异常,则硬件状态监测点根据预设的规则收集对应硬件的现场数据作为硬件故障数据;

硬件故障数据封装子模块,用于将硬件故障数据进行封装生成故障报告并存入预设的故障消息队列;

故障消息队列调度子模块,用于根据故障消息队列对存入故障消息队列的故障报告进行调度分发;

硬件故障数据报告子模块,用于利用线程将调度输出的故障报告通过故障报告接口输出。

本实施例中,硬件状态监测子模块通过预先分布在故障注入接口、故障中断处理例程和硬件驱动中的多个硬件状态监测点检测对应的硬件状态信息,能够提升对硬件故障的预警、快速发现能力,提高硬件故障发现的及时性和效率。

如图7所示,本实施例的故障统一处置子系统包括:

故障管理守护进程模块,用于在操作系统内核外基于守护进程检测故障报告接口的故障报告;

故障处理引擎,用于在操作系统内核外在收到故障报告后对故障报告进行分析,判断故障报告的故障类型,如果故障类型为服务故障,则根据服务依赖关系描述对服务故障对应的系统服务或者应用服务进行恢复;如果故障类型为硬件故障,则判断是否需要对故障报告对应的硬件进行故障硬件隔离,如果需要进行故障硬件隔离则调用故障隔离模块,否则判断是否需要对故障报告对应的硬件进行故障硬件恢复,如果需要进行故障硬件恢复则调用故障恢复模块;

故障隔离模块,用于在需要对故障报告对应的硬件进行故障硬件隔离时,在操作系统内核中对故障报告对应的硬件进行故障硬件隔离;

故障恢复模块,用于在需要对故障报告对应的硬件进行故障硬件恢复时,在操作系统内核中对故障报告对应的硬件进行故障硬件恢复;

日志记录模块,用于对故障处理记录日志;

故障通知模块,用于向管理员发送通知;

双机热备处理模块,用于根据预设的规则判断是否需要进行双机热备,如果需要双机热备则通过调用指定的双机热备软件的通知插件,通知双机热备软件进行双机热备。

本实施例通过内核模块和核外守护进程结合的方式,设计了故障统一处置子系统,故障统一处置子系统中,故障处理引擎通过对服务依赖关系描述和针对特定服务的状态检测,实时感知内核和关键服务运行状态,维护系统服务状态的一致性,能够提升系统的稳定性。本实施例基于核内外协同的高可用计算机系统故障处理装置通过硬件检测和服务检测结合的方式,设计了故障统一报告框架作为故障统一报告子系统的具体实现,故障统一报告框架通过在处理器和内存管理代码、总线和设备驱动程序代码中插入硬件状态检查点,提升了对硬件故障的预警、快速发现能力。步骤如下:1、硬件状态检查点检测到异常;2、收集硬件状态数据并封装;3、将数据放入消息队列;4、调用故障发送线程进行发送。本实施例基于核内外协同的高可用计算机系统故障处理装置通过内核模块和核外守护进程结合的方式,设计了故障统一处置框架作为故障统一处置子系统的具体实现,故障统一处置框架通过对服务依赖关系描述和针对特定服务的状态检测,实时感知内核和关键服务运行状态,维护系统服务状态的一致性。步骤如下:1、内核或服务检测模块向故障管理守护进程报告异常;2、故障管理守护进程进行故障处理;3、通知故障隔离模块隔离故障硬件;4、通知故障恢复模块完成故障恢复;5、通过故障通知模块发送故障通知;6、通过日志记录模块记录日志;本实施例基于核内外协同的高可用计算机系统故障处理装置基于故障统一报告框架和故障统一处置框架,对传统的多机热备技术进行了改进,其特征在于通过故障统一报告框架,实时快速获取软硬件故障信息,由故障统一处置框架完成处理,并将结果通过高效的事件通信和回调机制通报多机热备软件,由后者进行机间业务切换或迁移。步骤如下:1、多机热备软件向故障管理守护进程注册迁移信号和迁移信号触发规则;2、故障处理模块处理故障,当满足触发规则,发送迁移信号;3、多机热备软件接收到迁移信号,实施机间业务迁移。本实施例基于核内外协同的高可用计算机系统故障处理装置实现和集成了硬件故障和软件故障的统一监控,保证管理员能够实时快速获取软硬件故障信息。应用故障诊断、故障隔离和故障恢复模块对故障进行处置并通报多机热备软件实施机间业务切换,保证计算机系统在软件故障或硬件故障的异常条件下的高可用性。

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号