一种服务器宕机故障定位隔离系统及方法与流程

文档序号:24160153发布日期:2021-03-05 15:39阅读:116来源:国知局
一种服务器宕机故障定位隔离系统及方法与流程

[0001]
本发明涉及服务器故障领域,尤其是涉及一种服务器宕机故障定位隔离系统及方法。


背景技术:

[0002]
随着信息技术的发展,目前服务器配置越来越丰富,能够满足各类需求。由于服务器上一般运行着关键应用软件,系统的可靠性需求非常高。
[0003]
但由于服务器配置的不断丰富,各类设备都会接入系统中,导致系统业务应用复杂程度的不断提高,系统出现不稳定的几率也随之不断上升。服务器宕机问题在机房时有发生,严重影响业务应用的运行。
[0004]
在目前设计中,发生宕机现象需要人为进行判断确认,同时对于故障设备的定位,也需要工程师根据自身经验,进行复现现象测试和反复验证来确定,耗费大量时间以及人力,不利于提高服务器宕机故障判断以及定位效率。


技术实现要素:

[0005]
本发明为了解决现有技术中存在的问题,创新提出了一种服务器宕机故障定位隔离系统及方法,有效解决由于人为判断验证造成耗费大量时间以及人力的问题,有效的提高了服务器宕机故障判断以及定位效率。
[0006]
本发明第一方面提供了一种服务器宕机故障定位隔离系统,包括:bios、bmc、fru、pch、计时模块,所述fru挂载于bmc,存储实时更新后的全部未故障的加载设备信息;所述bios通过pch与bmc进行通信连接,获取挂载在bmc下的fru存储信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比,如果fru存储的实时更新后的全部未故障的加载设备信息包括当前待加载设备,bios加载当前待加载设备;如果fru存储的实时更新后的全部未故障的加载设备信息不包括当前待加载设备,bios继续加载下一个待加载设备;所述bmc与计时模块通信连接,获取计时模块中bios当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果服务器系统宕机,bmc将移除fru中当前待加载设备信息,以实现故障设备定位隔离。
[0007]
可选地,加载设备的信息包括每个未故障的加载设备对应的加载时间预设阈值。
[0008]
进一步地,根据当前待加载设备的加载时间判断服务器系统是否宕机具体是:
[0009]
判断当前待加载设备的加载时间是否大于当前待加载设备对应的加载时间预设阈值,如果大于,则服务器系统宕机,如果小于,则服务器系统未宕机。
[0010]
可选地,所述计时模块为cpld。
[0011]
本发明第二方面提供了一种服务器宕机故障定位隔离方法,基于本发明第一方面所述的服务器宕机故障定位隔离系统的基础上实现的,包括:
[0012]
系统上电后,bios获取挂载在bmc下的fru存储的实时更新后的全部未故障的加载设备信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比,
如果fru存储的实时更新后的全部未故障的加载设备信息包括当前待加载设备,bios加载当前待加载设备;
[0013]
bmc获取计时模块中bios当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果服务器系统宕机,bmc将移除fru中当前待加载设备信息,以实现故障设备隔离;
[0014]
如果fru存储的实时更新后的全部未故障的加载设备信息不包括当前待加载设备,bios继续加载下一个待加载设备。
[0015]
可选地,还包括:直至所有待加载设备完成加载且加载过程中未出现宕机,服务器系统启动开机。
[0016]
可选地,bmc将移除fru中当前待加载设备信息,以实现故障设备隔离之后还包括:
[0017]
bmc设置提示性信息,记录当前宕机现象以及当前待加载设备。
[0018]
可选地,根据当前待加载设备的加载时间判断服务器系统是否宕机具体是:
[0019]
判断当前待加载设备的加载时间是否大于当前待加载设备对应的加载时间预设阈值,如果大于,则服务器系统宕机,如果小于,则服务器系统未宕机。
[0020]
可选地,计时模块对当前待加载设备的加载时间进行记录,当前待加载设备的加载时间记录完成后,计时模块清零,进行下一待加载设备加载时间的记录。
[0021]
进一步地,bios按照存储的hob列表进行顺序加载待加载设备,hob列表中存储待加载设备的数量合不小于fru中存储的实时更新后的全部未故障的加载设备的数量。
[0022]
本发明采用的技术方案包括以下技术效果:
[0023]
1、本发明有效解决由于人为判断验证造成耗费大量时间以及人力的问题,实现服务器宕机时待加载设备的自动定位和隔离,有效的提高了服务器宕机故障判断以及定位效率。
[0024]
2、本发明技术方案中加载设备的信息包括加载设备的加载时间预设阈值,根据当前待加载设备的加载时间是否大于待加载设备的加载时间预设阈值判断是否宕机,可以根据每个待加载设备的加载时间预设阈值,判断相应的待加载设备的加载情况,便于根据每个待加载设备的实际情况,设置不同的加载时间预设阈值,进行宕机判断,提高不同待加载设备宕机情况判断的灵活性。
[0025]
3、本发明技术方案中bmc将移除fru中当前待加载设备信息,以实现故障设备隔离之后,设置提示性信息,记录当前宕机现象以及当前待加载设备,便于实现故障设备的定位以及后期宕机情况的测试分析,避免了需要多次复现宕机现象。
[0026]
应当理解的是以上的一般描述以及后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
[0027]
为了更清楚说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见的,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0028]
图1为本发明方案中实施例一系统的结构示意图;
[0029]
图2为本发明方案中实施例二方法的流程示意图;
[0030]
图3为本发明方案中实施例三方法的流程示意图;
[0031]
图4为本发明方案中实施例四方法的流程示意图。
具体实施方式
[0032]
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
[0033]
实施例一
[0034]
如图1所示,本发明提供了一种服务器宕机故障定位隔离系统,包括:bios1、bmc2、fru3、pch4、计时模块5,fru3挂载于bmc2,存储实时更新后的全部未故障的加载设备的信息;bios1通过pch4与bmc2进行通信连接,获取挂载在bmc2下的fru3存储信息,将当前待加载设备与fru3存储的实时更新后的全部未故障的加载设备信息对比,如果fru3存储的实时更新后的全部未故障的加载设备信息包括当前待加载设备,bios1加载当前待加载设备;如果fru3存储的实时更新后的全部未故障的加载设备信息不包括当前待加载设备,bios1继续加载下一个待加载设备;bmc2与计时模块5通信连接,获取计时模块5中bios1当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果服务器系统宕机,bmc2将移除fru3中当前待加载设备信息,以实现故障设备定位隔离。
[0035]
其中,bios1(basic input output system,基本输入输出系统)与bmc2(baseboard manager controller,基板管理控制器)通过p ch4(platform controller hub,集成南桥)通信连接,具体地,bi os1与pch4通过spi(serial peripheral interface,串行外围设备接口)总线连接,pch4通过lpc(low pin count bus,一种计算机总线)总线与bmc2通信连接,bmc2通过pch4控制bios1 flash的使能信号(flash_cs)。bmc2通过i2c总线与fru3(field r eplace unit,现场可更换单元)以及计时模块5通信连接。
[0036]
加载设备的信息包括每个未故障的加载设备对应的加载时间预设阈值;根据当前待加载设备的加载时间是否大于待加载设备的加载时间预设阈值判断是否宕机,可以根据每个待加载设备的加载时间预设阈值,判断相应的待加载设备的加载情况,便于根据每个待加载设备的实际情况,设置不同的加载时间预设阈值,进行宕机判断,提高不同待加载设备宕机情况判断的灵活性。具体地,每个待加载设备的加载时间预设阈值可以通过fru3中存储的实时更新后的每个待加载设备的加载时间预设阈值获取,fru3中实时更新后的全部未故障的加载设备的信息可以是以数据列表或数据库的形式进行存储,例如每个未故障的加载设备名称——加载设备对应的加载时间预设阈值
……
[0037]
根据当前待加载设备的加载时间判断服务器系统是否宕机具体是:判断当前待加载设备的加载时间是否大于当前待加载设备的加载时间预设阈值,如果大于,则服务器系统宕机,如果小于,则服务器系统未宕机。
[0038]
具体地,计时模块5可以为cpld(complex programming logic device,复杂可编程逻辑器件),用于实现待加载设备的加载时间的记录,当前待加载设备的加载时间记录完
成后,计时模块5清零,进行下一待加载设备加载时间的记录。
[0039]
进一步地,如果服务器系统宕机,bmc2将移除fru3中当前待加载设备信息,以实现故障设备定位隔离,而且bmc2设置提示性信息,记录当前宕机现象以及当前待加载设备。具体记录形式可以是日志的形式,本发明在此不做限制。
[0040]
bios1按照存储的hob列表(bios加载待加载设备顺序的列表)进行顺序加载待加载设备,hob列表中存储待加载设备的数量合不小于fru3中存储的实时更新后的全部未故障的加载设备的数量。fru3中存储的实时更新后的加载设备的数量为fru3中实时更新后的全部未故障的加载设备的数量。
[0041]
本发明有效解决由于人为判断验证造成耗费大量时间以及人力的问题,实现服务器宕机时待加载设备的自动定位和隔离,有效的提高了服务器宕机故障判断以及定位效率。
[0042]
本发明技术方案中加载设备的信息包括加载设备的加载时间预设阈值,根据当前待加载设备的加载时间是否大于待加载设备的加载时间预设阈值判断是否宕机,可以根据每个待加载设备的加载时间预设阈值,判断相应的待加载设备的加载情况,便于根据每个待加载设备的实际情况,设置不同的加载时间预设阈值,进行宕机判断,提高不同待加载设备宕机情况判断的灵活性。
[0043]
实施例二
[0044]
如图2所示,本发明技术方案还提供了一种服务器宕机故障定位隔离方法,基于本发明实施例一的基础上实现的,包括:
[0045]
s1,系统上电后,bios获取挂载在bmc下的fru存储的实时更新后的全部未故障的加载设备信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比;
[0046]
s2,判断fru存储的实时更新后的全部未故障的加载设备信息是否包括当前待加载设备,如果判断结果为是,则执行步骤s3;如果判断结果为否,则执行步骤s5;
[0047]
s3,bios加载当前待加载设备;
[0048]
s4,bmc获取计时模块中bios当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果判断结果为是,则执行步骤s6;如果判断结果为否,则执行步骤s5;
[0049]
s5,bios继续加载下一个待加载设备;
[0050]
s6,bmc将移除fru中当前待加载设备信息,以实现故障设备隔离。
[0051]
在步骤s1中,系统上电后,bios通过pch与bmc通信,获取挂载在bmc下的fru存储的实时更新后的全部未故障的加载设备信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比;加载设备信息包括每个未故障的加载设备对应的加载时间预设阈值。
[0052]
在步骤s4中,根据当前待加载设备的加载时间判断服务器系统是否宕机具体是:判断当前待加载设备的加载时间是否大于当前待加载设备对应的加载时间预设阈值,如果大于,则服务器系统宕机,如果小于,则服务器系统未宕机。待加载设备对应的加载时间预设阈值可以根据每个加载设备的类型等实际情况灵活调整确定,便于根据每个待加载设备的实际情况,设置不同的加载时间预设阈值,进行宕机判断,提高不同待加载设备宕机情况
判断的灵活性。具体地,每个待加载设备的加载时间预设阈值可以通过fru3中存储的实时更新后的每个待加载设备的加载时间预设阈值获取,fru3中实时更新后的全部未故障的加载设备的信息可以是以数据列表或数据库的形式进行存储,例如每个未故障的加载设备名称——加载设备对应的加载时间预设阈值
……
[0053]
计时模块对当前待加载设备的加载时间进行记录,当前待加载设备的加载时间记录完成后,计时模块清零,进行下一待加载设备加载时间的记录。
[0054]
具体地,计时模块可以为cpld,也可以是其他类型的计时模块,在实际应用中可以灵活调整,本发明在此不做限制。
[0055]
bios按照存储的hob列表(bios加载待加载设备顺序的列表)进行顺序加载待加载设备,hob列表中存储待加载设备的数量合不小于fru中存储的实时更新后的全部未故障的加载设备的数量。fru中存储的实时更新后的加载设备的数量为fru中实时更新后的全部未故障的加载设备的数量。
[0056]
本发明有效解决由于人为判断验证造成耗费大量时间以及人力的问题,实现服务器宕机时待加载设备的自动定位和隔离,有效的提高了服务器宕机故障判断以及定位效率。
[0057]
本发明技术方案中加载设备的信息包括加载设备的加载时间预设阈值,根据当前待加载设备的加载时间是否大于待加载设备的加载时间预设阈值判断是否宕机,可以根据每个待加载设备的加载时间预设阈值,判断相应的待加载设备的加载情况,便于根据每个待加载设备的实际情况,设置不同的加载时间预设阈值,进行宕机判断,提高不同待加载设备宕机情况判断的灵活性。
[0058]
实施例三
[0059]
如图3所示,本发明技术方案还提供了一种服务器宕机故障定位隔离方法,基于本发明实施例一的基础上实现的,包括:
[0060]
s1,系统上电后,bios获取挂载在bmc下的fru存储的实时更新后的全部未故障的加载设备信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比;
[0061]
s2,判断fru存储的实时更新后的全部未故障的加载设备信息是否包括当前待加载设备,如果判断结果为是,则执行步骤s3;如果判断结果为否,则执行步骤s5;
[0062]
s3,bios加载当前待加载设备;
[0063]
s4,bmc获取计时模块中bios当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果判断结果为是,则执行步骤s6;如果判断结果为否,则执行步骤s5;
[0064]
s5,bios继续加载下一个待加载设备;
[0065]
s6,bmc将移除fru中当前待加载设备信息,以实现故障设备隔离;
[0066]
s7,直至所有待加载设备完成加载且加载过程中未出现宕机,服务器系统启动开机。
[0067]
在步骤s7中,bios完成所有待加载设备后,服务器系统未发生宕机,则服务器系统正常启动开机。
[0068]
实施例四
[0069]
如图4所示,本发明技术方案还提供了一种服务器宕机故障定位隔离方法,基于本发明实施例一的基础上实现的,包括:
[0070]
s1,系统上电后,bios获取挂载在bmc下的fru存储的实时更新后的全部未故障的加载设备信息,将当前待加载设备与fru存储的实时更新后的全部未故障的加载设备信息对比;
[0071]
s2,判断fru存储的实时更新后的全部未故障的加载设备信息是否包括当前待加载设备,如果判断结果为是,则执行步骤s3;如果判断结果为否,则执行步骤s5;
[0072]
s3,bios加载当前待加载设备;
[0073]
s4,bmc获取计时模块中bios当前待加载设备的加载时间,根据当前待加载设备的加载时间判断服务器系统是否宕机;如果判断结果为是,则执行步骤s6;如果判断结果为否,则执行步骤s5;
[0074]
s5,bios继续加载下一个待加载设备;
[0075]
s6,bmc将移除fru中当前待加载设备信息,以实现故障设备隔离;
[0076]
s7,bmc设置提示性信息,记录当前宕机现象以及当前待加载设备;
[0077]
s8,直至所有待加载设备完成加载且加载过程中未出现宕机,服务器系统启动开机。
[0078]
本发明技术方案中bmc将移除fru中当前待加载设备信息,以实现故障设备隔离之后,设置提示性信息,记录当前宕机现象以及当前待加载设备,便于实现故障设备的定位以及后期宕机情况的测试分析,避免了需要多次复现宕机现象。
[0079]
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1