一种服务器定位宕机阶段的方法、系统、终端及存储介质与流程

    专利2022-07-08  124


    本发明属于服务器测试技术领域,具体涉及一种服务器定位宕机阶段的方法、系统、终端及存储介质。



    背景技术:

    在服务器研发过程中,宕机问题是一类严重程度很高、需要大量关注的问题。每个宕机问题都会给服务器的性能、可靠性带来极大的风险。因此,如何高效、准确的解决此类问题一直是研发的难题。

    对于宕机问题的处理,需要结合多种相关日志来实现对异常点的定位,当前面对宕机问题时,一般需要搜集日志有bmc下记录的onekeylog,利用xdp抓取crashdump日志及串口打印日志,其中串口日志是定位当前服务器机台宕机问题原因、异常点最为有效的手段。

    当前,对于研发、测试中遇到的宕机问题,需要保持宕机原机台环境下抓取bmc日志及crashdunp日志。对于串口日志则需要在原机台上开启串口的详细输出模式,并进行长周期的复现操作来获取宕机时刻的串口信息。

    在研发、测试过程中遭遇的宕机问题往往以小概率宕机问题为主,对于此类概率较小的宕机问题,进行调试分析需要投入大量精力、人力。一方面需要在原机台原配置环境下进行复现操作,同步搜集最有效的串口信息;另一方面,搜集串口信息需要服务器开启调试模式,导致进行对应复现测试时,测试周期会大大延长,短时间内难以有效解决宕机故障,影响整个服务器研发、测试进程。



    技术实现要素:

    针对现有技术的上述不足,本发明提供一种服务器定位宕机阶段的方法、系统、终端及存储介质,以解决上述技术问题。

    第一方面,本发明提供一种服务器定位宕机阶段的方法,包括:

    在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    当服务器宕机后立即获取当前bmc日志;

    对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    进一步的,所述方法还包括:

    若没有在服务器宕机之前烧录bios,则在服务器宕机后通过在与宕机服务器同配置的正常服务器上烧录bios,正常开机后获取用于对比的串口日志及bmc日志。

    进一步的,所述方法还包括:

    在上电自检过程中在串口日志与bmc日志中同一操作阶段上输出相同的标志位。

    进一步的,所述操作阶段包括cpu的自检、内存自检或加载、驱动加载以及设备初始化。

    进一步的,所述方法还包括:

    在上电自检过程中,bmc记录所述上电自检编码的变化并生成日志。

    第二方面,本发明提供一种服务器定位宕机阶段的系统,包括:

    对比设置单元,配置用于在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    日志获取单元,配置用于当服务器宕机后立即获取当前bmc日志;

    标志位设置单元,配置用于对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    宕机定位单元,配置用于在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    第三方面,提供一种终端,包括:

    处理器、存储器,其中,

    该存储器用于存储计算机程序,

    该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。

    第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

    本发明的有益效果在于,

    本发明提供的一种服务器定位宕机阶段的方法、系统、终端及存储介质,bmc记录上电自检代码变化顺序,与bios上电自检过程中预先设置的标志位进行一一对应,实现无串口日志情况下对宕机时操作阶段的定位,缩短问题解决周期,提高服务器产品的竞争力。

    此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

    附图说明

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

    图1是本发明一个实施例的方法的示意性流程图。

    图2是本发明一个实施例的上电自检过程的示意性流程图。

    图3是本发明一个实施例的驱动加载设置标志位的示意图。

    图4是本发明一个实施例的服务器正常和异常下日志对应示意图。

    图5是本发明一个实施例的系统的示意性框图。

    图6为本发明实施例提供的一种终端的结构示意图。

    具体实施方式

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

    下面对本发明中出现的关键术语进行解释。

    图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种服务器定位宕机阶段的系统。

    如图1所示,该方法包括:

    步骤110,在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    步骤120,当服务器宕机后立即获取当前bmc日志;

    步骤130,对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    步骤140,在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    可选地,作为本发明一个实施例,所述方法还包括:

    若没有在服务器宕机之前烧录bios,则在服务器宕机后通过在与宕机服务器同配置的正常服务器上烧录bios,正常开机后获取用于对比的串口日志及bmc日志。

    可选地,作为本发明一个实施例,所述方法还包括:

    在上电自检过程中在串口日志与bmc日志中同一操作阶段上输出相同的标志位。

    可选地,作为本发明一个实施例,所述操作阶段包括cpu的自检、内存自检或加载、驱动加载以及设备初始化。

    可选地,作为本发明一个实施例,所述方法还包括:

    在上电自检过程中,bmc记录所述上电自检编码的变化并生成日志。

    为了便于对本发明的理解,下面以本发明一种服务器定位宕机阶段的方法的原理,结合实施例中对服务器进行管理的过程,对本发明提供的一种服务器定位宕机阶段的方法做进一步的描述。

    具体的,所述一种服务器定位宕机阶段的方法包括:

    本实施例可以有效提供宕机问题收束方向,协助定位宕机问题的异常点的方法,弥补宕机问题处理过程中由于难复现、复现周期长,导致短时间内无法获取串口日志来有效定位,从而延长问题解决周期、增加难度的问题。

    1、bmc作为基板管理控制器,可以监视硬件系统的温度、电压、风扇、电源等信息,并实现相应的调节,保证系统处于一个良好的工作状态,用时也会记录硬件信息及服务器运行日志。在上电自检过程中,bmc作为独立的进行平台管理的系统,不依赖主板上其他硬件但同样可以与bios进行交互,实现对整个上电自检过程的监控,具体位通过bmc同步对上电自检代码的变化记录并生成日志,可以有效追踪上电自检过程中的变化及当时所处的阶段。

    2、一般情况下,宕机问题主要发生在开机至进入服务器系统的过程中,即上电自检过程。如图2所示,在此过程中,服务器依托bios代码进行运行,对服务器硬件系统各部分依次进行初始化、加载、访问等操作,上述操作bios依靠所调用的相关函数来实现。在此过程中会出现标志当前进行的操作的标志位,并会实时通过主板上的8位led灯及外接显示系统进行实时输出。在整个上电自检过程中,如图3所示,bios进行的每一个操作,包括但不限于对cpu的自检、内存自检或加载、驱动加载和设备初始化等阶段,都会持续输出对应的标志位,每个标志位都会代表当前进行的操作及所处阶段。

    3、如图4所示,此外服务器同一型号主板往往会搭配不同的设备,形成不同配置。但在上电自检过程中,同一配置的服务器的上电自检码变化一致,即进行各种初始化操作、驱动加载的顺序完全一致。

    4、在本实施例中,还需要建立上电自检码与服务器当前的上电自检状态的一一对应关系,才能有效确认宕机时处于的位置即正在进行的操作。通过在原机台或同配置正常工作的服务器上导入特制版本的bios以搜集足够详细的日志记录,来确认各个标志位对应的上电自检阶段或加载的驱动。

    5、通过宕机服务器机台抓取的bmc日志中所记录的宕机时刻的上电自检码,确认此时服务器处于什么阶段、在进行什么操作,从而缩小排查范围,提供解决思路,缩短调试时间。

    如图5示,该系统200包括:

    对比设置单元210,配置用于在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    日志获取单元220,配置用于当服务器宕机后立即获取当前bmc日志;

    标志位设置单元230,配置用于对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    宕机定位单元240,配置用于在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    图6为本发明实施例提供的一种终端系统300的结构示意图,该终端系统300可以用于执行本发明实施例提供的一种服务器定位宕机阶段的方法。

    其中,该终端系统300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

    其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。

    处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(integratedcircuit,简称ic)组成,例如可以由单颗封装的ic所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。举例来说,处理器310可以仅包括中央处理器(centralprocessingunit,简称cpu)。在本发明实施方式中,cpu可以是单运算核心,也可以包括多运算核心。

    通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。

    本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:rom)或随机存储记忆体(英文:randomaccessmemory,简称:ram)等。

    因此,本发明提出了一种基于bmc日志下记录的post代码对宕机问题定位的方法,与正常解决宕机问题方法相比,可以有效提供有效的调试方向,一定程度上摆脱复现周期长,耗时多的限制,缩短问题解决周期,提高问题解决效率,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。

    本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。

    本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。

    在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

    所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

    另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

    尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。


    技术特征:

    1.一种服务器定位宕机阶段的方法,其特征在于,包括:

    在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    当服务器宕机后立即获取当前bmc日志;

    对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    2.根据权利要求1所述的服务器定位宕机阶段的方法,其特征在于,所述方法还包括:

    若没有在服务器宕机之前烧录bios,则在服务器宕机后通过在与宕机服务器同配置的正常服务器上烧录bios,正常开机后获取用于对比的串口日志及bmc日志。

    3.根据权利要求1所述的服务器定位宕机阶段的方法,其特征在于,所述方法还包括:

    在上电自检过程中在串口日志与bmc日志中同一操作阶段上输出相同的标志位。

    4.根据权利要求1所述的服务器定位宕机阶段的方法,其特征在于,所述操作阶段包括cpu的自检、内存自检或加载、驱动加载以及设备初始化。

    5.根据权利要求1所述的服务器定位宕机阶段的方法,其特征在于,所述方法还包括:

    在上电自检过程中,bmc记录所述上电自检编码的变化并生成日志。

    6.一种服务器定位宕机阶段的系统,其特征在于,包括:

    对比设置单元,配置用于在所有服务器上烧录bios,正常开机后获取串口日志及初始bmc日志;

    日志获取单元,配置用于当服务器宕机后立即获取当前bmc日志;

    标志位设置单元,配置用于对比初始bmc日志和bmc日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;

    宕机定位单元,配置用于在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段。

    7.一种终端,其特征在于,包括:

    处理器;

    用于存储处理器的执行指令的存储器;

    其中,所述处理器被配置为执行权利要求1-5任一项所述的方法。

    8.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。

    技术总结
    本发明提供一种服务器定位宕机阶段的方法、系统、终端及存储介质,包括:在所有服务器上烧录BIOS,正常开机后获取串口日志及初始BMC日志;当服务器宕机后立即获取当前BMC日志;对比初始BMC日志和BMC日志中记录的上电自检编码的变化,确认宕机服务器上电自检编码停止的标志位;在所述串口日志中检索对应的标志位来定位当前服务器宕机时进行的操作阶段.本发明提供的BMC记录上电自检代码变化顺序,与BIOS上电自检过程中预先设置的标志位进行一一对应,实现无串口日志情况下对宕机时操作阶段的定位,缩短问题解决周期,提高服务器产品的竞争力。

    技术研发人员:刘闻禹;王焕超;于泉泉;孙珑玲;闫玉婕
    受保护的技术使用者:苏州浪潮智能科技有限公司
    技术研发日:2020.11.06
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-22676.html

    最新回复(0)