一种服务器BIOS与BMC之间的数据交互方法、装置及设备制造方法及图纸

技术编号:27605724 阅读:16 留言:0更新日期:2021-03-10 10:29
本申请公开了一种服务器BIOS与BMC之间的数据交互方法、装置、设备及可读存储介质。本申请根据BIOS和BMC之间IPMI链路的状态来决定是否进行数据交互,同时,通过在BIOS的BDS阶段确认服务器的重启次数是否达到预设阈值,判断BMC是否因存在异常导致无法激活,当服务器重启次数已经达到预设阈值且BMC仍未激活,则判定BMC异常,若服务器重启次数尚未达到预设阈值,则BIOS执行系统重启动作,其中预设阈值由BIOS内部自定义的变量确认,可以自由设置。如此设计可以达到服务器BIOS和BMC安全有效的数据交互,避免因IPMI链路异常导致数据交互失败的问题,及时发现BMC异常状态,提升服务器的安全性和可靠性,适用于所有架构的服务器产品。适用于所有架构的服务器产品。适用于所有架构的服务器产品。

【技术实现步骤摘要】
一种服务器BIOS与BMC之间的数据交互方法、装置及设备


[0001]本申请涉及计算机
,特别涉及一种服务器BIOS与BMC之间的数据交互方法、装置、设备及可读存储介质。

技术介绍

[0002]随着芯片行业和互联网行业的快速发展,国内外各个互联网公司开始对数据中心的建设也越加重视,同时对服务器的采购及批量部署也要求越来越高。无论是MIPS架构、Power架构、ARM架构、还是传统的X86架构包括英特尔和AMD等类型的服务器需求也在增加,所有架构的服务器产品都必不可少的使用到BIOS(Basic Input Output System,基本输入输出系统)和BMC(Baseboard Management Controller,基板管理控制器)这两大类管理软件。
[0003]BIOS主要负责服务器硬件设备的初始化及操作系统的引导,BMC则主要负责服务器各个部件的温度监控和能耗管理以及资产信息显示。服务器初始化动作只能由BIOS固件负责且能及时获取有效数据,但是BIOS无法将服务器的硬件信息进行显示,BMC可以随时通过远程管理登陆查看服务器的基本硬件设备信息,但是这个资产信息是BIOS递给BMC进行显示的,同时,BIOS的部分功能也需要与BMC进行数据交互。
[0004]一般的,BIOS和BMC通过IPMI(Intelligent Platform Management Interface,智能平台管理接口)协议物理链路(以下简称为IPMI链路)进行数据交互,如果BIOS和BMC之间的IPMI链路状态异常,或者BMC异常,BIOS将无法与BMC进行正常的数据交互,导致无法查看服务器的基本硬件设备信息,甚至影响BIOS的部分功能。

技术实现思路

[0005]本申请的目的是提供一种服务器BIOS与BMC之间的数据交互方法、装置、设备及可读存储介质,用以解决因IPMI链路状态异常或BMC异常,导致BIOS与BMC无法进行数据交互的问题。其具体方案如下:
[0006]第一方面,本申请提供了一种服务器BIOS与BMC之间的数据交互方法,应用于BIOS,包括:
[0007]S1、在服务器上电开机时,获取BIOS与BMC之间的IPMI链路的状态,得到第一状态值;若所述第一状态值为正常,进入S2,否则进入S3;
[0008]S2、通过所述IPMI链路与所述BMC进行数据交互,引导启动到系统;
[0009]S3、初始化设备并引导启动至BDS阶段,再次获取所述BIOS与BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为正常,进入S2,否则进入S4;
[0010]S4、判断所述服务器的重启次数是否超过预设阈值;若是,则进入S5,否则进入S6;
[0011]S5、判定所述BMC异常,根据本地的预设内存地址空间上的目标数据进行自我恢复,引导启动到系统;
[0012]S6、执行重启命令控制所述服务器进行重启,进入S1。
[0013]优选的,在所述判定所述BMC异常之后,还包括:
[0014]通过串口输出BMC异常的提示信息。
[0015]优选的,所述执行重启命令控制所述服务器进行重启,进入S1,包括:
[0016]执行重启命令控制所述服务器进行重启,等待预设时间,进入S1。
[0017]优选的,所述通过所述IPMI链路与所述BMC进行数据交互,包括:
[0018]通过所述IPMI链路向所述BMC发送硬件设备信息,以显示所述硬件设备信息。
[0019]优选的,所述通过所述IPMI链路与所述BMC进行数据交互,包括:
[0020]通过所述IPMI链路从所述BMC获取目标功能的最新配置信息。
[0021]优选的,所述根据本地的预设内存地址空间上的目标数据进行自我恢复,包括:
[0022]从本地的预设内存地址空间读取NVRAM数据,得到目标功能的原有配置信息。
[0023]第二方面,本申请提供了一种服务器BIOS与BMC之间的数据交互装置,应用于BIOS,包括:
[0024]第一状态获取模块:用于在服务器上电开机时,获取BIOS与BMC之间的IPMI链路的状态,得到第一状态值;若所述第一状态值为正常,进入引导启动模块,否则进入第二状态获取模块;
[0025]所述引导启动模块:用于通过所述IPMI链路与所述BMC进行数据交互,引导启动到系统;
[0026]所述第二状态获取模块:用于初始化设备并引导启动至BDS阶段,再次获取所述BIOS与BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为正常,进入所述引导启动模块,否则进入重启判断模块;
[0027]所述重启判断模块:用于判断所述服务器的重启次数是否超过预设阈值;若是,则进入异常处理模块,否则进入重启模块;
[0028]所述异常处理模块:用于判定所述BMC异常,根据本地的预设内存地址空间上的目标数据进行自我恢复,引导启动到系统;
[0029]所述重启模块:用于执行重启命令控制所述服务器进行重启,进入所述第一状态获取模块。
[0030]优选的,所述异常处理模块还用于:
[0031]通过串口输出BMC异常的提示信息。
[0032]第三方面,本申请提供了一种服务器BIOS与BMC之间的数据交互设备,包括:
[0033]处理器:用于存储计算机程序;
[0034]处理器:用于执行所述计算机程序,以实现如上所述的服务器BIOS与BMC之间的数据交互方法。
[0035]第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的服务器BIOS与BMC之间的数据交互方法。
[0036]本申请所提供的一种服务器BIOS与BMC之间的数据交互方法,应用于BIOS,包括:在服务器上电开机时,获取BIOS与BMC之间的IPMI链路的状态,得到第一状态值;若第一状态值为正常,则通过IPMI链路与BMC进行数据交互,引导启动到系统,否则初始化设备并引导启动至BDS阶段,再次获取BIOS与BMC之间的IPMI链路的状态,得到第二状态值;若第二状
态值为正常,则通过IPMI链路与BMC进行数据交互,引导启动到系统,否则判断服务器的重启次数是否超过预设阈值;若是,判定BMC异常,根据本地的预设内存地址空间上的目标数据进行自我恢复,引导启动到系统,否则执行重启命令控制所述服务器进行重启,重复上述步骤。
[0037]可见,该方法根据BIOS和BMC之间IPMI链路的状态来决定是否进行数据交互,同时,该方法通过在BIOS的BDS阶段确认服务器的重启次数是否达到预设阈值,判断BMC是否因存在异常导致无法激活,当服务器重启次数已经达到预设阈值且BMC仍未激活,则判定BMC异常,若服务器重启次数尚未达到预设阈值,则BIOS执行系统重启动作,其中预设阈值由BIOS内部自定义的变量确认,可以自由设置。如此本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务器BIOS与BMC之间的数据交互方法,其特征在于,应用于BIOS,包括:S1、在服务器上电开机时,获取BIOS与BMC之间的IPMI链路的状态,得到第一状态值;若所述第一状态值为正常,进入S2,否则进入S3;S2、通过所述IPMI链路与所述BMC进行数据交互,引导启动到系统;S3、初始化设备并引导启动至BDS阶段,再次获取所述BIOS与BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为正常,进入S2,否则进入S4;S4、判断所述服务器的重启次数是否超过预设阈值;若是,则进入S5,否则进入S6;S5、判定所述BMC异常,根据本地的预设内存地址空间上的目标数据进行自我恢复,引导启动到系统;S6、执行重启命令控制所述服务器进行重启,进入S1。2.如权利要求1所述的方法,其特征在于,在所述判定所述BMC异常之后,还包括:通过串口输出BMC异常的提示信息。3.如权利要求1所述的方法,其特征在于,所述执行重启命令控制所述服务器进行重启,进入S1,包括:执行重启命令控制所述服务器进行重启,等待预设时间,进入S1。4.如权利要求1所述的方法,其特征在于,所述通过所述IPMI链路与所述BMC进行数据交互,包括:通过所述IPMI链路向所述BMC发送硬件设备信息,以显示所述硬件设备信息。5.如权利要求1所述的方法,其特征在于,所述通过所述IPMI链路与所述BMC进行数据交互,包括:通过所述IPMI链路从所述BMC获取目标功能的最新配置信息。6.如权利要求5所述的方法,其特征在于,所述根据本地的预设内存地址空间上的目标数据进行自我恢复,包括:从本地的预设内存地址空间读...

【专利技术属性】
技术研发人员:孙秀强黄家明李勋堂乔英良班华堂李道童艾山彬姚藩益
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1