CN116149957B - 一种通过bmc保存服务器上下电记录的方法 - Google Patents

一种通过bmc保存服务器上下电记录的方法 Download PDF

Info

Publication number
CN116149957B
CN116149957B CN202310420170.4A CN202310420170A CN116149957B CN 116149957 B CN116149957 B CN 116149957B CN 202310420170 A CN202310420170 A CN 202310420170A CN 116149957 B CN116149957 B CN 116149957B
Authority
CN
China
Prior art keywords
server
module
bmc
power
running state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310420170.4A
Other languages
English (en)
Other versions
CN116149957A (zh
Inventor
陈志明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Bojiang Information Technology Co Ltd
Original Assignee
Hunan Bojiang Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan Bojiang Information Technology Co Ltd filed Critical Hunan Bojiang Information Technology Co Ltd
Priority to CN202310420170.4A priority Critical patent/CN116149957B/zh
Publication of CN116149957A publication Critical patent/CN116149957A/zh
Application granted granted Critical
Publication of CN116149957B publication Critical patent/CN116149957B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Power Sources (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种通过BMC保存服务器上下电记录的方法,本发明提出的通过BMC保存服务器上下电记录的方法能解决现有的通过BIOS来向BMC发送服务器运行状态信息的方案存在的缺陷;首先,本方法不依托于BIOS即可实现BMC获取服务器的运行状态,仅增加GPIO模块即可实现对服务器进行上电或下电的监控,从而解除了与BMC配套的服务器选择限制;此外,本方案不再需要保证BMC一直与服务器保持通讯,因GPIO模块独立供电,即便服务器已经下电,GPIO模块也能够独立准确的反映出服务器的运行状态,BMC只要获取GPIO模块的寄存器内的运行状态值,即可清楚的知晓服务器的运行状态,本方案的整体稳定性更高。

Description

一种通过BMC保存服务器上下电记录的方法
技术领域
本发明涉及服务器技术领域,具体涉及一种通过BMC保存服务器上下电记录的方法。
背景技术
BMC(BaseBoard Management Controller),中文名为基板管理系统,是一个不依赖于计算机系统上其他硬件的独立系统,能对整个计算机系统的电源、温度等信息进行监控和管理;而OpenBMC是为BMC构建完整的Linux镜像的开源框架。
为了保障服务器的正常稳定运行,需要对服务器的运行状态进行实时监控;而现有的通过BIOS(Basic Input Output System,基本输入输出系统)来向BMC发送服务器运行状态信息的方案存在如下缺陷:
首先,如附图2所示,现有技术中,服务器上下电会通过BIOS并基于IPMB智能平台管理总线(电信计算平台中各模块通信的两组I2C总线的总称)来发送上下电信息至BMC,BMC中的ipmid进程基于IPMB网桥来接收服务器的上下电信息;现有方案中,当服务器上电或下电时会主动向BMC推送对应的信息,以使BMC及时知晓服务器的上电状态;但是这种监控方案对服务器的BIOS有限制,具体为需要在BIOS中设置一个预置IPMI(IntelligentPlatform Management Interface)指令的ME( Management Engine,Intel针对齐桌面系列芯片组推出的一款热能管理驱动,介于固件和系统驱动之间,类似于一种接口)功能模块,而该模块仅Intel支持,大大限制了与BMC配套的服务器的选择。
其次,现有方案必须保证BMC一直与服务器保持通讯,否则可能因某一瞬间的通讯中断而导致BMC没有接收到BIOS发送的上电或下电信息,从而导致丢失对服务器运行状态的监控;即现有的通过BIOS来向BMC发送服务器运行状态信息的方案的稳定性有待提升。
发明内容
本发明的主要目的是提供一种通过BMC保存服务器上下电记录的方法,旨在解决现有的通过BIOS来向BMC发送服务器运行状态信息的方案存在大多数系统不支持以及稳定性不高的问题。
本发明提出的技术方案为:
一种通过BMC保存服务器上下电记录的方法,应用于服务器上下电记录保存系统;所述系统包括服务器、GPIO模块和BMC模块;服务器包括处理器;BMC模块和服务器均与GPIO模块通信连接;服务器、BMC模块和GPIO模块分别采用不同的电源供电;所述方法,包括:
处理器于GPIO模块的寄存器内写入运行状态值;
服务器上电后,处理器将运行状态值赋值为第一预设值;
服务器接收到下电指令后,处理器将运行状态值赋值为第二预设值,然后执行下电操作,其中,第一预设值与第二预设值不相等;
BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
优选的,所述系统还包括与BMC模块通信连接的存储模块;所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,之后还包括:
BMC模块基于服务器的运行状态的变化情况生成运行状态日志,其中,运行状态为上电状态或下电状态;
BMC模块将运行状态日志存储于存储模块。
优选的,所述服务器接收到下电指令后,处理器将运行状态值赋值为第二预设值,然后执行下电操作,之后还包括:
当GPIO模块的寄存器内的运行状态值被第一次赋值时,GPIO模块生成第一通知信息,并发送至BMC模块;
BMC模块基于第一通知信息获取GPIO模块的寄存器内的运行状态值;
当GPIO模块的寄存器内的运行状态值发生改变时,GPIO模块生成第二通知信息,并发送至BMC模块;
BMC模块基于第二通知信息获取GPIO模块的寄存器内的运行状态值。
优选的,所述系统还包括监测模块;处理器和GPIO模块均与监测模块通信连接;所述处理器于GPIO模块的寄存器内写入运行状态值,之后还包括:
当运行状态值为第一预设值时,监测模块实时监测处理器的运行状态,以判断服务器是否出现异常断电;
若是,监测模块将运行状态值赋值为第二预设值。
优选的,所述当运行状态值为第一预设值时,监测模块实时监测处理器的运行状态,以判断服务器是否出现异常断电,包括:
当运行状态值为第一预设值时,监测模块实时监测处理器的工作电压,并判断工作电压是否为0;
当处理器的工作电压为0时,监测模块实时获取GPIO模块的寄存器内的运行状态值,以判断当前时刻的运行状态值是否为第一预设值;
当处理器的工作电压为0,且当前时刻的运行状态值为第一预设值时,监测模块确定处理器出现异常断电。
优选的,所述监测模块将运行状态值赋值为第二预设值,之后还包括:
监测模块生成第三通知信息,并通过GPIO模块发送至BMC模块;
BMC模块基于第三通知信息将本次服务器的异常断电事件存入运行状态日志。
优选的,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,还包括:
当BMC模块获取到了为第一预设值的运行状态值时,BMC模块获取服务器对应的平均维持开机时长;
自当前时刻起至平均维持开机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
自当前时刻起达到平均维持开机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,其中,第二预设时长大于第一预设时长。
优选的,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,包括:
当BMC模块获取到了为第二预设值的运行状态值时,BMC模块获取服务器对应的平均维持关机时长;
自当前时刻起至平均维持关机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
自当前时刻起达到平均维持关机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
优选的,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,还包括:
当服务器上电后,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
监测模块实时监测处理器的工作电压,并判断工作电压是否落入正常电压范围;
当工作电压未落入正常电压范围时,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
当工作电压落入正常电压范围时,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
优选的,所述第一预设时长的计算公式为:
Figure SMS_1
式中,
Figure SMS_2
为所述第一预设时长,单位为s;/>
Figure SMS_3
为所述平均维持开机时长,单位为s;
Figure SMS_4
为第一系数,为正整数;
所述第二预设时长的计算公式为:
Figure SMS_5
式中,
Figure SMS_6
为所述第二预设时长,单位为s;/>
Figure SMS_7
为第二系数,为正整数。
通过上述技术方案,能实现以下有益效果:
本发明提出的通过BMC保存服务器上下电记录的方法能解决现有的通过BIOS来向BMC发送服务器运行状态信息的方案存在的缺陷;首先,本方法在不依托于BIOS即可实现BMC获取服务器的运行状态,仅增加GPIO模块即可实现对服务器进行上电或下电的监控,从而解除了与BMC配套的服务器选择限制;此外,本方案不再需要保证BMC一直与服务器保持通讯,因GPIO模块独立供电,即便服务器已经下电,GPIO模块也能够独立准确的反映出服务器的运行状态,BMC只要获取GPIO模块的寄存器内的运行状态值,即可清楚的知晓服务器的运行状态,本方案的整体稳定性更高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明提出的一种通过BMC保存服务器上下电记录的方法第一实施例的流程图;
图2为现有技术中服务器上下电记录保存系统的结构示意图;
图3为本发明提出的一种通过BMC保存服务器上下电记录的方法第四实施例中服务器上下电记录保存系统的模块示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提出一种通过BMC保存服务器上下电记录的方法。
如附图1和附图3所示,在本发明提出的一种通过BMC保存服务器上下电记录的方法的第一实施例中,本通过BMC保存服务器上下电记录的方法应用于服务器上下电记录保存系统;所述系统包括服务器、GPIO(General-purpose input/output,中文名为通用型输入输出)模块(GPIO模块的引脚可以供使用者自由控制,从而实现不同的功能)和BMC模块;服务器包括处理器;BMC模块和服务器均与GPIO模块通信连接(处理器通过输入总线与GPIO模块通信连接,GPIO模块通过输出总线与BMC模块通信连接);服务器、BMC模块和GPIO模块分别采用不同的电源供电(且BMC模块和GPIO模块均为不间断供电,且BMC模块、GPIO模块和服务器设置于同一个机箱内);本实施例包括如下步骤:
步骤S110:处理器于GPIO模块的寄存器内写入运行状态值。
具体的,当服务器首次上电开机后,处理器通过驱动程序于GPIO模块的寄存器内写入运行状态值,通过该运行状态值表述服务器的运行状态。
步骤S120:服务器上电后,处理器将运行状态值赋值为第一预设值(例如1)。
具体的,即服务器处于上电开机状态时,则处理器通过驱动程序将运行状态值赋值为第一预设值。
步骤S130:服务器接收到下电指令后,处理器将运行状态值赋值为第二预设值(例如0),然后执行下电操作,其中,第一预设值与第二预设值不相等。
具体的,当服务器接收到下电指令后,处理器会先通过驱动程序将运行状态值赋值为第二预设值,然后执行下电操作。
步骤S140:BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,BMC模块通过获取GPIO模块的寄存器内的运行状态值,即可清楚的知晓服务器的运行状态。
本发明提出的通过BMC保存服务器上下电记录的方法能解决现有的通过BIOS来向BMC发送服务器运行状态信息的方案存在的缺陷;首先,本方法在不依托于BIOS即可实现BMC获取服务器的运行状态,仅增加GPIO模块即可实现对服务器进行上电或下电的监控,从而解除了与BMC配套的服务器选择限制,不需要增加过多的额外成本;此外,本方案不再需要保证BMC一直与服务器保持通讯,因GPIO模块独立供电,即便服务器已经下电,GPIO模块也能够独立准确的反映出服务器的运行状态,BMC只要获取GPIO模块的寄存器内的运行状态值,即可清楚的知晓服务器的运行状态,本方案的整体稳定性更高。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第二实施例中,基于第一实施例,所述系统还包括与BMC模块通信连接的存储模块,本实施例中,存储模块为EEPROM(Electrically Erasable Programmable read only memory,指带电可擦可编程只读存储器,是一种掉电后数据不丢失的存储芯片);步骤S140,之后还包括如下步骤:
步骤S210:BMC模块基于服务器的运行状态的变化情况生成运行状态日志,其中,运行状态为上电状态或下电状态。
具体的,即BMC模块会将运行状态值的变化情况记录于运行状态日志,从而便于管理人员基于运行状态日志知晓服务器的历史运行情况。
步骤S220:BMC模块将运行状态日志存储于存储模块。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第三实施例中,基于第一实施例,步骤S130,之后还包括如下步骤:
步骤S310:当GPIO模块的寄存器内的运行状态值被第一次赋值时,GPIO模块生成第一通知信息,并发送至BMC模块。
步骤S320:BMC模块基于第一通知信息(具体表述为服务器首次开机)获取GPIO模块的寄存器内的运行状态值。
具体的,即服务器首次开机上电后,GPIO模块即生成并发送第一通知信息至BMC模块,然后BMC模块基于第一通知信息主动获取GPIO模块的寄存器内的运行状态值,从而及时知晓服务器的开机信息。
步骤S330:当GPIO模块的寄存器内的运行状态值发生改变时,GPIO模块生成第二通知信息,并发送至BMC模块。
步骤S340:BMC模块基于第二通知信息(具体表述为服务器的运行状态发生了改变)获取GPIO模块的寄存器内的运行状态值。
具体的,即每次GPIO模块的寄存器内的运行状态值发生改变时,GPIO模块生成并发送第二通知信息至BMC模块;然后BMC模块基于第二通知信息获取GPIO模块的寄存器内的运行状态值,以及时知晓服务器的运行状态。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第四实施例中,基于第二实施例,所述系统还包括监测模块;处理器和GPIO模块均与监测模块通信连接;步骤S110,之后还包括如下步骤:
步骤S410:当运行状态值为第一预设值时,监测模块实时监测处理器的运行状态,以判断服务器是否出现异常断电。
若是,执行步骤S420:监测模块将运行状态值赋值为第二预设值。
具体的,当运行状态值为第一预设值时,说明服务器是上电开机状态,而此时监测模块若实时监测到服务器出现异常断电,则因服务器是异常断电,无法及时通过处理器来将运行状态值赋值为第二预设值,为了BMC模块能够准确及时的知晓服务器的运行状态,则监测模块将运行状态值赋值为第二预设值。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第五实施例中,基于第四实施例,步骤S410,包括如下步骤:
步骤S510:当运行状态值为第一预设值时,监测模块实时监测处理器的工作电压,并判断工作电压是否为0。
步骤S520:当处理器的工作电压为0时,监测模块实时获取GPIO模块的寄存器内的运行状态值,以判断当前时刻的运行状态值是否为第一预设值。
具体的,当处理器的工作电压为0时,说明此时处理器已经下电,此时正常情况下,当前时刻的运行状态值应该为第二预设值,但若当前时刻的运行状态值为第一预设值,说明运行状态值没有被正常赋值为第二预设值,说明处理器为异常下电(因若处理器为正常下电,肯定会将运行状态值赋值为第二预设值,这种情况可能是因外界供电出现异常,或者电源等供电元件出现异常而导致处理器异常下电)。
步骤S530:当处理器的工作电压为0,且当前时刻的运行状态值为第一预设值时,监测模块确定处理器出现异常断电。
具体的,本实施例给出了监测模块如何具体判断服务器是否出现异常断电的方案。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第六实施例中,基于第四实施例,步骤S420,之后还包括如下步骤:
步骤S610:监测模块生成第三通知信息(具体表述为服务器出现异常断电),并通过GPIO模块发送至BMC模块。
步骤S620:BMC模块基于第三通知信息将本次服务器的异常断电事件存入运行状态日志。
具体的,将本次服务器的异常断电事件存入运行状态日志,从而便于管理人员后续进行事故分析。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第七实施例中,基于第四实施例,步骤S140,包括如下步骤:
步骤S710:当BMC模块获取到了为第一预设值的运行状态值时,BMC模块获取服务器对应的平均维持开机时长。
具体的,当BMC模块获取到了为第一预设值的运行状态值时,说明服务器已经开机上电。
步骤S720:自当前时刻起至平均维持开机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,自当前时刻起的平均维持开机时长内(这个期间内服务器内关机下电的概率较小,因此BMC模块可以降低主动获取GPIO模块的寄存器内的运行状态值的频率,从而节约计算资源,降低功耗,并能够提升BMC模块的工作稳定性),即BMC模块每隔第二预设时长(例如600s)获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
步骤S730:自当前时刻起达到平均维持开机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,其中,第二预设时长大于第一预设时长。
具体的,经过平均维持开机时长后,服务器关机下电的概率上升,为了能够及时获取服务器的运行状态,故BMC模块每隔第一预设时长(例如10s)获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第八实施例中,基于第七实施例,步骤S140,还包括如下步骤:
步骤S810:当BMC模块获取到了为第二预设值的运行状态值时,BMC模块获取服务器对应的平均维持关机时长。
具体的,当BMC模块获取到了为第二预设值的运行状态值时,说明服务器已经关机下电。
步骤S820:自当前时刻起至平均维持关机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,自当前时刻起的平均维持关机时长内(这个期间内服务器内开机上电的概率较小,因此BMC模块可以降低主动获取GPIO模块的寄存器内的运行状态值的频率,从而节约计算资源,提升BMC模块的工作稳定性),即BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
步骤S830:自当前时刻起达到平均维持关机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,经过平均维持关机时长后,服务器开机上电的概率上升,为了能够及时获取服务器的运行状态,故BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第九施例中,基于第七实施例,步骤S140,还包括如下步骤:
步骤S910:当服务器上电后,BMC模块每隔第二预设时长(例如600s)获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,即服务器开机后,服务器不会在段时间内关机下电,BMC模块即以教低的频率(第二预设时长)来获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
步骤S920:监测模块实时监测处理器的工作电压,并判断工作电压是否落入正常电压范围。
步骤S930:当工作电压未落入正常电压范围时,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,若工作电压未落入正常电压范围,说明处理器处于异常工作状态,在此状态下容易出现异常下电,为了及时知晓服务器的工作状态,BMC模块需要以较高的频率(第一预设时长)来获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
步骤S940:当工作电压落入正常电压范围时,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
具体的,若工作电压落入正常电压范围,说明处理器处于正常工作状态,在此状态下并不容易出现异常下电,故BMC模块能够以较低的频率(第二预设时长)来获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第十实施例中,基于第四实施例,本实施例还包括如下步骤:
步骤S1010:监测模块实时监测处理器的运行状态,以判断服务器是否已经上电。
步骤S1020:当服务器已经上电时,监测模块等待第三预设时长(例如5s)后获取GPIO模块的寄存器内的运行状态值,以判断第三预设时长后的运行状态值是否为第二预设值。
步骤S1030:当服务器已经上电,且第三预设时长后的运行状态值为第二预设值时,监测模块确定处理器出现异常上电,并将GPIO模块的寄存器内的运行状态值赋值为第一预设值。
具体的,当服务器已经上电,且第三预设时长后的运行状态值为第二预设值时,说明虽然服务器已经上电,但是GPIO模块内的运行状态值没有如期被更换为第一预设值,这种情况说明处理器出现了异常(可能出现了卡顿或宕机),故监测模块确定处理器出现异常上电,并将GPIO模块的寄存器内的运行状态值赋值为第一预设值,以便于BMC模块基于运行状态值来知晓服务器的运行状态。
步骤S1040:监测模块生成第四通知信息(表述为服务器出现异常上电),并通过GPIO模块发送至BMC模块。
步骤S1050:BMC模块基于第四通知信息将本次服务器的异常上电事件存入运行状态日志。
在本发明提出的一种通过BMC保存服务器上下电记录的方法的第十一实施例中,基于第七实施例,所述第一预设时长的计算公式为:
Figure SMS_8
式中,
Figure SMS_9
为所述第一预设时长,单位为s;/>
Figure SMS_10
为所述平均维持开机时长,单位为s;
Figure SMS_11
为第一系数,为正整数,例如本实施例中取10000。
所述第二预设时长的计算公式为:
Figure SMS_12
式中,
Figure SMS_13
为所述第二预设时长,单位为s;/>
Figure SMS_14
为第二系数,为正整数,例如本实施例中取60。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (9)

1.一种通过BMC保存服务器上下电记录的方法,其特征在于,应用于服务器上下电记录保存系统;所述系统包括服务器、GPIO模块和BMC模块;服务器包括处理器;BMC模块和服务器均与GPIO模块通信连接;服务器、BMC模块和GPIO模块分别采用不同的电源供电;所述方法,包括:
处理器于GPIO模块的寄存器内写入运行状态值;
服务器上电后,处理器将运行状态值赋值为第一预设值;
服务器接收到下电指令后,处理器将运行状态值赋值为第二预设值,然后执行下电操作,其中,第一预设值与第二预设值不相等;
BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
所述服务器接收到下电指令后,处理器将运行状态值赋值为第二预设值,然后执行下电操作,之后还包括:
当GPIO模块的寄存器内的运行状态值被第一次赋值时,GPIO模块生成第一通知信息,并发送至BMC模块;
BMC模块基于第一通知信息获取GPIO模块的寄存器内的运行状态值;
当GPIO模块的寄存器内的运行状态值发生改变时,GPIO模块生成第二通知信息,并发送至BMC模块;
BMC模块基于第二通知信息获取GPIO模块的寄存器内的运行状态值。
2.根据权利要求1所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述系统还包括与BMC模块通信连接的存储模块;所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,之后还包括:
BMC模块基于服务器的运行状态的变化情况生成运行状态日志,其中,运行状态为上电状态或下电状态;
BMC模块将运行状态日志存储于存储模块。
3.根据权利要求2所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述系统还包括监测模块;处理器和GPIO模块均与监测模块通信连接;所述处理器于GPIO模块的寄存器内写入运行状态值,之后还包括:
当运行状态值为第一预设值时,监测模块实时监测处理器的运行状态,以判断服务器是否出现异常断电;
若是,监测模块将运行状态值赋值为第二预设值。
4.根据权利要求3所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述当运行状态值为第一预设值时,监测模块实时监测处理器的运行状态,以判断服务器是否出现异常断电,包括:
当运行状态值为第一预设值时,监测模块实时监测处理器的工作电压,并判断工作电压是否为0;
当处理器的工作电压为0时,监测模块实时获取GPIO模块的寄存器内的运行状态值,以判断当前时刻的运行状态值是否为第一预设值;
当处理器的工作电压为0,且当前时刻的运行状态值为第一预设值时,监测模块确定处理器出现异常断电。
5.根据权利要求3所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述监测模块将运行状态值赋值为第二预设值,之后还包括:
监测模块生成第三通知信息,并通过GPIO模块发送至BMC模块;
BMC模块基于第三通知信息将本次服务器的异常断电事件存入运行状态日志。
6.根据权利要求3所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,包括:
当BMC模块获取到了为第一预设值的运行状态值时,BMC模块获取服务器对应的平均维持开机时长;
自当前时刻起至平均维持开机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
自当前时刻起达到平均维持开机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,其中,第二预设时长大于第一预设时长。
7.根据权利要求6所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,还包括:
当BMC模块获取到了为第二预设值的运行状态值时,BMC模块获取服务器对应的平均维持关机时长;
自当前时刻起至平均维持关机时长内,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
自当前时刻起达到平均维持关机时长后,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
8.根据权利要求6所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述BMC模块获取GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态,还包括:
当服务器上电后,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
监测模块实时监测处理器的工作电压,并判断工作电压是否落入正常电压范围;
当工作电压未落入正常电压范围时,BMC模块每隔第一预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态;
当工作电压落入正常电压范围时,BMC模块每隔第二预设时长获取一次GPIO模块的寄存器内的运行状态值,以获取服务器的运行状态。
9.根据权利要求6所述的一种通过BMC保存服务器上下电记录的方法,其特征在于,所述第一预设时长的计算公式为:
Figure QLYQS_1
式中,
Figure QLYQS_2
为所述第一预设时长,单位为s;/>
Figure QLYQS_3
为所述平均维持开机时长,单位为s;/>
Figure QLYQS_4
为第一系数,为正整数;
所述第二预设时长的计算公式为:
Figure QLYQS_5
式中,
Figure QLYQS_6
为所述第二预设时长,单位为s;/>
Figure QLYQS_7
为第二系数,为正整数。
CN202310420170.4A 2023-04-19 2023-04-19 一种通过bmc保存服务器上下电记录的方法 Active CN116149957B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310420170.4A CN116149957B (zh) 2023-04-19 2023-04-19 一种通过bmc保存服务器上下电记录的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310420170.4A CN116149957B (zh) 2023-04-19 2023-04-19 一种通过bmc保存服务器上下电记录的方法

Publications (2)

Publication Number Publication Date
CN116149957A CN116149957A (zh) 2023-05-23
CN116149957B true CN116149957B (zh) 2023-06-20

Family

ID=86350988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310420170.4A Active CN116149957B (zh) 2023-04-19 2023-04-19 一种通过bmc保存服务器上下电记录的方法

Country Status (1)

Country Link
CN (1) CN116149957B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760749B (zh) * 2023-08-15 2023-10-17 湖南博匠信息科技有限公司 一种通过bmc定位服务器物理位置的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104571442A (zh) * 2015-01-26 2015-04-29 浪潮电子信息产业股份有限公司 一种基于power平台的内存板上电时序的控制方法
CN110609778A (zh) * 2019-08-16 2019-12-24 苏州浪潮智能科技有限公司 一种保存服务器宕机日志的方法及系统
CN111752776A (zh) * 2020-05-29 2020-10-09 苏州浪潮智能科技有限公司 一种服务器的循环上下电测试方法和系统
CN112463226A (zh) * 2020-11-12 2021-03-09 苏州浪潮智能科技有限公司 一种服务器的启动控制方法、系统、设备及存储介质
CN113127302A (zh) * 2021-04-16 2021-07-16 山东英信计算机技术有限公司 一种板卡gpio的监控方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8397053B2 (en) * 2010-02-03 2013-03-12 Inventec Corporation Multi-motherboard server system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104571442A (zh) * 2015-01-26 2015-04-29 浪潮电子信息产业股份有限公司 一种基于power平台的内存板上电时序的控制方法
CN110609778A (zh) * 2019-08-16 2019-12-24 苏州浪潮智能科技有限公司 一种保存服务器宕机日志的方法及系统
CN111752776A (zh) * 2020-05-29 2020-10-09 苏州浪潮智能科技有限公司 一种服务器的循环上下电测试方法和系统
CN112463226A (zh) * 2020-11-12 2021-03-09 苏州浪潮智能科技有限公司 一种服务器的启动控制方法、系统、设备及存储介质
CN113127302A (zh) * 2021-04-16 2021-07-16 山东英信计算机技术有限公司 一种板卡gpio的监控方法和装置

Also Published As

Publication number Publication date
CN116149957A (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
US10429914B2 (en) Multi-level data center using consolidated power control
US20190113960A1 (en) Power management method of a system made of devices powered over data cable
CN101071392B (zh) 用于维护服务器固件的备份副本的方法和多服务器系统
US20060041767A1 (en) Methods, devices and computer program products for controlling power supplied to devices coupled to an uninterruptible power supply (UPS)
US20150115711A1 (en) Multi-level data center consolidated power control
CN116149957B (zh) 一种通过bmc保存服务器上下电记录的方法
US8943191B2 (en) Detection of an unresponsive application in a high availability system
CN113742066A (zh) 一种用于服务器集群的负载均衡系统和方法
CN111694707A (zh) 一种小型服务器集群管理系统及方法
EP1476821A1 (en) Remote sensing of power supply states
CN111984471B (zh) 一种机柜电源bmc冗余管理系统及方法
JP3653335B2 (ja) コンピュータ管理システム
CN114356699A (zh) 一种嵌入式设备告警方法、装置、设备及存储介质
CN115562900B (zh) Amd服务器系统安装断电处理方法、装置、设备及介质
CN111459768A (zh) 一种硬盘管理方法、装置、设备及机器可读存储介质
US7418613B2 (en) Power supply control method, power supply control unit and information processing apparatus
CN113900718A (zh) 一种bmc与bios资产信息的解耦方法、系统及装置
CN113741656A (zh) 一种基于vpx架构的机箱管理系统及方法
CN111414267A (zh) 运用于数据中心的机柜异常状态的远端排除方法
CN113923142A (zh) 一种物联网设备状态监测的方法、系统及介质
CN111416721A (zh) 运用于数据中心的机柜异常状态的远端排除方法
CN111414274A (zh) 运用于数据中心的机柜异常状态的远端排除方法
CN112987701A (zh) 一种基于vpx系统的ipmc远程控制调试方法及系统
CN112953788A (zh) 一种网络状态检测方法、装置、bmc及存储介质
JP3190880B2 (ja) スタンバイシステム、スタンバイ方法、および記録媒体

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant