CN116860340A - 基于基板管理控制器的标识的服务器启动时间确定方法 - Google Patents

基于基板管理控制器的标识的服务器启动时间确定方法 Download PDF

Info

Publication number
CN116860340A
CN116860340A CN202310826786.1A CN202310826786A CN116860340A CN 116860340 A CN116860340 A CN 116860340A CN 202310826786 A CN202310826786 A CN 202310826786A CN 116860340 A CN116860340 A CN 116860340A
Authority
CN
China
Prior art keywords
management controller
baseboard management
server
starting
identification
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.)
Granted
Application number
CN202310826786.1A
Other languages
English (en)
Other versions
CN116860340B (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.)
Hexin Technology Co ltd
Hexin Technology Suzhou Co ltd
Original Assignee
Hexin Technology Co ltd
Hexin Technology Suzhou 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 Hexin Technology Co ltd, Hexin Technology Suzhou Co ltd filed Critical Hexin Technology Co ltd
Priority to CN202310826786.1A priority Critical patent/CN116860340B/zh
Publication of CN116860340A publication Critical patent/CN116860340A/zh
Application granted granted Critical
Publication of CN116860340B publication Critical patent/CN116860340B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Sources (AREA)

Abstract

本申请提供的基于基板管理控制器的标识的服务器启动时间确定方法,该方法应用于服务器所包含的基板管理控制器,该方法包括:响应于外部输入的供电信号,获取第一固件,并基于第一固件进行初始化处理;获取基板管理控制器的标识和第一启动信息;其中,第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;基板管理控制器的标识为基板管理控制器的唯一标识;根据基板管理控制器的标识和第一启动信息,确定服务器的启动时间。进而,通过服务器中的基板管理服务器的控制,结合预设的第一启动信息和基板管理控制器的标识,实现多服务器之间的自动的分批启动,进而避免了需要人为手动触发的复杂操作。

Description

基于基板管理控制器的标识的服务器启动时间确定方法
技术领域
本申请涉及服务器技术领域,尤其涉及一种基于基板管理控制器的标识的服务器启动时间确定方法。
背景技术
随着电子技术的不断发展,需要大量的服务器来对所产生的数据进行处理。当机房中包括的大量服务器同时启动时,容易对机房所对应的供电装置造成较大的供电压力,并且,容易导致服务器出现掉电等现象进而导致服务器无法正常启动。
相关技术中,可以采用人工手动触发的方式,分批次触发服务器启动,即,将人工手动控制的时间作为服务器启动的时间,以避免上述技术问题。然而,上述方式需要人工参与,需要耗费较多的人力。因此,亟需一种服务器自动分批启动的启动时间的确定方式。
发明内容
本申请提供的基于基板管理控制器的标识的服务器启动时间确定方法,用以解决相关技术中多台服务器分批启动需要人为手动分批触发的问题。
第一方面,本申请提供一种基于基板管理控制器的标识的服务器启动时间确定方法,所述方法应用于服务器中的基板管理控制器,所述方法包括:
响应于外部输入的供电信号,获取第一固件,并基于所述第一固件进行初始化处理;其中,所述供电信号用于为基板管理控制器进行供电;所述第一固件用于初始化所述基板管理控制器;
获取基板管理控制器的标识和第一启动信息;其中,所述第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;所述基板管理控制器的标识为基板管理控制器的唯一标识;
根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间。
在一种可能的实现方式中,获取基板管理控制器的标识和第一启动信息,包括:
根据预设地址信息,在所述基板管理控制器所包含的寄存器中获取所述基板管理控制器的标识;其中,所述预设地址信息用于指示所述基板管理控制器的标识的存储位置;
获取所述第一启动信息。
在一种可能的实现方式中,所述预设地址信息包括寄存器的偏移量和所述寄存器的名称;
根据预设地址信息,在所述基板管理控制器所包含的寄存器中获取所述基板管理控制器的标识,包括:
根据所述寄存器的偏移量,确定实际访问的寄存器的名称;
若确定所述寄存器的名称和所述实际访问的寄存器的名称相同,则在所述实际访问的寄存器中获取所述基板管理控制器的标识。
在一种可能的实现方式中,所述第一启动信息包括:实际总数量、多个分组信息;所述分组信息与启动批次总数量一一对应;所述分组信息中包括在所述分组信息对应的启动批次总数量下,基板管理控制器的标识和服务器启动批次二者之间的对应关系;所述启动批次总数量表征服务器启动时被划分的批次数量;所述实际总数量为所述服务器本次启动过程中实际使用的启动批次总数量;
根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间,包括:
确定所述实际总数量所对应的分组信息;并根据所述实际总数量对应的分组信息和所述基板管理控制器的标识,确定所述服务器的服务器启动批次;
根据所述服务器对应的启动批次,确定所述服务器的启动时间。
在一种可能的实现方式中,根据所述实际总数量对应的分组信息和所述基板管理控制器的标识,确定所述服务器对应的启动批次,包括:
提取所述基板管理控制器的标识中预定字节处所对应的字符取值;
根据所述字符取值和所述实际总数量对应的分组信息,确定所述服务器对应的启动批次。
在一种可能的实现方式中,所述方法还包括:
生成控制指令;其中,所述控制指令用于指示与所述基板管理控制器连接的处理器在所述启动时间控制所述服务器上电启动;
向所述处理器发送所述控制指令。
在一种可能的实现方式中,所述方法还包括:
获取供电装置的供电电压值;其中,所述供电装置用于为所述服务器供电;所述供电电压值为所述供电装置在所述服务器的启动时间所输出的电压值;
若所述供电电压值大于预设阈值,则输出提示信息;其中,所述提示信息用于提示调整所述服务器的服务器启动批次。
第二方面,本申请提供一种基于基板管理控制器的标识的服务器启动时间确定装置,所述装置应用于服务器中的基板管理控制器,所述装置包括:
第一获取单元,用于响应于外部输入的供电信号,获取第一固件;
处理单元,用于基于所述第一固件进行初始化处理;其中,所述供电信号用于为基板管理控制器进行供电;所述第一固件用于初始化所述基板管理控制器;
第二获取单元,用于获取基板管理控制器的标识和第一启动信息;其中,所述第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;所述基板管理控制器的标识为基板管理控制器的唯一标识;
确定单元,用于根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间。
在一种可能的实现方式中,第二获取单元,包括:
第一获取模块,用于根据预设地址信息,在所述基板管理控制器所包含的寄存器中获取所述基板管理控制器的标识;其中,所述预设地址信息用于指示所述基板管理控制器的标识的存储位置;
第二获取模块,用于获取所述第一启动信息。
在一种可能的实现方式中,所述预设地址信息包括寄存器的偏移量和所述寄存器的名称;第一获取模块具体用于:
根据所述寄存器的偏移量,确定实际访问的寄存器的名称;
若确定所述寄存器的名称和所述实际访问的寄存器的名称相同,则在所述实际访问的寄存器中获取所述基板管理控制器的标识。
在一种可能的实现方式中,所述第一启动信息包括:实际总数量、多个分组信息;所述分组信息与启动批次总数量一一对应;所述分组信息中包括在所述分组信息对应的启动批次总数量下,基板管理控制器的标识和服务器启动批次二者之间的对应关系;所述启动批次总数量表征服务器启动时被划分的批次数量;所述实际总数量为所述服务器本次启动过程中实际使用的启动批次总数量;
确定单元,包括:
第一确定模块,用于确定所述实际总数量所对应的分组信息;
第二确定模块,用于根据所述实际总数量对应的分组信息和所述基板管理控制器的标识,确定所述服务器的服务器启动批次;
第三确定模块,用于根据所述服务器对应的启动批次,确定所述服务器的启动时间。
在一种可能的实现方式中,第三确定模块,具体用于:
提取所述基板管理控制器的标识中预定字节处所对应的字符取值;
根据所述字符取值和所述实际总数量对应的分组信息,确定所述服务器对应的启动批次。
在一种可能的实现方式中,所述装置还包括:
生成单元,用于生成控制指令;其中,所述控制指令用于指示与所述基板管理控制器连接的处理器在所述启动时间控制所述服务器上电启动;
发送单元,用于向所述处理器发送所述控制指令。
在一种可能的实现方式中,所述装置还包括:
第三获取单元,用于获取供电装置的供电电压值;其中,所述供电装置用于为所述服务器供电;所述供电电压值为所述供电装置在所述服务器的启动时间所输出的电压值;
输出单元,用于若所述供电电压值大于预设阈值,则输出提示信息;其中,所述提示信息用于提示调整所述服务器的服务器启动批次。
第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面任一项所述的方法。
第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法。
第六方面,本申请提供一种基板管理控制器,所述基板管理控制器用于实现第一方面中任一项所述的方法。
第七方面,本申请提供一种服务器,所述服务器包括基板管理控制器;其中,所述基板管理控制器用于实现如第一方面中任一项所述的方法。
本申请提供的基于基板管理控制器的标识的服务器启动时间确定方法,该方法应用于服务器所包含的基板管理控制器,该方法包括:响应于外部输入的供电信号,获取第一固件,并基于所述第一固件进行初始化处理;其中,所述供电信号用于为基板管理控制器进行供电;所述第一固件用于初始化所述基板管理控制器;获取基板管理控制器的标识和第一启动信息;其中,所述第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;所述基板管理控制器的标识为基板管理控制器的唯一标识;根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间。通过服务器中的基板管理服务器的控制,结合预设的第一启动信息和基板管理控制器的标识,实现多服务器之间的分批启动,进而避免了多个服务器同时启动所导致的供电压力较大,服务器无法正常启动的现象。此外,本实施例中的启动方式无需依赖其余硬件设备,即可确保多台服务器自动的确定启动时间,并实现分批次启动,无需其余设备指定启动时间。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种基于基板管理控制器的标识的服务器启动时间确定方法的流程示意图;
图2为本申请实施例提供的一种基于基板管理控制器的标识的服务器启动时间确定方法的流程示意图;
图3为本申请实施例提供的一种服务器启动的流程示意图;
图4为本申请实施例所提供的一种基于基板管理控制器的标识的服务器启动时间确定装置的结构示意图;
图5为本申请实施例所提供的又一种基于基板管理控制器的标识的服务器启动时间确定装置的结构示意图;
图6为本申请实施例中提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与本申请的一些方面相一致的装置和方法的例子。
目前,随着信息技术的不断发展,在大规模的数据中心中通常配置有大量的服务器。当大量的服务器同时启动时,通常会对为服务器供电的供电***造成较大的供电压力,进而导致供电***所对应的供电对象(例如,上述服务器或者除服务器以外的其余设备)无法正常工作。
一个示例中,可以由人为手动控制服务器分批启动,然而,上述方式中当服务器数量较多时,容易导致耗费较多人力,且容易影响服务器的启动效率。
一个示例中,可以由一个管理设备统一控制多台服务器启动,例如,管理设备可以通过为每一服务器随机生成一个该服务器对应的随机数,通过对随机数进行分组的方式,随机控制多台服务器分组启动。然而,上述方式中,需要加入额外的管理设备来控制服务器启动,所需的硬件成本较高;且,管理设备还需要与大量的服务器进行开机指令等信息的传输,容易浪费通信资源。
本申请提供的基于基板管理控制器的标识的服务器启动时间确定方法,由服务器中所配置的基板管理控制器执行。当基板管理控制器上电初始化之后,可以根据预先设置的第一启动信息和基板管理器的标识,确定该服务器所处的启动批次的启动时间,进而,可以由服务器自动的实现多台服务器的分批启动,进而避免对供电***造成较大供电压力。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种基于基板管理控制器的标识的服务器启动时间确定方法的流程示意图,如图1所示,该方法包括以下步骤:
S101、响应于外部输入的供电信号,获取第一固件,并基于第一固件进行初始化处理;其中,供电信号用于为基板管理控制器进行供电;第一固件用于初始化基板管理控制器。
示例性地,本实施例中的服务器中设置有基板管理控制器(Baseboardmanagement controller,简称BMC),并且,本实施例所对应的执行主体为基板管理控制器,在基板管理控制器的控制下,可以实现服务器的自动分批启动。
具体地,当服务器中的BMC接收到外部输入的供电信号之后,BMC上电,并获取BMC所对应的第一固件,以便可以根据第一固件,初始化服务器中的BMC。例如,在BMC初始化的过程中可以为BMC分配一些服务器的内存资源,初始化配置与BMC的端口信息等,具体的初始化操作可以参见相关技术,此处不做赘述。
此外,本实施例中的第一固件可以存储在BMC中,也可以存储在与BMC连接的存储器中,此处不做具体限制。
S102、获取基板管理控制器的标识和第一启动信息;其中,第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;基板管理控制器的标识为基板管理控制器的唯一标识。
示例性地,本实施例中,为了确定服务器启动的时间,首先会获取BMC的标识和第一启动信息。具体地,基板管理控制器的标识为基板管理控制器所对应的唯一标志。需要说明的是,基板管理控制器的标识的获取方式本实施例中不做具体限制。例如,在一种可能的实现方式中,可以为写在第一固件中。当基板管理控制器获取到第一固件时,即可以在第一固件中查找到预先写入的基板管理控制器的标识。
此外,本实施例中的第一启动信息可以用于指示出基板管理控制器的标识和服务器启动批次二者之间的对应关系。其中,同一服务器启动批次所指示的服务器为同时启动的。在实际应用中,在设置上述第一启动信息时,第一启动信息中可以仅仅包括一种服务器启动批次的划分方式。例如,第一启动信息表征多个服务器被划分为了N个服务器启动批次,并且还包括有每一服务器启动批次所对应的基板管理控制器的标识。此外,服务器启动批次和基板管理控制器的标识之间的对应关系,具体地可以为服务器启动批次和基板管理控制器的标识对应的取模结果之间的对应关系,即需要先对标识进行取模处理,并根据取模后的结果再确定标识对应的服务器启动批次;或者是服务器启动批次、基板管理控制器的标识和预设值的求差结果二者之间的对应关系,本实施例中不做具体限制。
S103、根据基板管理控制器的标识和第一启动信息,确定服务器的启动时间。
示例性地,当获取到基板管理控制器的标识和第一启动信息之后,可以根据第一启动信息所指示的对应关系,以及当前所获取到的标识,确定出当前所获取到的基板管理控制器的标识所对应的服务器启动批次。之后,再根据服务器启动批次,确定服务器所对应的启动时间。
一个示例中,确定服务器所对应的启动时间时,可以通过查询预设的时间表,确定出服务器本次需要滞后的时间。其中,预设的时间表中记录有每一服务器启动批次所对应的滞后时间。并将滞后时间和当前时间求和之后,即可确定出服务器的启动时间。
又或者,在获取到服务器启动批次之后,若确定是第一服务器启动批次的服务器,则此时可以将当前时间作为启动时间。第二服务器启动批次的服务器可以根据接收到第一服务器启动批次的服务器发送的启动完成指令的时间加上预设间隔所得到的时间为第二服务器启动批次所对应的启动时间。即,第一服务器启动批次的服务器启动完成后会向第二服务器启动批次的服务器发送启动完成指令,以便第二服务器启动批次的服务器确定自身的启动时间。
可以理解的是,本实施例中,通过服务器中的基板管理服务器的控制,结合预设的第一启动信息和基板管理控制器的标识,实现多服务器之间的分批启动,进而避免了多个服务器同时启动所导致的供电压力较大,服务器无法正常启动的现象。此外,本实施例中的启动方式无需依赖其余硬件设备,即可确保多台服务器自动的分批次启动。
图2为本申请实施例提供的一种基于基板管理控制器的标识的服务器启动时间确定方法的流程示意图,如图2所示,该方法包括以下步骤:
S201、响应于外部输入的供电信号,获取第一固件,并基于第一固件进行初始化处理;其中,供电信号用于为基板管理控制器进行供电;第一固件用于初始化基板管理控制器。
示例性地,步骤S201可以参见步骤S101,此处不再赘述。
S202、根据预设地址信息,在基板管理控制器所包含的寄存器中获取基板管理控制器的标识;其中,预设地址信息用于指示基板管理控制器的标识的存储位置;基板管理控制器的标识为基板管理控制器的唯一标识。
示例性地,本实施例中,基板管理控制器的标识存储在基板管理控制器内置的寄存器中。预设地址信息可以用于指示出上述基板管理控制器的标识在基板管理控制器中的存储位置,例如,在实际应用中预设地址信息中仅包括有标识所对应的寄存器的地址信息。当基板管理控制器需要获取自身的标识时,此时,基板管理控制器可以根据上述预设地址信息直接在自身所对应的寄存器中获取其所对应的标识。进而,获取自身寄存器中所内置存储的标识时,基板管理控制器无需与其所连接的其余器件(其余存储基板管理控制器的标识的器件)进行数据交互,进而可以避免基板管理控制器与其余器件连接出现故障时,或者其余器件出现故障时,无法获取到标识的现象。
一个示例中,预设地址信息包括寄存器的偏移量和寄存器的名称;在执行步骤S202时可以通过以下步骤实现:“根据寄存器的偏移量,确定实际访问的寄存器的名称;若确定寄存器的名称和实际访问的寄存器的名称相同,则在实际访问的寄存器中获取基板管理控制器的标识。”
示例性地,本实施例中,预设地址信息中包括有寄存器的偏移量。其中,寄存器的偏移量可以用于指示出用于存储基板管理控制器的标识所对应的位置信息。此外,预设地址信息中还包括有寄存器的名称。其中,寄存器的名称可以理解为存储基板管理控制器的标识的寄存器所对应的标识。
当基板管理控制器获取其所对应的标识时,首先可以根据预设地址信息中的寄存器的偏移量,确定出实际所访问的寄存器。并进一步的确定实际所访问的寄存器的名称,例如,可以通过访问该寄存器所对应的配置信息获取实际所访问的寄存器的名称。之后,进一步的可以将实际所访问的寄存器的名称和预设地址信息中所包含的寄存器的名称进行比对,若二者一致,则表征本次访问的寄存器准确,之后再进一步的从寄存器中获取基板管理控制器的标识。
可以理解的是,本实施例中,在获取基板管理控制器的标识时,可以通过对实际访问的寄存器的名称进行进一步核验,以便确保最终可以准确的获取到基板管理控制器的标识,以确保服务器后续分批启动的准确性。
S203、获取第一启动信息;第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系。
示例性地,步骤S203可以参见步骤S102,此处不再赘述。
S204、确定实际总数量所对应的分组信息;并根据实际总数量对应的分组信息和基板管理控制器的标识,确定服务器的服务器启动批次;其中,第一启动信息包括:实际总数量、多个分组信息;分组信息与启动批次总数量一一对应;分组信息中包括在分组信息对应的启动批次总数量下,基板管理控制器的标识和服务器启动批次二者之间的对应关系;启动批次总数量表征服务器启动时被划分的批次数量;实际总数量为服务器本次启动过程中实际使用的启动批次总数量;
示例性地,本实施例中,第一启动信息中包括有多个分组信息,即,可以理解为第一启动信息中包括有多个分组划分方式。例如,一个分组信息表征将多个服务器划分为2个批次(即,启动批次总数量为2);另一个分组信息表征将多个服务器划分为3个批次(即,启动批次总数量为3),并且一个启动批次总数量对应一个分组信息。并且,在分组信息中具体包括有如何根据多台服务器各自所对应的基板管理控制器的标识,将多台服务器划分多个批次(其中,划分后的批次数量和该分组信息所敌营的启动批次总数量相同)。也就是说,分组信息中包括有在该分组信息所对应的启动批次总数量下,基板管理控制器的标识和服务器的启动批次之间的对应关系。
此外,在第一启动信息中还包括有服务器本次启动时,多台服务器实际所划分的批次的总数量(即上述实际总数量)。在实际应用中,实际总数量可以为预先设置固定好的取值,也可以为服务器根据当前需要启动的服务器的总数量所对应的划分批次总数量,本实施例中不做具体限定。
当基板管理控制器获取到上述第一启动信息之后,首先可以根据第一启动信息中所包含实际总数量,确定出与实际总数量对应的分组信息。之后,再根据基板管理控制器所获取到的标识,和本次所确定出的实际总数量对应的分组信息,进一步的确定出基板管理控制器的标识所对应的启动批次;也就是包括该基板管理控制器的服务器所对应的服务器启动批次。
一个示例中,在执行上述步骤中的“根据实际总数量对应的分组信息和基板管理控制器的标识,确定服务器对应的启动批次”时,可以通过以下步骤实现:“提取基板管理控制器的标识中预定字节处所对应的字符取值;根据字符取值和实际总数量对应的分组信息,确定服务器对应的启动批次。”
示例性地,本实施例中,基板管理控制器的标识由多个字符组成。并且,分组信息所指示的对应关系具体为基板管理控制器的标识中的指定字节所对应的字符值和启动批次之间的对应关系。
当基板管理控制器获取到基板管理控制器的标识时,首先可以将预定字节处的字符提取出来,之后,根据提取出的字符值和所确定出的实际总数量对应的分组信息,确定服务器所对应的启动批次。
可以理解的是,本实施例中的分组信息具体为基板管理控制器标识中的预定字节处的字符和启动批次的对应关系,相比于直接将每一标识所对应的启动批次作为对应关系存储下来的方式,可以减少数据的存储量。并且,本实施例中,相比于需要对基板管理控制器的标识进行取模等处理进一步确定启动批次的方法,直接提取预定字节的字符的方式简单容易实现,无需利用较多的计算资源。
S205、根据服务器对应的启动批次,确定服务器的启动时间。
示例性地,基板管理控制器可以根据确定出的启动批次,进一步确定出服务器的启动时间。举例来说,在基板管理控制器中还可以设置有启动批次总数量和启动总时长之间的对应关系,其中,启动批次总时长可以理解为第一批服务器启动到最后一批服务器启动的耗时。在确定服务器的启动时间时,此时,首先可以获取实际总数量所对应的启动总时长,之后,再根据得到的启动总时长和该服务器所对应的启动批次,确定出服务器所对应的启动时间。或者,也可以预先设置相邻两个服务器启动批次之间的时间间隔,当任意两个批次间的时间间隔相同时,此时可以将确定出服务器对应的启动批次减1之后的求差结果和预设时间间隔相乘的方式,确定服务器需要等待启动的时间间隔,之后,再根据当前时间和需要等待启动的时间间隔,确定服务器的启动时间。
可以理解的是,本实施例中,在第一启动信息中包括有多个分组信息,有利于后续可以通过改变第一启动信息中的实际总数量的取值,进而改变基板管理控制器的标识和启动批次之间的对应关系。例如,当基板管理控制器在运行过程中监测到机房中的服务器出现服务器增减时,基板管理控制器则可以对应的调整上述实际总数量的取值,或者,也可以由维护人员进行修改,相比于需要重新设置对应关系的方式,仅调整实际总数量的方式可以提高修改效率。
S206、生成控制指令;其中,控制指令用于指示与基板管理控制器连接的处理器在启动时间控制服务器上电启动。
示例性地,本实施例中,在服务器中还设置有于基板管理控制器连接处理器。其中,处理器可以具体用于控制完成上电启动的处理过程。当基板管理控制器确定出启动时间之后,生成携带有上述启动时间的控制指令,进而,以控制处理器在启动时间到达时控制服务器上电启动。
S207、向处理器发送控制指令。
示例性地,当基板管理控制器生成控制指令之后,可以将生成的控制指令发送至处理器。在实际应用中,基板管理控制器向处理器发送控制指令时,可以根据二者之间预先设置的数据传输格式进行发送。当处理器接收到基板管理控制器发送的控制指令之后,进一步的也可以向基板管理控制器反馈已接收到控制指令的接收结果。
一个示例中,当基板管理控制器未接收到处理器所发送的控制指令时,可以立即发出警告信息,以提示当前服务器出现故障,例如,可能是处理器本身出现故障,也可能是二者连接上出现故障等。
可以理解的是,本实施例中,在基板管理控制器确定出启动时间之后,进一步的可以立即生成控制指令,并向处理器发送上述控制指令,进而以便控制服务器可以完成分批上电启动。此外,由于本实施例中为确定出启动时间之后,直接向处理器发送的控制指令,进而可以基于判断处理器是否反馈上述接收结果的方式,及时发现服务器中是否存在故障的现象。
S208、获取供电装置的供电电压值;其中,供电装置用于为服务器供电;供电电压值为供电装置在服务器的启动时间所输出的电压值。
示例性地,本实施例中,供电装置可以理解为用于为多个服务器供电的设备。在实际应用中,随着数据处理需求的增加,对应的数据中心或者单个机房中的服务器数量也会不断增加,为了避免服务器数量增加时,单一启动批次所对应的服务器的数量增多的现象,当服务器正常上电工作之后,基板管理控制器还可以进一步获取在服务器上电启动时(即,在服务器对应的启动时间时),供电装置所对应输出的供电电压值。其中,供电装置的供电电压值可以为基板管理控制器从供电装置处所获取的。
S209、若供电电压值大于预设阈值,则输出提示信息;其中,提示信息用于提示调整服务器的服务器启动批次。
示例性地,基板管理控制器可以将获取到的供电电压值和预设阈值进行比较,若供电电压值小于等于预设阈值,则表征该服务器所处启动批次的多台服务器共同启动时,不会对供电装置造成较大的供电压力。若供电电压值大于预设阈值时,此时,则有可能对服务器造成较大的供电压力,因此,可以提前输出提示信息,以提示调整该服务器所对应的启动批次。
本实施例中,对于提示信息具体输出形式不做限制,例如,可以采用语音、文字、等光等方式进行提示,以便提示调整服务器的分批。举例来说,在输出提示信息时,在提示信息中可以当前服务器所处的启动批次,以及当前所采取的基板管理控制器的标识和启动批次之间的对应关系以及所获取到的供电电压值,以便后续用户进一步判断是否需要进行分批的调整。或者,基板管理控制器在输出提示信息的同时,也可以自动的增大第一启动信息中所包含的实际总数量的取值,进而得到调整后的取值。之后,可以将所得到的实际总数量的取值广播发送至其余全部服务器,以便其余服务器也可以将调整后的取值作为后续启动时所对应的实际划分批次的总数量。
可以理解的是,本实施例中,服务器启动之后,基板管理控制器还会获取本次启动时所对应的供电装置所输出的供电电压值,以避免随着服务器数量的不断增加,而导致同一启动批次中的服务器数量也增加的现象。
本实施例中,在基板管理控制器获取自身寄存器中所内置存储的标识时,基板管理控制器无需与其所连接的其余器件(其余存储基板管理控制器的标识的器件)进行数据交互,可直接从基板管理控制器所内置的寄存器中获取,进而可以避免基板管理控制器与其余器件连接出现故障时,或者其余器件出现故障时,无法获取到标识的现象。此外,在获取基板管理控制器的标识时,可以通过对实际访问的寄存器的名称进行进一步核验,以便确保最终可以准确的获取到基板管理控制器的标识,以确保服务器后续分批启动的准确性。此外,在第一启动信息中可以设置多个分组信息,且每一分组信息对应一个启动批次总数量,有利于后续可以通过改变第一启动信息中的实际总数量的取值,进而改变基板管理控制器的标识和启动批次之间的对应关系。此外,分组信息所表征的标识和启动批次之间的对应关系,具体为基板管理控制器标识中的预定字节处的字符和启动批次的对应关系,相比于直接将每一标识所对应的启动批次作为对应关系存储下来的方式,可以减少数据的存储量。
举例来说,如下表格为多组分组信息的一种表示形式。
表1为本实施例所提供的分组信息的举例说明。
当基板管理控制器的标识包括64位二进制的字符时,例如,基板管理控制器的标识可以采用如下格式表征:“XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX_XXXX”,其中,一个符号“X”表征一个二进制的字符。
由于基板管理设备的标识为唯一的,且基板管理设备的标识具有连续性,则此时可以挑选64位二进制数值中的后4位,进行分组信息的设置。
在上述表1中,第一列数据用于表征管理控制器的标识的后4位所对应的多种取值方式。第二列数据表征当多台服务器被划分为16个批次时,此时,各个标识后4位字符各自所对应的启动批次。同样地,第三列数据表征当多台服务器被划分为8个批次时,此时,各个标识后4位字符各自所对应的启动批次。
需要说明的是,通过上述选择后4位字符的划分方式,由于标识后4位为依次递增的,在大量服务器所对应的标识中,每一种后4位出现的概率基本相同,通过上述划分方式可以避免同一批次的启动服务器数量过多的现象。
图3为本申请实施例提供的一种服务器启动的流程示意图。当服务器接收到外部供电信号之后,服务器中的基板管理控制器BMC首先会执行上电初始化步骤。之后,基板管理控制器可以获取基板管理控制器所对应的标识,并获取第一启动信息和预设时间间隔(此处的时间间隔可以为任意两组批次之间的间隔,本实施例不做限定)。之后,基板管理控制器再根据上述获取到的信息,确定需要延时的延时时间,即,服务器需要等待多久之后才可以执行服务器上电启动的流程。在基板管理控制器确定除延时时间之后,可以有基板管理控制器(或者于基板管理控制器连接的服务器所包含的处理器)进行延时计数处理,即,持续判断等待时长是否达到所确定出的延时时间,若确定延时完成,则进一步的处理器可执行服务器上电启动流程。
图4为本申请实施例所提供的一种基于基板管理控制器的标识的服务器启动时间确定装置的结构示意图,装置应用于服务器中的基板管理控制器,装置包括:
第一获取单元401,用于响应于外部输入的供电信号,获取第一固件。
处理单元402,用于基于第一固件进行初始化处理;其中,供电信号用于为基板管理控制器进行供电;第一固件用于初始化基板管理控制器。
第二获取单元403,用于获取基板管理控制器的标识和第一启动信息;其中,第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;基板管理控制器的标识为基板管理控制器的唯一标识。
确定单元404,用于根据基板管理控制器的标识和第一启动信息,确定服务器的启动时间。
本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。
图5为本申请实施例所提供的又一种基于基板管理控制器的标识的服务器启动时间确定装置的结构示意图,该装置应用于服务器中的基板管理控制器,在图4所对应的装置结构的基础上,本实施例中的第二获取单元403,包括:
第一获取模块4031,用于根据预设地址信息,在基板管理控制器所包含的寄存器中获取基板管理控制器的标识;其中,预设地址信息用于指示基板管理控制器的标识的存储位置;
第二获取模块4032,用于获取第一启动信息。
在一种可能的实现方式中,预设地址信息包括寄存器的偏移量和寄存器的名称;第一获取模块4031具体用于:
根据寄存器的偏移量,确定实际访问的寄存器的名称;
若确定寄存器的名称和实际访问的寄存器的名称相同,则在实际访问的寄存器中获取基板管理控制器的标识。
在一种可能的实现方式中,第一启动信息包括:实际总数量、多个分组信息;分组信息与启动批次总数量一一对应;分组信息中包括在分组信息对应的启动批次总数量下,基板管理控制器的标识和服务器启动批次二者之间的对应关系;启动批次总数量表征服务器启动时被划分的批次数量;实际总数量为服务器本次启动过程中实际使用的启动批次总数量;
确定单元404,包括:
第一确定模块4041,用于确定实际总数量所对应的分组信息;
第二确定模块4042,用于根据实际总数量对应的分组信息和基板管理控制器的标识,确定服务器的服务器启动批次;
第三确定模块4043,用于根据服务器对应的启动批次,确定服务器的启动时间。
在一种可能的实现方式中,第三确定模块4043,具体用于:
提取基板管理控制器的标识中预定字节处所对应的字符取值;
根据字符取值和实际总数量对应的分组信息,确定服务器对应的启动批次。
在一种可能的实现方式中,装置还包括:
生成单元405,用于生成控制指令;其中,控制指令用于指示与基板管理控制器连接的处理器在启动时间控制服务器上电启动;
发送单元406,用于向处理器发送控制指令。
在一种可能的实现方式中,装置还包括:
第三获取单元407,用于获取供电装置的供电电压值;其中,供电装置用于为服务器供电;供电电压值为供电装置在服务器的启动时间所输出的电压值;
输出单元408,用于若供电电压值大于预设阈值,则输出提示信息;其中,提示信息用于提示调整服务器的服务器启动批次。
本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。
本申请提供一种电子设备,包括:处理器,以及与处理器通信连接的存储器;其中,存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,以实现如上述任一实施例所提供的方法。
图6为本申请实施例中提供的一种电子设备的结构示意图,如图6所示,该电子设备包括:
处理器(processor)291,电子设备还包括了存储器(memory)292;还可以包括通信接口(Communication Interface)293和总线294。其中,处理器291、存储器292、通信接口293、可以通过总线294完成相互间的通信。通信接口293可以用于信息传输。处理器291可以调用存储器292中的逻辑指令,以执行上述实施例的方法。
此外,上述的存储器292中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器292作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例中的方法对应的程序指令/模块。处理器291通过运行存储在存储器292中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器292可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器292可以包括高速随机存取存储器,还可以包括非易失性存储器。
本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述实施例所提供任一项的方法。
本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现任一项的方法。
本申请提供一种基板管理控制器,基板管理控制器用于实现上述实施例所提供的任一项方法。
本申请提供一种服务器,其中,服务器中包括有基板管理控制器,基板管理控制器用于实现上述实施例所提供的任一项方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由所附的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种基于基板管理控制器的标识的服务器启动时间确定方法,其特征在于,所述方法应用于服务器中的基板管理控制器,所述方法包括:
响应于外部输入的供电信号,获取第一固件,并基于所述第一固件进行初始化处理;其中,所述供电信号用于为基板管理控制器进行供电;所述第一固件用于初始化所述基板管理控制器;
获取基板管理控制器的标识和第一启动信息;其中,所述第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;所述基板管理控制器的标识为基板管理控制器的唯一标识;
根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间。
2.根据权利要求1所述的方法,其特征在于,获取基板管理控制器的标识和第一启动信息,包括:
根据预设地址信息,在所述基板管理控制器所包含的寄存器中获取所述基板管理控制器的标识;其中,所述预设地址信息用于指示所述基板管理控制器的标识的存储位置;
获取所述第一启动信息。
3.根据权利要求2所述的方法,其特征在于,所述预设地址信息包括寄存器的偏移量和所述寄存器的名称;
根据预设地址信息,在所述基板管理控制器所包含的寄存器中获取所述基板管理控制器的标识,包括:
根据所述寄存器的偏移量,确定实际访问的寄存器的名称;
若确定所述寄存器的名称和所述实际访问的寄存器的名称相同,则在所述实际访问的寄存器中获取所述基板管理控制器的标识。
4.根据权利要求1所述的方法,其特征在于,所述第一启动信息包括:实际总数量、多个分组信息;所述分组信息与启动批次总数量一一对应;所述分组信息中包括在所述分组信息对应的启动批次总数量下,基板管理控制器的标识和服务器启动批次二者之间的对应关系;所述启动批次总数量表征服务器启动时被划分的批次数量;所述实际总数量为所述服务器本次启动过程中实际使用的启动批次总数量;
根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间,包括:
确定所述实际总数量所对应的分组信息;并根据所述实际总数量对应的分组信息和所述基板管理控制器的标识,确定所述服务器的服务器启动批次;
根据所述服务器对应的启动批次,确定所述服务器的启动时间。
5.根据权利要求4所述的方法,其特征在于,根据所述实际总数量对应的分组信息和所述基板管理控制器的标识,确定所述服务器对应的启动批次,包括:
提取所述基板管理控制器的标识中预定字节处所对应的字符取值;
根据所述字符取值和所述实际总数量对应的分组信息,确定所述服务器对应的启动批次。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
生成控制指令;其中,所述控制指令用于指示与所述基板管理控制器连接的处理器在所述启动时间控制所述服务器上电启动;
向所述处理器发送所述控制指令。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
获取供电装置的供电电压值;其中,所述供电装置用于为所述服务器供电;所述供电电压值为所述供电装置在所述服务器的启动时间所输出的电压值;
若所述供电电压值大于预设阈值,则输出提示信息;其中,所述提示信息用于提示调整所述服务器的服务器启动批次。
8.一种基于基板管理控制器的标识的服务器启动时间确定装置,其特征在于,所述装置应用于服务器中的基板管理控制器,所述装置包括:
第一获取单元,用于响应于外部输入的供电信号,获取第一固件;
处理单元,用于基于所述第一固件进行初始化处理;其中,所述供电信号用于为基板管理控制器进行供电;所述第一固件用于初始化所述基板管理控制器;
第二获取单元,用于获取基板管理控制器的标识和第一启动信息;其中,所述第一启动信息用于指示基板管理控制器的标识与服务器启动批次之间的对应关系;所述基板管理控制器的标识为基板管理控制器的唯一标识;
确定单元,用于根据所述基板管理控制器的标识和所述第一启动信息,确定所述服务器的启动时间。
9.一种服务器,其特征在于,包括:基板管理控制器;所述基板管理控制器用于实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-7中任一项所述的方法。
CN202310826786.1A 2023-07-06 2023-07-06 基于基板管理控制器的标识的服务器启动时间确定方法 Active CN116860340B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310826786.1A CN116860340B (zh) 2023-07-06 2023-07-06 基于基板管理控制器的标识的服务器启动时间确定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310826786.1A CN116860340B (zh) 2023-07-06 2023-07-06 基于基板管理控制器的标识的服务器启动时间确定方法

Publications (2)

Publication Number Publication Date
CN116860340A true CN116860340A (zh) 2023-10-10
CN116860340B CN116860340B (zh) 2024-06-11

Family

ID=88235328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310826786.1A Active CN116860340B (zh) 2023-07-06 2023-07-06 基于基板管理控制器的标识的服务器启动时间确定方法

Country Status (1)

Country Link
CN (1) CN116860340B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480386A (zh) * 2010-11-29 2012-05-30 英业达股份有限公司 伺服器机柜***及其启动方法、伺服器启动方法
CN112947733A (zh) * 2021-03-29 2021-06-11 联想(北京)信息技术有限公司 一种控制方法、服务器及控制终端
CN114205208A (zh) * 2021-11-05 2022-03-18 苏州浪潮智能科技有限公司 一种基于远端的服务器批量启动方法、装置、设备及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480386A (zh) * 2010-11-29 2012-05-30 英业达股份有限公司 伺服器机柜***及其启动方法、伺服器启动方法
CN112947733A (zh) * 2021-03-29 2021-06-11 联想(北京)信息技术有限公司 一种控制方法、服务器及控制终端
CN114205208A (zh) * 2021-11-05 2022-03-18 苏州浪潮智能科技有限公司 一种基于远端的服务器批量启动方法、装置、设备及介质

Also Published As

Publication number Publication date
CN116860340B (zh) 2024-06-11

Similar Documents

Publication Publication Date Title
US8874953B2 (en) System and method of cloud testing and remote monitoring for integrated circuit components in system validation
CN103324495A (zh) 数据中心服务器开机管理方法及***
EP3489825A1 (en) Method, apparatus and computer readable storage medium for processing service
CN111124508A (zh) 一种调整网卡pxe启动顺序的方法和装置
CN112527397A (zh) 基本输入输出***选项的修改方法、装置和计算机设备
CN111541762B (zh) 数据处理的方法、管理服务器、设备及存储介质
CN109413223A (zh) 服务器bmc网口ip地址配置方法、装置、设备及介质
CN115941464A (zh) 智能网卡供电状态控制方法、装置、电子设备和存储介质
CN111078353A (zh) 存储设备的操作方法及物理服务器
CN116431202A (zh) 一种基于微服务***的无损发版方法、装置和电子设备
CN116860340B (zh) 基于基板管理控制器的标识的服务器启动时间确定方法
CN112947733A (zh) 一种控制方法、服务器及控制终端
CN112463610A (zh) 一种测试过程控制方法及装置
CN115629825B (zh) 一种服务器及其资产信息获取方法、提供方法和装置
CN111309389A (zh) 一种基于bios的多用户管理方法及***
CN114020344B (zh) 一种总线资源预留方法、装置、设备及存储介质
CN115933591A (zh) 一种控制器诊断方法、装置、设备和存储介质
CN115333933A (zh) 一种机房上架的服务器的自动管理方法、介质及设备
CN114442780A (zh) 服务器***随机延时的上电方法及装置
CN116680010B (zh) 基于存储器的标识的服务器启动方法及装置
CN111124890B (zh) 一种分布式数据库性能测试方法、***、终端及存储介质
CN108595193B (zh) 用于风扇转速控制的基板管理控制器固件更新方法
CN107515746B (zh) 开机初始化方法、装置、电子设备及计算机存储介质
CN116860339B (zh) 基于mac地址信息的服务器启动方法、装置及设备
CN111581558A (zh) 页面加载时长的确定方法、装置、设备及存储介质

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