一种服务器掉电诊断方法、装置和系统与流程

文档序号:18008311发布日期:2019-06-25 23:40阅读:465来源:国知局
一种服务器掉电诊断方法、装置和系统与流程

本发明涉及服务器技术领域,特别是涉及一种服务器掉电诊断方法、装置和系统。



背景技术:

随着云计算技术和互联网行业的高速发展,服务器在大型数据中心、云计算基地等场合应用越来越广泛。在一个数据中心往往部署几万甚至几十万台服务器,因此服务器的管理易用性成为服务器使用管理者最为关注的问题。

近几年,基于ibmopenpower处理器的服务器在市场上的应用越来越广泛,使用者对其可诊断性和易用性也提出了越来越高的要求。当按下开机按钮或基板管理控制器(baseboardmanagementcontroller,bmc)接收到远程发送来的开机ipmi命令后,openpower服务器上电,开始开机启动过程。

如果由于主板问题导致服务器不能正常上电,此时由于并列式闪存(parallelnorflash,pnor)还未启动,还没有开始正常的开机过程,使用者往往无法知道是哪里出现问题导致没有正常开机,需要专业人员量测主板相关信号分析才能确认问题原因。除了上电开机启动过程,如果服务器正常工作时由于主板原因导致服务器异常掉电,使用者也无法判断问题所在,也需要由专业人员测量主板信号进行分析,这给使用者造成了很大的不便。

可见,如何快速正确诊断服务器异常掉电原因,是本领域技术人员亟待解决的问题。



技术实现要素:

本发明实施例的目的是提供一种服务器掉电诊断方法、装置和系统,可以快速正确诊断服务器异常掉电原因。

为解决上述技术问题,本发明实施例提供一种服务器掉电诊断方法,适用于cpld,所述方法包括:

服务器上电启动后,检测所述服务器上各主板的电源状态信号;

当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平,以便于所述bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板。

可选的,所述服务器上电启动后,检测所述服务器上各主板的电源状态信号包括:

服务器上电启动后,按照预先设定的检测顺序,循环检测所述服务器上各主板的电源状态信号。

可选的,所述当出现异常的电源状态信号时,则存储各主板的当前电源状态信号包括:

当出现异常的电源状态信号时,判断预先设定的缓存区域是否有初始数据;

若否,则将各主板的当前电源状态信号存储至所述缓存区域;

若是,则将所述初始数据删除,并在删除所述初始数据之后将各主板的当前电源状态信号存储至所述缓存区域。

本发明实施例还提供了一种服务器掉电诊断装置,适用于cpld,所述装置包括检测单元、存储单元和调整单元;

所述检测单元,用于服务器上电启动后,检测所述服务器上各主板的电源状态信号;

所述存储单元,用于当出现异常的电源状态信号时,则存储各主板的当前电源状态信号;

所述调整单元,用于将连接bmc的异常掉电引脚电平调整为有效电平,以便于所述bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板。

可选的,所述检测单元具体用于服务器上电启动后,按照预先设定的检测顺序,循环检测所述服务器上各主板的电源状态信号。

可选的,所述存储单元包括判断子单元、缓存子单元和删除子单元;

所述判断子单元,用于当出现异常的电源状态信号时,判断预先设定的缓存区域是否有初始数据;若否,则触发所述缓存子单元;若是,则触发所述删除子单元;

所述缓存子单元,用于将各主板的当前电源状态信号存储至所述缓存区域;

所述删除子单元,用于将所述初始数据删除,并在删除所述初始数据之后将各主板的当前电源状态信号存储至所述缓存区域。

本发明实施例还提供了一种服务器掉电诊断方法,适用于bmc,所述方法包括:

判断异常掉电引脚电平是否为有效电平;

若是,则从cpld中读取各主板的当前电源状态信号;

判断各主板的当前电源状态信号是否存在异常;

当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

可选的,所述判断异常掉电引脚电平是否为有效电平包括:

按照预先设定的时间间隔,周期性检测异常掉电引脚电平是否为有效电平。

可选的,在所述当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志之后还包括:

控制系统故障指示灯点亮。

可选的,还包括:

在异常掉电引脚电平为有效电平时,若无法从cpld中读取各主板的当前电源状态信号,则进行报警提示。

本发明实施例还提供了一种服务器掉电诊断装置,适用于bmc,所述装置包括第一判断单元、读取单元、第二判断单元和记录单元;

所述第一判断单元,用于判断异常掉电引脚电平是否为有效电平;若是,则触发所述读取单元;

所述读取单元,用于从cpld中读取各主板的当前电源状态信号;

所述第二判断单元,用于判断各主板的当前电源状态信号是否存在异常;

所述记录单元,用于当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

可选的,所述第一判断单元具体用于按照预先设定的时间间隔,周期性检测异常掉电引脚电平是否为有效电平。

可选的,还包括点亮单元;

所述点亮单元,用于在所述当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志之后,控制系统故障指示灯点亮。

可选的,还包括提示单元;

所述提示单元,用于在异常掉电引脚电平为有效电平时,若无法从cpld中读取各主板的当前电源状态信号,则进行报警提示。

本发明实施例还提供了一种服务器掉电诊断系统,包括cpld和bmc;

所述cpld,用于服务器上电启动后,检测所述服务器上各主板的电源状态信号;当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平,以便于所述bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板;

所述bmc,用于判断异常掉电引脚电平是否为有效电平;若是,则从cpld中读取各主板的当前电源状态信号;判断各主板的当前电源状态信号是否存在异常;当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

由上述技术方案可以看出,cpld在服务器上电启动后,检测服务器上各主板的电源状态信号;当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平。bmc判断异常掉电引脚电平是否为有效电平;当异常掉电引脚电平为有效电平时,则说明服务器出现了异常掉电,此时bmc可以从cpld中读取各主板的当前电源状态信号;当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。通过bmc和cpld配合来实现服务器异常掉电后的自动检测和诊断,解决了现有技术中服务器异常掉电需要人工检测和诊断的问题,给使用者带来了很大的方便,提升了服务器的可诊断性和易用性。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种适用于cpld服务器掉电诊断方法方法的流程图;

图2为本发明实施例提供的一种适用于bmc服务器掉电诊断方法方法的流程图;

图3为本发明实施例提供的一种适用于cpld服务器掉电诊断装置的结构示意图;

图4为本发明实施例提供的一种适用于bmc服务器掉电诊断装置的结构示意图;

图5为本发明实施例提供的一种服务器掉电诊断系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

接下来,详细介绍本发明实施例所提供的一种服务器掉电诊断方法。图1为本发明实施例提供的一种服务器掉电诊断方法的流程图,适用于cpld,方法包括:

s101:服务器上电启动后,检测服务器上各主板的电源状态信号。

服务器上包含有多个主板,例如,cpu、内存以及各种类型的芯片等。

每个主板有其对应的电源状态信号即powergood信号。一般情况下,当主板运行正常时,电源状态信号为低电平信号;当主板运行异常时,电源状态信号变为高电平信号。

服务器上电启动时可以触发cpld检测各主板的电源状态信号。在具体实现中,cpld可以在服务器上电启动后,按照预先设定的检测顺序,循环检测服务器上各主板的电源状态信号。

s102:当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平,以便于bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板。

在本发明实施例中,可以将服务器掉电的分析结果记录到日志信息中,以便于工作人员通过查询日志信息快速确定出故障主板。由于cpld无法直接记录日志信息,bmc具有数据分析和记录日志的功能。因此,在本发明实施例中,需要与bmc相互协作实现服务器的掉电诊断。

在具体实现中,cpld可以将连接bmc的异常掉电引脚电平调整为有效电平,当bmc检测到该异常掉电引脚电平为有效电平时,则可以依据各主板的当前电源状态信号确定出服务器供电异常的主板。

以低电平为有效电平为例,正常情况下,异常掉电引脚电平处于高电平状态;当出现异常的电源状态信号时,cpld可以将异常掉电引脚电平调整为低电平。

为了便于记录和查询各主板的电源状态信号,可以预先设定用于存储电源状态信号的缓存区域。

服务器每次上电启动后,如果存在异常的电源状态信号,则会向该缓存区域存储各主板的电源状态信号,为了保证缓存区域中存储的是最新采集的电源状态信号,可以在当出现异常的电源状态信号时,先判断预先设定的缓存区域是否有初始数据。

当该缓存区域没有初始数据时,则可以直接将各主板的当前电源状态信号存储至缓存区域。当该缓存区域有初始数据时,则说明该缓存区域中保留有上一次存储的电源状态信息,此时可以将初始数据删除,并在删除初始数据之后将各主板的当前电源状态信号存储至缓存区域。

在本发明实施例中,需要依赖bmc记录主板供电异常的分析结果。接下来,将对bmc的工作过程展开介绍,图2为本发明实施例提供的一种服务器掉电诊断方法的流程图,适用于bmc,方法包括:

s201:判断异常掉电引脚电平是否为有效电平。

在具体实现中,bmc可以实时检测异常掉电引脚电平,也可以按照预先设定的时间间隔,周期性检测异常掉电引脚电平是否为有效电平。当异常掉电引脚电平为有效电平时,则说明此时服务器出现了异常掉电,为了进一步确定出异常掉电的原因,可以执行s202。

其中,时间间隔的取值可以依据实际需求进行设置,在此不做限定。

s202:从cpld中读取各主板的当前电源状态信号。

服务器上的cpld与bmc具有连接关系,两者可以通过i2c总线连接。

bmc可以通过i2c总线,从cpld预先设定的缓存区域中读取各主板的当前电源状态信号。

s203:判断各主板的当前电源状态信号是否存在异常。

以低电平信号表示主板运行正常为例,当各主板的当前电源状态信号存在高电平时,则说明存在异常信号,此时可以执行s204。

s204:当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

在本发明实施例中,为了便于和其它主板进行区分,可以将出现异常的当前电源状态信号所对应的主板称作目标主板,此时bmc可以将目标主板供电异常的分析结果记录到日志。

由上述技术方案可以看出,cpld在服务器上电启动后,检测服务器上各主板的电源状态信号;当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平。bmc判断异常掉电引脚电平是否为有效电平;当异常掉电引脚电平为有效电平时,则说明服务器出现了异常掉电,此时bmc可以从cpld中读取各主板的当前电源状态信号;当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。通过bmc和cpld配合来实现服务器异常掉电后的自动检测和诊断,解决了现有技术中服务器异常掉电需要人工检测和诊断的问题,给使用者带来了很大的方便,提升了服务器的可诊断性和易用性。

为了及时提醒工作人员主板出现异常,可以设置提示机制。具体的,bmc在检测到存在当前电源状态信号异常的目标主板,将目标主板供电异常的分析结果记录到日志之后,可以控制系统故障指示灯点亮。

故障指示灯的个数可以依据实际需求进行设定,可以只设置一个故障指示灯,只要bmc检测到存在当前电源状态信号异常的目标主板时,便可以控制系统故障指示灯点亮;也可以针对每个主板设置对应的一个故障指示灯,bmc可以点亮目标主板所对应的故障指示灯。

通过点亮故障指示灯可以起到警示的作用,以便于工作人员及时发现主板异常的情况,从而及时维护或更换主板。

考虑到cpld和bmc之间通过i2c总线连接,当i2c总线损坏时,即使cpld将异常掉电引脚电平调整为有效电平,此时bmc也将无法获取到各主板的当前电源状态信号,针对于该种情况,可以进行报警提示,以便于提醒工作人员对i2c总线进行检修,从而保障服务器掉电诊断工作的正常运行。

图3为本发明实施例提供的一种服务器掉电诊断装置的结构示意图,适用于cpld,装置包括检测单元31、存储单元32和调整单元33;

检测单元31,用于服务器上电启动后,检测服务器上各主板的电源状态信号;

存储单元32,用于当出现异常的电源状态信号时,则存储各主板的当前电源状态信号;

调整单元33,用于将连接bmc的异常掉电引脚电平调整为有效电平,以便于bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板。

可选的,检测单元具体用于服务器上电启动后,按照预先设定的检测顺序,循环检测服务器上各主板的电源状态信号。

可选的,存储单元包括判断子单元、缓存子单元和删除子单元;

判断子单元,用于当出现异常的电源状态信号时,判断预先设定的缓存区域是否有初始数据;若否,则触发缓存子单元;若是,则触发删除子单元;

缓存子单元,用于将各主板的当前电源状态信号存储至缓存区域;

删除子单元,用于将初始数据删除,并在删除初始数据之后将各主板的当前电源状态信号存储至缓存区域。

图3所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,cpld在服务器上电启动后,检测单元检测服务器上各主板的电源状态信号;当出现异常的电源状态信号时,则触发存储单元存储各主板的当前电源状态信号,与此同时调整单元将连接bmc的异常掉电引脚电平调整为有效电平,以便于bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板。通过bmc和cpld配合来实现服务器异常掉电后的自动检测和诊断,解决了现有技术中服务器异常掉电需要人工检测和诊断的问题,给使用者带来了很大的方便,提升了服务器的可诊断性和易用性。

图4为本发明实施例提供的一种服务器掉电诊断装置的结构示意图,适用于bmc,装置包括第一判断单元41、读取单元42、第二判断单元43和记录单元44;

第一判断单元41,用于判断异常掉电引脚电平是否为有效电平;若是,则触发读取单元;

读取单元42,用于从cpld中读取各主板的当前电源状态信号;

第二判断单元43,用于判断各主板的当前电源状态信号是否存在异常;

记录单元44,用于当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

可选的,第一判断单元具体用于按照预先设定的时间间隔,周期性检测异常掉电引脚电平是否为有效电平。

可选的还包括点亮单元;

点亮单元,用于在当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志之后,控制系统故障指示灯点亮。

可选的,还包括提示单元;

提示单元,用于在异常掉电引脚电平为有效电平时,若无法从cpld中读取各主板的当前电源状态信号,则进行报警提示。

图4所对应实施例中特征的说明可以参见图2所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,bmc判断异常掉电引脚电平是否为有效电平;当异常掉电引脚电平为有效电平时,则说明服务器出现了异常掉电,此时bmc可以从cpld中读取各主板的当前电源状态信号;当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。通过bmc和cpld配合来实现服务器异常掉电后的自动检测和诊断,解决了现有技术中服务器异常掉电需要人工检测和诊断的问题,给使用者带来了很大的方便,提升了服务器的可诊断性和易用性。

图5为本发明实施例提供的一种服务器掉电诊断系统50的结构示意图,包括cpld51和bmc52;

cpld51,用于服务器上电启动后,检测服务器上各主板的电源状态信号;当出现异常的电源状态信号时,则存储各主板的当前电源状态信号,并将连接bmc的异常掉电引脚电平调整为有效电平,以便于bmc依据各主板的当前电源状态信号确定出服务器供电异常的主板;

bmc52,用于判断异常掉电引脚电平是否为有效电平;若是,则从cpld中读取各主板的当前电源状态信号;判断各主板的当前电源状态信号是否存在异常;当存在当前电源状态信号异常的目标主板时,则将目标主板供电异常的分析结果记录到日志。

以上对本发明实施例所提供的一种服务器掉电诊断方法、装置和系统进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1