本发明涉及计算机应用技术领域,特别是涉及一种基板管理控制器故障监控方法、装置、设备及计算机可读存储介质。
背景技术:
互联网的快速发展,带来了服务器市场的繁荣。大量的数据存储、计算都需要服务器来完成,大规模的网站需要数量巨大的服务器。服务器在使用过程中必不可少的需要基板管理控制器bmc进行监控管理,保持基板管理控制器的保活机制就显得尤为重要,需要基板管理控制器发生失效或故障,应重启基板管理控制器,以恢复其功能性。
现有的基板管理控制器故障监控方式为通过基板管理控制器内部的看门狗watchdog对基板管理控制器的运行状态进行监测,当监测到基板管理控制器发生故障时,通过手动方式重启基板管理控制器,但是当基板管理控制器内部的看门狗出问题后,往往无法自己发现问题,尤其是在出现一些内核错误kernelpanic后,往往看门狗也无法正常工作,因此不能对基板管理控制器进行监控的可靠性低,导致基板管理控制器故障恢复不及时,并且手动重启基板管理控制器的操作复杂。
综上所述,如何有效地解决基板管理控制器故障恢复不及时,并且手动重启基板管理控制器的操作复杂等问题,是目前本领域技术人员急需解决的问题。
技术实现要素:
本发明的目的是提供一种基板管理控制器故障监控方法,该方法保证了基板管理控制器故障及时恢复,简化了基板管理控制器的重启操作流程;本发明的另一目的是提供一种基板管理控制器故障监控装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种基板管理控制器故障监控方法,应用于可编程化系统单芯片,包括:
获取基板管理控制器的运行状态信息;
根据所述运行状态信息判断所述基板管理控制器是否发生故障;
若是,则控制所述基板管理控制器进行重启操作。
在本发明的一种具体实施方式中,获取基板管理控制器的运行状态信息,包括:
接收所述基板管理控制器发送的心跳信号;
根据所述运行状态信息判断所述基板管理控制器是否发生故障,包括:
判断距离前一次接收到所述心跳信号的时长是否超出预设时长且当前未接收到所述心跳信号。
在本发明的一种具体实施方式中,还包括:
当接收到所述基板管理控制器发送的心跳信号时,进行计时重置操作;
判断距离前一次接收到所述心跳信号的时长是否超出预设时长且当前未接收到所述心跳信号,包括:
判断计时时长是否超出所述预设时长且当前未接收到所述心跳信号。
在本发明的一种具体实施方式中,控制所述基板管理控制器进行重启操作,包括:
通过控制所述基板管理控制器gpio使能状态,以控制所述基板管理控制器进行重启操作。
在本发明的一种具体实施方式中,获取基板管理控制器的运行状态信息,包括:
通过i2c通信协议获取所述基板管理控制器的运行状态信息;
通过控制所述基板管理控制器gpio使能状态控制所述基板管理控制器进行重启操作,包括:
通过所述i2c通信协议控制所述基板管理控制器gpio使能状态,以控制所述基板管理控制器进行重启操作。
一种基板管理控制器故障监控装置,应用于可编程化系统单芯片,包括:
信息获取模块,用于获取基板管理控制器的运行状态信息;
判断模块,用于根据所述运行状态信息判断所述基板管理控制器是否发生故障;
重启模块,用于当根据所述运行状态信息确定所述基板管理控制器发生故障时,控制所述基板管理控制器进行重启操作。
在本发明的一种具体实施方式中,所述信息获取模块具体为接收所述基板管理控制器发送的心跳信号的模块;
所述判断模块具体为判断距离前一次接收到所述心跳信号的时长是否超出预设时长且当前未接收到所述心跳信号的模块。
在本发明的一种具体实施方式中,还包括:
计时重置模块,用于当接收到所述基板管理控制器发送的心跳信号时,进行计时重置操作;
所述判断模块具体为判断计时时长是否超出所述预设时长且当前未接收到所述心跳信号的模块。
一种基板管理控制器故障监控设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前所述基板管理控制器故障监控方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述基板管理控制器故障监控方法的步骤。
应用本发明实施例所提供的方法,应用于可编程化系统单芯片,包括:获取基板管理控制器的运行状态信息;根据运行状态信息判断基板管理控制器是否发生故障;若是,则控制基板管理控制器进行重启操作。通过预先部署与基板管理控制器相连的可编程化系统单芯片,利用可编程化系统单芯片对基板管理控制器进行监测,并在监测到基板管理控制器发生故障时控制基板管理控制器进行重启操作。提高了对基板管理控制器进行监控的可靠性,保证了基板管理控制器故障及时恢复,简化了基板管理控制器的重启操作流程。
相应的,本发明实施例还提供了与上述基板管理控制器故障监控方法相对应的基板管理控制器故障监控装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基板管理控制器故障监控方法的一种实施流程图;
图2为本发明实施例中基板管理控制器故障监控系统的结构框图;
图3为本发明实施例中基板管理控制器故障监控方法的另一种实施流程图;
图4为本发明实施例中一种基板管理控制器故障监控装置的结构框图;
图5为本发明实施例中一种基板管理控制器故障监控设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
参见图1,图1为本发明实施例中基板管理控制器故障监控方法的一种实施流程图,应用于可编程化系统单芯片,该方法可以包括以下步骤:
s101:获取基板管理控制器的运行状态信息。
如图2所示,预先设置独立与基板管理控制器之外的可编程化系统单芯片psoc,可以通过i2c总线建立基板管理控制器与可编程化系统单芯片之间的通信连接。在基板管理控制器运行过程中,实时或每隔一定时间间隔地获取基板管理控制器的运行状态信息。运行状态信息可以为基板管理控制器的运行电压信号、心跳信号等。
s102:根据运行状态信息判断基板管理控制器是否发生故障,若是,则执行步骤s103,若否,则不做处理。
在获取到基板管理控制器的运行状态信息之后,根据运行状态信息判断基板管理控制器是否发生故障,若是,则说明基板管理控制器出现异常,继续执行步骤s103,若否,则说明基板管理控制器处于正常运行状态,不做处理。如当监测的是基板管理控制器的心跳信号时,根据是否接收到心跳信号判断基板管理控制器是否发生故障;当监测的是基板管理控制器的运行电压信号时,根据监测到的基板管理控制器的运行电压信号是否正常判断基板管理控制器是否发生故障。
s103:控制基板管理控制器进行重启操作。
当确定基板管理控制器发生故障时,利用可编程化系统单芯片控制基板管理控制器进行重启操作。由于可编程化系统单芯片独立设置于基板管理控制器之外,基板管理控制器的故障不会影响可编程化系统单芯片的正常工作,提高了对基板管理控制器进行监控的可靠性,保证了基板管理控制器故障及时恢复,简化了基板管理控制器的重启操作流程。
应用本发明实施例所提供的方法,用于可编程化系统单芯片,包括:获取基板管理控制器的运行状态信息;根据运行状态信息判断基板管理控制器是否发生故障;若是,则控制基板管理控制器进行重启操作。通过预先部署与基板管理控制器相连的可编程化系统单芯片,利用可编程化系统单芯片对基板管理控制器进行监测,并在监测到基板管理控制器发生故障时控制基板管理控制器进行重启操作。提高了对基板管理控制器进行监控的可靠性,保证了基板管理控制器故障及时恢复,简化了基板管理控制器的重启操作流程。
需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
实施例二:
参见图3,图3为本发明实施例中基板管理控制器故障监控方法的另一种实施流程图,应用于可编程化系统单芯片,该方法可以包括以下步骤:
s301:当接收到基板管理控制器发送的心跳信号时,进行计时重置操作。
设置可编程化系统单芯片每接收到一次基板管理控制器发送的心跳信号进行计时重置操作。通过进行计时重置,避免了前期计时结果对当前监测的影响,提高了对基板管理控制器进行监控的准确性。
s302:通过i2c通信协议接收基板管理控制器发送的心跳信号。
在基板管理控制器运行过程中,实时或每隔一定时间间隔地通过i2c通信协议接收基板管理控制器发送的心跳信号。
s303:判断计时时长是否超出预设时长且当前未接收到心跳信号,如是则执行步骤s304,若否,则不做处理。
预先设置相邻两次接收到基板管理控制器的心跳信号的时间间隔,在结束前一次对基板管理控制器的心跳信号之后,开始计时,判断计时时长是否超出预设时长且当前未接收到心跳信号,若是,则说明基板管理控制器出现异常,继续执行步骤s304,若否,则说明基板管理控制器处于正常运行状态,不做处理。
s304:通过i2c通信协议控制基板管理控制器gpio使能状态,以控制基板管理控制器进行重启操作。
当确定计时时长超出预设时长且当前未接收到心跳信号时,通过i2c通信协议控制基板管理控制器gpio使能状态,从而控制基板管理控制器进行重启操作。具体的通过reset基板管理控制器gpio的高低电平,进而控制基板管理控制器进行重启操作。
相应于上面的方法实施例,本发明实施例还提供了一种基板管理控制器故障监控装置,下文描述的基板管理控制器故障监控装置与上文描述的基板管理控制器故障监控方法可相互对应参照。
参见图4,图4为本发明实施例中一种基板管理控制器故障监控装置的结构框图,该装置可以包括:
信息获取模块41,用于获取基板管理控制器的运行状态信息;
判断模块42,用于根据运行状态信息判断基板管理控制器是否发生故障;
重启模块43,用于当根据运行状态信息确定基板管理控制器发生故障时,控制基板管理控制器进行重启操作。
应用本发明实施例所提供的装置,应用于可编程化系统单芯片,包括:获取基板管理控制器的运行状态信息;根据运行状态信息判断基板管理控制器是否发生故障;若是,则控制基板管理控制器进行重启操作。通过预先部署与基板管理控制器相连的可编程化系统单芯片,利用可编程化系统单芯片对基板管理控制器进行监测,并在监测到基板管理控制器发生故障时控制基板管理控制器进行重启操作。提高了对基板管理控制器进行监控的可靠性,保证了基板管理控制器故障及时恢复,简化了基板管理控制器的重启操作流程。
在本发明的一种具体实施方式中,信息获取模块41具体为接收基板管理控制器发送的心跳信号的模块;
判断模块42具体为判断距离前一次接收到心跳信号的时长是否超出预设时长且当前未接收到心跳信号的模块。
在本发明的一种具体实施方式中,该装置还可以包括:
计时重置模块,用于当接收到基板管理控制器发送的心跳信号时,进行计时重置操作;
判断模块42具体为判断计时时长是否超出预设时长且当前未接收到心跳信号的模块。
在本发明的一种具体实施方式中,重启模块43具体为通过控制基板管理控制器gpio使能状态,以控制基板管理控制器进行重启操作的模块。
在本发明的一种具体实施方式中,信息获取模块41具体为通过i2c通信协议获取基板管理控制器的运行状态信息的模块;
重启模块43具体为通过i2c通信协议控制基板管理控制器gpio使能状态,以控制基板管理控制器进行重启操作的模块。
相应于上面的方法实施例,参见图5,图5为本发明所提供的基板管理控制器故障监控设备的示意图,该设备可以包括:
存储器51,用于存储计算机程序;
处理器52,用于执行上述存储器51存储的计算机程序时可实现如下步骤:
获取基板管理控制器的运行状态信息;根据运行状态信息判断基板管理控制器是否发生故障;若是,则控制基板管理控制器进行重启操作。
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
获取基板管理控制器的运行状态信息;根据运行状态信息判断基板管理控制器是否发生故障;若是,则控制基板管理控制器进行重启操作。
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。