CN116700801A - 配置信息的管理方法、装置及服务器 - Google Patents

配置信息的管理方法、装置及服务器 Download PDF

Info

Publication number
CN116700801A
CN116700801A CN202210908371.4A CN202210908371A CN116700801A CN 116700801 A CN116700801 A CN 116700801A CN 202210908371 A CN202210908371 A CN 202210908371A CN 116700801 A CN116700801 A CN 116700801A
Authority
CN
China
Prior art keywords
configuration information
server
component
bmc
management device
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.)
Pending
Application number
CN202210908371.4A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to PCT/CN2023/108352 priority Critical patent/WO2024022212A1/zh
Publication of CN116700801A publication Critical patent/CN116700801A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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
    • 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

Abstract

一种配置信息的管理方法,应用于包括管理装置的服务器,包括:管理装置获取第一配置信息和第二配置信息;校验第一配置信息和第二配置信息的一致性,获得一致性校验结果;根据一致性校验结果启动服务器。其中,第一配置信息为服务器的基板管理控制器BMC存储的配置信息,第二配置信息为第一时刻对服务器的配置信息进行备份的备份。该方法通过在服务器的BMC和BMC可访问的存储空间中均存储有服务器的配置信息,从而在BMC或服务器的其他组件被更换,服务器也能够正常启动。

Description

配置信息的管理方法、装置及服务器
本申请要求于2022年02月28日提交国家知识产权局、申请号为202210186793.5、申请名称为“设备管理的方法和相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,尤其涉及一种配置信息的管理方法、装置及服务器。
背景技术
由于服务器整机的资源分配和管理均依赖于硬件拓扑,因此,服务器整机中每增加一个硬件配置,服务器的基板控制器(baseboard management controller,BMC)和基本输入输出系统(basic input output system,BIOS)通常都需要针对服务器整机的最新硬件配置重新进行适配和开发。
为实现服务器硬件配置和软件设计的解耦,当前的解决方案为将服务器的配置信息存储于服务器的某个组件中,例如存储于服务器的BMC中。然而,当服务器的配置信息存储于BMC中,若BMC被更换,会导致新更换的BMC无法获取到服务器的配置信息,进而导致服务器无法正常启动。
发明内容
本申请提供了一种配置信息的管理方法、装置及服务器,该方法通过在服务器的BMC和BMC可访问的存储空间中均存储有服务器的配置信息,从而在BMC或服务器的其他组件被更换,服务器也能够正常启动。
第一方面,提供了一种配置信息的管理方法,该方法应用于包括管理装置的服务器,该方法由管理装置执行。该方法包括:获取第一配置信息和第二配置信息,其中,第一配置信息为服务器的BMC存储的服务器的配置信息,第二配置信息为第一时刻对服务器的配置信息进行备份的备份数据。校验第一配置信息和第二配置信息的一致性,获得一致性校验结果。根据一致性校验结果启动服务器。
通过本申请提供的方法,通过在服务器的BMC中存储服务器的配置信息,以及在服务器中备份该配置信息,从而在服务器的启动阶段,通过校验BMC中的配置信息和备份的配置信息的一致性,并基于一致性校验结果能够正常启动服务器。进而,当服务器的BMC和用于存储配置信息副本数据的服务器组件中的任一个被更换,通过本申请提供的方法能够避免服务器的BMC获取不到服务器的配置信息或获取到错误的服务器配置信息而导致的服务器无法正常启动的问题(或启动够性能低的问题)。
在一种可能的设计方式中,在上述获取第一配置信息和第二配置信息之前,上述方法还包括:在第一时刻,对服务器的配置信息执行备份,获得第二配置信息,第一时刻为服务器本次启动前的任一时刻,第二配置信息存储在BMC可访问的服务器的存储空间中。
通过该可能的设计方式,在本次启动服务器之前,服务器的BMC和BMC可访问的服务器存储空间中均实现运存服务器配置信息的目的。
在另一种可能的设计方式中,当上述服务器为新架构服务器时,BMC可访问的服务器的存储空间为服务器中组件的存储空间,这里,组件包括基础板和/或功能组件,功能组件包括存储组件、输入输出IO组件、加速组件、内存扩展组件、散热组件、供电组件、计算组件、管理组件中至少一种,BMC可访问的组件的存储空间为组件中的非易失性存储介质。
在另一种可能的设计方式中,当上述服务器为传统服务器时,BMC可访问的服务器的存储空间为设置于服务器主板上的非易失性存储介质。
通过在新架构服务器中除BMC外的任一个或多个组件的非易失性存储介质中存储服务器的配置信息的备份数据,或者在传统服务器的主板上的非易失性存储介质中存储配置信息的备份数据,使得即使服务器的BMC在服务器本次启动前被更换(如维修更换),而更换后的BMC也可以在服务器的本次启动过程中获取到主板或组件中存储的配置信息,从而BIOS可以从BMC中获取到配置信息以启动服务器。
在另一种可能的设计方式中,上述根据一致性校验结果启动服务器包括:当上述的一致性校验结果为第一配置信息和第二配置信息的一致性校验成功时,将第一配置信息或第二配置信息确定为目标配置信息。根据目标配置信息启动服务器。
在另一种可能的设计方式中,上述根据一致性校验结果启动服务器包括:当上述的一致性校验结果为第一配置信息和第二配置信息的一致性校验失败时,根据预设规则将第一配置信息或第二配置信息确定为目标配置信息。根据目标配置信息启动服务器。其中,预设规则用于指示将第一配置信息和第二配置信息中版本更高的配置信息确定为目标配置信息的方式,或者,基于用户指示在第一配置信息和第二配置信息中确定目标配置信息的方式,或者,将第一配置信息和第二配置信息中记录有距离当前时刻更近的时间信息的配置信息确定为目标配置信息的方式。
通过该两种可能的设计方式,管理装置可以根据第一配置信息和第二配置信息的一致性校验结果确定出用于启动服务器的目标配置信息,从而服务器能够正常启动。
在另一种可能的设计方式中,上述方法还包括:将第一配置信息和第二配置信息中与目标配置信息不同的配置信息,更新为目标配置信息。
通过该可能的设计,当在服务器本次启动时,第一配置信息和第二配置信息的一致性校验结果为失败,且管理装置基于用户指示确定目标配置信息,这种情况下,若管理装置将服务器的BMC或主板/组件中存储的与目标配置信息不同的配置信息更新为目标配置信息后,则在服务器下次启动时,且在下次启动前服务器的整机配置未被更新过的情况下,第一配置信息和第二配置信息的一致性能够校验成功。也就是说,管理装置能够在无需再次获取用户指示的情况下将用户在本次启动服务器时指定的配置信息确定为下次启动服务器时的目标配置信息。从而,该可能的设计能够减少用户的操作,提高用户的体验。
在另一种可能的设计方式中,在上述校验第一配置信息和第二配置信息的一致性之前,上述方法还包括:校验第一配置信息的完整性和第二配置信息的完整性,获得完整性校验结果。当完整性校验结果为成功时,执行校验第一配置信息和第二配置信息的一致性的操作。
由于服务器BMC中预存的第一配置信息和服务器的主板/组件中预存的第二配置信息可能被非法修改过,例如被网络攻击者恶意篡改过,或者被未经许可的用户修改过等。或者可以理解为,BMC中预存的第一配置信息和服务器主板/组件中预存的第二配置信息,在除服务器正常更新整机配置(如扩容等)时对配置信息的更新修改之外的情况中被修改过(如篡改正常更新的配置信息的内容或删除正常更新的配置信息中的数据等),均可以认为是被非法修改过。基于此,该可能的设计能够在服务器的启动阶段,对BMC中存储的第一配置信息和服务器的主板/组件中存储的第二配置信息进行完整性校验,从而能够保证服务器的BMC和主板/组件中预存的配置信息的安全性,进而能够保证服务器基于未被非法修改的配置信息完成服务器的正常启动。
第二方面,本申请提供了一种管理装置,该管理装置应用于服务器。
在一种可能的设计方式中,该管理装置用于执行上述第一方面提供的任一种方法。本申请可以根据上述第一方面提供的任一种方法,对该管理装置进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。示例性的,本申请可以按照功能将该管理装置划分为获取单元、校验单元以及启动单元等。上述划分的各个功能模块执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。
在另一种可能的设计中,上述管理装置包括:一个或多个处理器和通信接口,该一个或多个处理器通过该通信接口接收或发送数据,该一个或多个处理器被配置为调用存储在存储器中的程序指令,以使得该管理装置在服务器的启动阶段执行如第一方面及其任一种可能的设计方式提供的任一种方法。
在另一种可能的设计中,上述管理装置为服务器的基板管理控制器BMC。
第三方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质包括程序指令,当程序指令在处理器上运行时,使得处理器执行第一方面中的任一种可能的实现方式提供的任一种方法。
第四方面,本申请提供了一种芯片系统,包括:逻辑电路,用于执行第一方面中的实现方式提供的任一种方法。
可以理解的是,上述提供的任一种装置、计算机存储介质或芯片系统等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
在本申请中,上述管理装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
附图说明
图1为一种服务器主板和BMC的连接方式的示意图;
图2为另一种服务器主板和BMC的连接方式的示意图;
图3为本申请实施例提供的一种配置信息的管理装置的硬件结构示意图;
图4为本申请实施例提供的一种配置信息的管理方法的流程示意图;
图5为本申请实施例提供的另一种配置信息的管理方法的流程示意图;
图6为本申请实施例提供的又一种配置信息的管理方法的流程示意图;
图7为本申请实施例提供的一种新架构服务器的架构示意图;
图8为本申请实施例提供的又一种配置信息的管理方法的流程示意图;
图9为本申请实施例提供的又一种配置信息的管理方法的流程示意图;
图10为本申请实施例提供的一种在新架构服务器中应用本申请实施例所提供配置信息的管理方法的逻辑示意图;
图11为本申请实施例提供的一种配置信息的管理装置110的结构示意图。
具体实施方式
为了便于理解,首先对本申请实施例中涉及的部分术语或技术进行说明:
1)、BMC
BMC用于对计算机中硬件系统进行监控和管理。例如,BMC可以监控计算机硬件系统中主板的温度、电压等,或者监控计算机硬件系统中风扇、电源等硬件的工作情况。当计算机的硬件系统出现异常,BMC可以通过复位的方式来重启计算机的硬件系统,以保证计算机硬件系统能及时恢复到健康状态。
BMC中可设置独立于计算机操作系统(operating system,OS)的系统(也可以称为小系统),一般不依赖于计算机中的其他硬件(比如中央处理单元(central processingunit,CPU)、内存等),也不依赖于计算机的BIOS和OS。但是,BMC可以和BIOS、OS进行交互,从而能够实现更好的管理计算机硬件系统。例如,BMC与OS的系统管理软件协同工作时,能够更好的管理计算机硬件系统。
可以理解,BMC的实体可以是芯片、集成电路等。具体实施中BMC与主板连接方式主要包括如下两种形态:插卡形态和板载形态。具体地,BMC可以通过板载形态与服务器的主板连接,或者BMC通过插卡形态与服务器的主板连接。
示例性的,图1和图2分别示出了一种服务器主板和BMC的连接方式的示意图。其中,如图1所示,BMC 101通过板载形态设置于服务器的主板102上。如图2所示,BMC 201通过插卡形态插接在服务器的主板202上。
2)、BIOS
BIOS是加载在计算机硬件系统上的最基本的软件代码。BIOS是在OS之下的底层软件程序,是计算机硬件和OS之间的抽象层,一般用来配置硬件参数,从而为OS(主要是指计算机的主处理器上的OS)运行做准备。BIOS的主要功能是上电、自检、CPU初始化、内存初始化、检测输入输出设备以及可启动设备,并最终引导计算机的主处理器的OS启动等。
可以理解,用于实现BIOS功能的芯片可以称为BIOS芯片。
为了保证服务器中某些组件被更换后服务器依然能够正常启动,本申请提供了一种配置信息的管理方法,该方法应用于包括管理装置的服务器。在该方法中,在本次启动服务器之前(如服务器最初配置完成时),管理装置对获取到的服务器的配置信息执行备份操作,以实现在服务器中的BMC和服务器中的其他组件(如主板或下述的组件)中备份服务器配置信息的目的。其中,备份服务器配置信息的位置可以是服务器中任何一个管理装置可访问的非易失性存储介质。以在服务器的主板中备份服务器的配置信息为例,则服务器本次启动前,服务器的主板和BMC中均存储有服务器的配置信息。这样,在服务器上电后,只需校验主板和BMC所存储的配置信息的一致性,从而根据一致性校验结果在主板和BMC所存储的服务器的配置信息中确定目标配置信息,进而服务器即可基于目标配置信息启动。通过该方法,能够避免由于BMC更换后,服务器中更换后的BMC获取不到服务器配置信息或获取到错误的服务器配置信息而导致的服务器无法正常启动,或启动后性能较低的问题。也就是说,本申请提供的方法能够在保证服务器性能的前提下正常启动服务器。其中,配置信息一致性校验的详细说明可以参考下文方法中的相关描述,这里不作赘述。
作为一种可能的实现方式,本申请实施例提供的方法可以应用于传统服务器中,该服务器包括主板和BMC,且该服务器的主板和BMC中均预存有该服务器的配置信息,如BMC中预存有第一配置信息,主板中预存有第二配置信息。第一配置信息和第二配置信息的详细说明可以参考下文,这里不作赘述。
其中,BMC和主板的连接方式可以为如图2所示的插卡方式。应理解,通过执行本申请实施例提供的方法,能够避免BMC获取不到服务器配置信息或获取到错误的服务器配置信息而导致服务器无法正常启动的问题。BMC的详细说明可以参考上文,这里不再赘述。
另外,上述的主板(也可以称为传统主板)可以理解为集成了服务器的多个电子元器件(也可以称为器件)的一个整体硬件模块。即服务器的多个器件集成设计在一个硬件模块中。作为示例,服务器的多个器件例如可以包括散热风扇、硬盘背板、输入输出(input/output,IO)接口等。
本申请实施例还提供一种配置信息的管理装置,该管理装置可以应用于上述传统服务器,也可以应用于下文所述的新架构服务器,对此不作限定。该管理装置用于执行本申请实施例提供的配置信息的管理方法。可选的,该管理装置可以是设置于服务器中的BMC,或者,该管理装置可以是任意集成于服务器中、且能够实现本申请实施例所提供方法的集成电路或芯片,对此不作具体限定。
作为示例,参考图3,图3示出了本申请实施例提供的一种配置信息的管理装置的硬件结构示意图。如图3所示,管理装置30包括处理器301、存储器302、通信接口303以及总线304。处理器301、存储器302、通信接口303之间通过总线304连接。
处理器301是管理装置30的控制中心,可以是一个通用CPU,处理器301还可能是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application-specific integrated circuit,ASIC)、FPGA、CPLD或者其他可编程逻辑器件、MCU等。
存储器302用于存储程序指令或应用进程所要访问的数据,处理器301可以通过执行存储器302中的程序指令,以实现本申请实施例提供的服务器的启动方法。
存储器302包括易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambusRAM,DR RAM)。非易失性存储器可以是储存级内存(storage class memory,SCM)、SSD、HDD等。其中,储存级内存例如可以是非易失性内存(non-volatile memory,NVM)、相变化内存(phase-change memory,PCM)、持久化内存等。
在一种可能的实现方式中,存储器302独立于处理器301存在。存储器302通过总线304与处理器301相连接,用于存储数据、指令或者程序代码。处理器301调用并执行存储器302中存储的指令或程序代码时,能够实现本申请实施例提供的服务器的启动方法。
在另一种可能的实现方式中,存储器302和处理器301集成在一起。
通信接口303,用于实现管理装置30与管理装置30所在服务器的其他组件(如图1中所示服务器的主板、或者服务器的任一个组件等)的通信连接。
总线304,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线、PCIe、统一总线(unified bus,UB或Ubus)或扩展工业标准体系结构(extended industry standardarchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要指出的是,图3中示出的结构并不构成对管理装置30的限定,除图3所示部件之外,该管理装置30包括比图3所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合附图,首先基于上述传统服务器的架构,以该服务器的主板上集成了该服务器的多个硬件器件(如散热风扇、硬盘背板、IO接口等)为例,对本申请实施例提供的配置信息的管理方法进行说明。
参考图4,图4示出了本申请实施例提供的一种配置信息的管理方法的流程示意图。示例地,该方法可以由具有图3所示硬件结构的管理装置执行,主要包括以下步骤:
S101、管理装置获取服务器的配置信息。
其中,服务器的配置信息用于描述服务器中组件所包括的硬件信息、需要管理的器件及其参数信息。其中,组件可以是服务器中所包括器件或器件的集合。例如,服务器的配置信息包括服务器中风扇的个数及位置,硬盘背板的数量及位置、以及硬盘背板可以接入的硬盘大小等硬件配置的描述信息。其中,硬盘背板用于设置硬盘。风扇为用于为服务器中的硬件单元降温。可选地,配置信息还可以包括拓扑信息、告警信息。其中,拓扑信息用于指示组件间或组件中所包括的器件间的拓扑关系,告警信息则用于指示组件或组件中所包括的器件的告警信息。
可选的,管理装置可以在最初完成服务器的整机硬件配置后,获取用户通过服务器的输入接口(如键盘等)输入的用于描述服务器当前整机配置的配置信息。
作为示例,以管理装置是服务器的BMC为例,在最初完成服务器的整机硬件配置后,服务器的BMC通过服务器的输入接口(如键盘等)获取用户输入的用于描述服务器当前整机硬件配置的配置信息,并将获取到的配置信息存储于自身的非易失性存储介质中。其中,本申请实施例将BMC中存储的服务器的配置信息称为第一配置信息。
S102、管理装置对获取的服务器配置信息进行备份操作,以将服务器配置信息的备份数据(或称为副本数据)备份于服务器的BMC可访问的存储空间中。
具体的,管理装置对服务器的配置信息执行备份操作,得到第二配置信息,且第二配置信息可以存储于服务器的BMC,以及BMC可访问的任何存储空间中。在传统服务器中,BMC可访问的存储空间可以是设置于传统服务主板上的任一非易失性存储介质,如EEPROM、闪存(flash)等,不限于此。
应理解,管理装置对服务器的配置信息执行备份操作的过程是在服务器的启动状态下进行的。
在一种可能的实现方式中,为避免服务器在使用过程中,服务器的BMC和/或主板被更换而导致服务器无法正常启动,管理装置可以周期性的将自身获取到的配置信息备份至BMC和设置于主板上的非易失性存储介质中。以管理装置是服务器的BMC为例,为避免服务器在使用过程中BMC自身被更换而导致服务无法正常启动,BMC可以周期性的将自身获取到的配置信息备份至设置于主板上的非易失性存储介质中。具体的,BMC周期性的将自身获取到的配置信息的副本数据写入设置于主板上的非易失性存储介质中。
另一种可能的实现方式中,每当服务器的整机配置进行了更新(如对服务器扩容等),管理装置可以获取到服务器更新整机配置后的配置信息。进而,管理装置可以在每次获取到指示服务器更新后的整机配置的配置信息时,将获取到的指示服务器更新后的整机配置的配置信息备份至BMC和设置于主板上的非易失性存储介质中。例如,管理装置将获取到的指示服务器更新后的整机配置的配置信息分别写入BMC的非易失性存储介质和设置于主板上的非易失性存储介质中,以覆盖BMC的非易失性存储介质和设置于主板上的非易失性存储介质中原本存储的配置信息。其中,BMC的非易失性存储介质和设置于主板上的非易失性存储介质中原本存储的配置信息,即为管理装置上一次对获取到的配置信息执行备份操作时,写入BMC的非易失性存储介质和设置于主板上的非易失性存储介质中的配置信息。
在一些示例中,以管理装置是服务器的BMC为例,BMC可以在每次获取到指示服务器更新后的整机配置的配置信息时,将获取到的指示服务器更新后的整机配置的配置信息写入设置于主板上的非易失性存储介质中,以覆盖该非易失性存储介质中原本存储的配置信息。
可选的,当服务器的整机配置进行了更新(如对服务器扩容等),管理装置可以获取用户输入的指示服务器本次更新的配置信息。以在扩容场景为例,服务器本次更新的配置是指:相较于更新前的服务器整机配置,服务器在本次更新中增加的硬件背板。这样,针对服务器的本次更新,管理装置获取到的用户输入的配置信息和管理装置在本次更新之前所获取的所有配置信息,构成了服务器在本次更新后用于指示服务器整机配置的配置信息。
可选的,当服务器的整机配置进行了更新(如对服务器扩容等),管理装置也可以获取用户输入的指示服务器本次更新后得到的整机配置的配置信息,对此不作限定。
在一些示例中,管理装置获取的服务器的配置信息中包括版本信息,该版本信息用于指示包含该版本信息的配置信息的版本。应理解,不同版本的配置信息,指示服务器的不同整机配置,而服务器的不同整机配置包括在服务器的使用过程中,服务器每经历一次整机配置更新后得到服务器整机配置。还应理解,服务器配置信息中的版本信息指示的版本越高,表示与该配置信息对应的服务器更新操作距离当前时刻越近。
例如,在最初完成服务器的整机硬件配置后,服务器配置信息中的版本信息指示的版本为版本1。在该服务器使用一段时间后,基于使用需求对服务器最初的整机配置进行一次扩容(即第1次更新服务器的整机配置),则本次扩容后的服务器的配置信息中版本信息指示的版本为版本2。类似的,又一段时间后,基于使用需求对服务器第1次更新后得到的整机配置再次进行扩容(即第2次更新服务器的整机配置),则本次扩容后的服务器的配置信息中版本信息指示的版本为版本3。其中,版本3高于版本2,且版本2高于版本1。
在另一些示例中,管理装置记录获取服务器配置信息的时间信息,该时间信息用于指示管理装置获取到包含该时间信息的配置信息的具体时间。应理解,管理装置在不同时间获取的配置信息,指示服务器的不同整机配置,而服务器的不同整机配置包括在服务器的使用过程中,服务器每经历一次整机配置更新后得到服务器整机配置。
例如,在最初完成服务器的整机硬件配置后,管理装置获取服务器的配置信息后记录获取该配置信息的时间信息为时间1。在该服务器使用一段时间后,基于使用需求服务器对最初的整机硬件配置进行一次扩容(即第1次更新服务器的整机配置),则管理装置获取本次扩容后的服务器的配置信息后,记录获取该配置信息的时间信息指示的时间为时间2,且时间2晚于时间1。类似的,在又一段时间后,基于使用需求对服务器第1次更新后得到的整机配置再次进行扩容(即第2次更新服务器的整机配置),则管理装置获取本次扩容后的服务器的配置信息后,记录获取该配置信息的时间信息指示的时间为时间3,且时间3晚于时间2。
应理解,对于管理装置对获取到的第一配置信息执行备份操作后得到的第二配置信息,用于存储该第二配置信息的BMC可访问的服务器的存储空间中,也记录管理装置获取第一配置信息的时间信息。
进而,以服务器中BMC中存储有第一配置信息,以及服务器的主板中存储有第二配置信息为例,参考图5,图5示出了本申请实施例提供的另一种配置信息的管理方法的流程示意图。示例地,该方法可以由具有图3所示硬件结构的管理装置执行,主要包括以下步骤:
S201、管理装置获取服务器的BMC存储的第一配置信息,以及获取服务器的主板存储的第二配置信息。
具体的,在服务器上电后,设置于服务器中的管理装置上电并启动。进而,管理装置获取服务器的BMC存储的第一配置信息,以及获取服务器的主板存储的第二配置信息。这里,服务器的主板为传统服务器中的主板。
可选的,管理装置可以通过通信接口读取服务器的BMC中存储的第一配置信息,以及通过通信接口读取服务器的主板中存储的第二配置信息,对此不作具体限定。
在一些示例中,管理装置为服务器的BMC,则BMC读取自身存储的第一配置信息,以及通过自身的通信接口读取服务器主板中存储的第二配置信息,对此不作具体限定。
可选的,以管理装置是服务器的BMC为例,BMC存储的第一配置信息即为BMC获取用户输入且存储于自身非易失性存储介质中的服务器的配置信息。服务器的主板中存储的第二配置信息,即为BMC在第一时刻对获取到的配置信息(如第一配置信息)执行备份操作后,写入设置于主板上的任一非易失性存储介质中的配置信息。其中,第一时刻是BMC获取到用户输入的配置信息后、服务器本次启动前的任一时刻,对此不作限定。其中,本次启动的时刻是指管理装置对获取到的服务器的配置信息至少执行一次备份操作(如S102)后,触发该服务器启动操作的一个时刻。
可选的,BMC中存储的第一配置信息,以及服务器的主板中存储的第二配置信息,均为管理装置在第一时刻对用户输入的配置信息执行备份操作后,写入BMC的非易失性存储介质和设置于服务器主板上的任一非易失性存储介质中的配置信息,对此不作限定。
S202、管理装置校验第一配置信息和第二配置信息的一致性,获得一致性校验结果。
可以理解,服务器的BMC或主板中的任意一个可能被非法更换过(例如未经授权的更换服务器的BMC或主板,或在维修服务器时更换损坏的BMC或主板),或者,BMC或主板中存储的配置信息被攻击者恶意替换。换句话说,在非正常更新服务器配置信息的情况下,服务器中被非法更换后的BMC或主板中存储的配置信息(即新更换的BMC或主板中自身原本存储的配置信息)指示的整机配置,或者,BMC或主板中被恶意替换过的配置信息指示的整机配置,与服务器真实的整机硬件配置是不同的。而用于指示与服务器真实的整机硬件配置不同的整机配置的配置信息会导致服务器在初始化硬件资源时发生错误错,进而无法正常启动,或导致服务器启动后的性能较低。因此,在服务器的启动阶段,管理装置需要校验第一配置信息和第二配置信息的一致性,并基于一致性校验结果来确定用于启动服务器的目标配置信息。这里,目标配置信息可以认为是指示服务器当前真实整机配置的配置信息。
具体的,管理装置通过确定第一配置信息和第二配置信息是否完全相同,从而实现对第一配置信息和第二配置信息的一致性校验,并获得一致性校验结果。
当管理装置确定第一配置信息和第二配置信息完全相同,即表示第一配置信息和第二配置信息的一致性校验结果为成功,则管理装置执行S203。当管理装置确定第一配置信息和第二配置信息存在不同,则表示第一配置信息和第二配置信息的一致性校验结果为失败,则管理装置执行S204。
可选的,管理装置可以通过全量的对比第一配置信息中所包含的所有配置项及其参数,与第二配置信息中所包含的所有配置项及其参数是否完全相同,来确定第一配置信息和第二配置信息是否完全相同,从而实现对第一配置信息和第二配置信息的一致性校验。
可选的,管理装置可以通过判断第一配置信息和第二配置信息的大小是否一样来确定第一配置信息和第二配置信息是否完全相同。例如,管理装置可以基于信息摘要算法(message-digest algorithm,MD5)来分别确定第一配置信息与第二配置信息的大小,进而确定第一配置信息和第二配置信息的大小是否一样,以确定第一配置信息和第二配置信息是否完全相同,从而实现对第一配置信息和第二配置信息的一致性校验。
具体的,在一种可能的实现方式中,管理装置可以基于MD5算法分别计算得到第一配置信息的MD5值和第二配置信息的MD5值。在另一种可能的实现方式中,第一配置信息的头部数据中包括第一配置信息的MD5值,第二配置信息的头部数据中包括第二配置信息的MD5值。这样的话,管理装置从第一配置信息的头部数据中读取第一配置信息的MD5值,以及从第二配置信息的头部数据中读取第二配置信息的MD5值。
进而,当管理装置确定第一配置信息的MD5值和第二配置信息的MD5值相同,则确定第一配置信息和第二配置信息是完全相同的。当管理装置确定第一配置信息的MD5值和第二配置信息的MD5值不同,则确定第一配置信息和第二配置信息存在不同。
需要说明的是,上述通过全量比较和MD5算法确定第一配置信息和第二配置信息是否完全相同仅为示例性说明,任意能够确定第一配置信息和第二配置信息是否完全相同的方法都应在本申请实施例的保护范围内。
S203、当管理制装置确定第一配置信息和第二配置信息的一致性校验结果为成功,则将第一配置信息或第二配置信息确定为目标配置信息,并根据目标配置信息启动服务器。
可选的,当管理装置是服务器的BMC时,BMC将确定的目标配置信息发送至服务器的BIOS。进而,服务器的BIOS根据获取到的目标配置信息对服务器的硬件资源进行初始化,并进一步引导服务器的OS启动,进而完成服务器的启动。
可选的,当管理装置是独立于服务器BMC的芯片或集成电路时,则管理装置将确定的目标配置信息发送至服务器的BMC。进而,服务器的BIOS从服务器的BIOS获取目标配置信息,并根据目标配置信息对服务器的硬件资源进行初始化,以及进一步引导服务器的OS启动,进而完成服务器的启动。
S204、当管理装置确定第一配置信息和第二配置信息的一致性校验结果为失败,则根据第一预设规则将第一配置信息或第二配置信息确定为目标配置信息,并根据目标配置信息启动所述服务器。
其中,第一预设规则也可以称为预设规则,主要包括以下方式中至少一种:
第一方式,基于版本确定目标配置信息。
具体的,第一方式为将第一配置信息和第二配置信息中版本更高的配置信息确定为目标配置信息的方式。
作为示例,管理装置在确定第一配置信息和第二配置信息的一致性校验结果为失败后,可以进一步读取第一配置信息中的版本信息,以确定第一配置信息的版本,以及读取第二配置信息中的版本信息,以确定第二配置信息的版本。进而,管理装置将第一配置信息和第二配置信息中版本更高的配置信息,确定为目标配置信息。其中,配置信息中版本信息的详细说明,可以参考上文S102中的相关描述,不再赘述。
第二方式,基于更新时间确定目标配置信息。
具体的,第二方式为将第一配置信息和第二配置信息的更新时间距离当前时刻更近的时间信息的配置信息确定为目标配置信息的方式。其中,第一配置信息的更新时间为管理装置最新获取第一配置信息时记录的时间信息指示的时间,第二配置信息的更新时间为管理装置最新获取的用于得到第二配置信息的第一配置信息时记录的时间信息指示的时间。
作为示例,管理装置在确定第一配置信息和第二配置信息的一致性校验结果为失败后,进一步获取预先记录的获取第一配置信息的时间信息,以确定获取第一配置信息时间为第一时间,以及获取第二配置信息的更新时间。进而,管理装置在第一时间和第二配置信息的更新时间中确定距离当前时刻更近的时间,并将该时间对应的配置信息确定为目标配置信息。例如,管理装置确定第一时间晚于第二配置信息的更新时间,即相比第二配置信息的更新时间,第一时间距离当前时刻更近,因此管理装置将与第一时间对应的第一配置信息确定为目标配置信息。
可以看出,在基于第一方式和第二方式确定目标配置信息时,均为将第一配置信息和第二配置信息中,指示最新一次更新服务器整机配置后对应的配置信息确定为目标配置信息。
第三方式,基于用于指示确定目标配置信息。
具体的,第三方式为基于用户指示在第一配置信息和第二配置信息中确定目标配置信息的方式。
作为示例,管理装置在确定第一配置信息和第二配置信息的一致性校验结果为失败后,进一步获取用户输入的指示信息(如用户经管理装置所在服务器的输入接口(如键盘)输入的指示信息),进而,管理装置根据指示信息所指示的配置信息确定为目标配置信息。其中,指示信息所指示的配置信息是第一配置信息或第二配置信息中的一个。
进一步的,在管理装置确定目标配置信息后,根据目标配置信息启动服务器。具体过程可以参考S203的描述,不再赘述。
S205(可选的)、管理装置将第一配置信息和第二配置信息中与目标配置信息不同的配置信息,更新为目标配置信息。
可以理解,通过将第一配置信息和第二配置信息中与目标配置信息不同的一个更新为目标配置信息,能够实现将服务器的BMC或主板上所存储的与目标配置信息不同的配置信息,恢复为目标配置信息的目的。这样,当管理装置在S204中是基于第一预设规则确定目标配置信息时,如果管理装置执行S205从而将服务器的BMC或主板上所存储的与目标配置信息不同的配置信息恢复为目标配置信息后,则在服务器下次启动时,且在下次启动前服务器的整机配置未被更新过的情况下,第一配置信息和第二配置信息的一致性能够校验成功。这样,可以节省服务器下次启动时的计算资源,并且,管理装置则无需再次获取用户的指示,即可将用户在本次启动服务器时指定的配置信息确定为下次启动服务器时的目标配置信息。可见,该方案能够减少用户的操作,提高用户的体验。
在一些示例中,当管理装置将第一配置信息确定为目标配置信息时,则管理装置指示服务器主板将设置于主板上的非易失性存储介质中存储的第二配置信息更新为第一配置信息。可选的,当管理装置是BMC时,BMC可以将自身非易失性存储介质中存储的第一配置信息通过自身的通信接口写入设置于主板上的非易失性存储介质中,以覆盖该非易失性存储介质中原先存储的第二配置信息。可选的,当管理装置不是BMC时,管理装置可以将在S201获取到的第一配置信息写入设置于主板上的非易失性存储介质中,以覆盖该非易失性存储介质中原先存储的第二配置信息。
在另一些示例中,当管理装置将第二配置信息确定为目标配置信息时,则管理装置指示BMC将BMC的非易失性存储介质中存储的第一配置信息更新为第二配置信息。可选的,当管理装置是BMC时,BMC可以采用在S201获取到的第二配置信息覆盖自身非易失性存储介质中存储的第一配置信息。可选的,当管理装置不是BMC时,管理装置可以将在S201获取到的第二配置信息写入BMC的非易失性存储介质中,以覆盖该非易失性存储介质中原先存储的第一配置信息。
通过上述S201-S205的方法,通过在传统服务器的BMC和主板中均预存(如通过S101-S102所述方法预存)用于指示服务器整机配置的配置信息,这样在服务器上电后的启动阶段,只需校验BMC和主板所存储的配置信息的一致性,并基于一致性校验结果在BMC和主板所存储的配置信息中确定目标配置信息。进而,服务器能够基于目标配置信息正常启动。从而,当传统服务器的BMC和主板中的任一个被更换,通过本申请实施例提供的方法能够避免服务器的BMC获取不到服务器的配置信息或获取到错误的服务器配置信息而导致的服务器无法正常启动的问题(或启动够性能低的问题)。
在一些可能的实现方式中,为保证传统服务器的BMC和主板中预存的配置信息的安全性,在上述的S202之前,本申请实施例提供的配置信息的管理方法还可以对传统服务器的BMC和主板中存储的配置信息的完整性进行校验。具体的,参考图6,图6示出了本申请实施例提供的又一种配置信息的管理方法的流程示意图。示例地,该方法可以由具有图3所示硬件结构的管理装置执行。管理装置在执行上述的S201后,执行以下步骤:
S2011、管理装置校验第一配置信息和第二配置信息的完整性,获得完整性校验结果。
应理解,BMC中预存的第一配置信息和服务器的主板中预存的第二配置信息可能被非法修改过,例如被网络攻击者恶意篡改过,或者被未经许可的用户修改过等。或者可以理解为,BMC中预存的第一配置信息和服务器主板中预存的第二配置信息,在除服务器正常更新整机配置(如扩容等)时对配置信息的更新修改之外的情况中被修改过(如篡改正常更新的配置信息的内容或删除正常更新的配置信息中的数据等),均可以认为是被非法修改过。基于此,在服务器的启动阶段,管理装置可以对BMC中存储的第一配置信息和服务器的主板中存储的第二配置信息进行完整性校验。
具体的,当管理装置确定第一配置信息未被非法修改过,则第一配置信息的完整性校验成功。当管理装置确定第一配置信息被非法修改过,则第一配置信息的完整性校验失败。类似的,当管理装置确定第二配置信息未被非法修改过,则第二配置信息的完整性校验成功。当管理装置确定第二配置信息被非法修改过,则第二配置信息的完整性校验失败。
可选的,管理装置可以通过数字签名技术分别确定第一配置信息和第二配置信息是否被非法修改过,从而实现分别对第一配置信息和第二配置信息的完整性校验。
以通过数字签名技术对第一配置信息的完整性进行校验为例,对第一配置信息进行数字签名是指是加密端通过私钥对第一配置信息的摘要信息进行加密。解密端使用加密端的公钥解密被加密的摘要信息。并且,解密端采用哈希(hash)算法生成第一配置信息的摘要信息。进而,解密端对比采用公钥解密得到的摘要信息和采用哈希算法生成的摘要信息是否相同。如果解密端确定公钥解密得到的摘要信息和采用哈希算法生成的摘要信息相同,则可以确定第一配置信息在未被非法篡改过,即第一配置信息完整性校验成功。如果解密端确定公钥解密得到的摘要信息和采用哈希算法生成的摘要信息不同,则确定第一配置信息被非法篡改过,即第一配置信息完整性校验失败。其中,本申请实施例对用于生成配置信息的摘要信息的哈希算法不作具体限定。
需要说明,通过数字签名技术校验第一配置信息完整性和第二配置信息完整性的方法仅为示例性说明,任意能够校验第一配置信息完整性和第二配置信息完整性的方法都应在本申请实施例的保护范围内。
进一步地,当管理装置确定第一配置信息的完整性和第二配置信息的完整性均校验成功,表示第一配置信息和第二配置信息的完整性校验结果为成功,则管理装置执行上述的S202-S205,不再赘述。
当管理装置确定第一配置信息和第二配置信息中任一个配置信息的完整性校验失败(如第一配置信息的完整性校验失败,或者,第二配置信息的完整性校验失败),表示第一配置信息和第二配置信息的完整性校验结果为失败,则管理装置执行S2012。
当管理装置确定第一配置信息的完整性和第二配置信息的完整性均校验失败,表示服务器的BMC和主板中存储的配置信息均被非法修改了。这种情况下,管理装置可以输出告警信息,以提示用户重新向管理装置输入服务器的配置信息。进而,管理装置可以重新执行S102所述的方法对获取到的配置信息执行备份操作,不再赘述。
S2012、管理装置将第一配置信息和第二配置信息中完整性校验成功的配置信息确定为目标配置信息,并根据目标配置信息启动所述服务器。
一个示例中,当管理装置确定第一配置信息的完整性校验成功,而第二配置信息的完整性校验失败,则将第一配置信息确定为目标配置信息。
又一个示例中,当管理装置确定第二配置信息的完整性校验成功,而第一配置信息的完整性校验失败,则将第二配置信息确定为目标配置信息。
具体的,管理装置根据目标配置信息启动所述服务器的详细说明,可以参考S203的描述,不再赘述。
可选的,在一些实施方式中,管理装置还可以执行S205,不再赘述。
基于图6所述方法,管理装置还对传统服务器的BMC和主板中均预存的第一配置信息和第二配置信息进行完整性校验,从而能够避免传统服务器的BMC或主板中预存的配置信息被非法修改后,导致BIOS从BMC获取到的错误的配置信息(相比指示服务器真实整机配置的配置信息而言)而无法正常启动服务器的问题(或启动后性能低的问题)。
上文结合附图详细介绍了在传统服务器架构中应用本申请实施例所提供的方法。接下来,以新架构服务器为例再进一步解释本申请实施例提供的配置信息的管理方法。
作为一种可能的实现方式,本申请提供的方法还适用于一种新架构服务器,该服务器具有创新的对等互联架构(也可以称为服务器新架构或新架构)。在该架构中,将传统的主板拆分为基础板(basic computing unit,BCU)和扩展板(extension unit,EXU),通过基础板和扩展板以及功能组件配合来实现对不同场景所需的主板的规格和形态的支持。
此外,同一计算设备中可以包括一个基础板和一个扩展板,同一计算设备也可以包括多个基础板和一个扩展板,同一计算设备还可以包括一个基础板和多个扩展板。基础板包括CPU、双倍数据速率(double data rate,DDR)以及相关电源,提供通用计算能力及外围存储、IO、加速等扩展接口。基础板支持等不同系列的CPU。可选地,基础板支持异构处理器,即基础板可以支持不同类型的处理器,例如,基础板支持CPU,以及专用集成电路(application-specific integrated circuit,ASIC)、可编程逻辑器件(programmable logic device,PLD)、复杂程序逻辑器件(complex programmable logicaldevice,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)、片上系统(system on chip,SoC)、数据处理单元(dataprocessing unit,DPU)、软件定义架构(software-defined infrastructure,SDI)芯片、人工智能(artificial intelligence,AI)芯片等任意一种处理器或其任意组合。
进一步地,根据业务需求和硬件属性本申请实施例提供了至少6种不同形态的基础板,分别针对不同的计算性能和内存配置。为了方便描述,暂将这6种基础板分别称为A1、A2、B1、B2、C1、和C2。并且,在本实施例中利用“P”表示处理器的个数,P为大于0的整数,“DPC”则表示每个通道双列直插内存模块(dual in-line memory module per channel,DIMM Per Channel)。例如,A1形态的基础板支持一个处理器,每个通道插一根DIMM(简称为1P1DPC);A2形态的基础板支持一个处理器,每通道插一根或二根DIMM(简称为1P2DPC或1P1DPC);B1形态的基础板支持两个处理器,每通道插一根DIMM(简称为2P1DPC),或者,一个处理器,每通道插一根或二根DIMM(简称为1P2DPC或1P1DPC);B2形态的基础板支持两个处理器,每通道插一根或二根DIMM(简称为2P2DPC或2P1DPC),或者,一个处理器,每通道插一根或两根DIMM(简称为1P2DPC或1P1DPC);C1形态的基础板支持四个处理器,每个通道插一根DIMM(简称为4P1DPC),或者,两个处理器,每通道插一根或两根DIMM(简称为2P2DPC或2P1DPC);C2形态的基础板支持四个处理器,每通道插一根或两根DIMM(简称为4P2DPC或4P1DPC),或者,两个处理器,每通道插一根或两根DIMM(简称为2P2DPC或2P1DPC)。随着技术发展,CPU封装尺寸、内存通道和DIMM数可能变化,但主板的标准尺寸和安装孔位将保持不变,这样能确保基础板更新换代时能够跨代跨系列兼容演进。例如:B2形态的基础板在当前每CPU 8通道DDR时,支持2P2DPC(2P32DIMM)。在CPU内存通道数提升到12以后,将无法实现2P2DPC(2P48DIMM)。那么,B2形态可以支持2P1DPC(2P24DIMM),而2P2DPC(2P48DIMM)可以用C1等其他形态实现,因为安装孔位置和基础板尺寸是标准的,直接更换和安装即可。
扩展板包括BMC和管理系统、桥片(例如,Intel系统的平台路径控制器(PlatformController Hub,PCH))中的至少一个,扩展板是对基础板的扩展,用于扩展基础板的管理接口,进而提供设备、安全、能效、可靠性等管理功能。
在新架构中,扩展板通过高速串行计算机扩展总线(peripheral componentinterconnect express,PCIe)、内存互联(Compute Express Link,CXL)、或统一总线(unified bus,UB或Ubus)等高速总线与服务器中的功能组件通信连接互联。具体实施中,上述扩展板与服务器中的功能组件,以及基础板与扩展板的具体连接方式包括:以线缆实现上述连接的软连接方式,或者,以连接器实现上述连接的硬连接方式。
进一步地,组件是一类器件或设备的统称。其中,上述的服务器中的功能组件按照所实现的功能,可以包括存储组件(storage unit,STU)、IO组件(input output unit,IOU)、加速组件(acceleration unit,ACU)、内存扩展组件(memory expansion unit,MEU)、散热组件、供电组件、计算组件、管理组件等。可以理解,基础板、扩展板也可以称为服务器的组件。
其中,存储组件包括硬盘背板、扩展板(Expander)、PCIe交换机(switch)等,为系统存储扩展,支持机械硬盘(hard disk drive,HDD)/固态硬盘(solid-state drive,SSD)/非易失性高速传输总线(non-volatile memory express,NVMe)/存储级内存(storageclass memory,SCM)等多种介质、形态。IO组件包括Riser等组件,实现对系统IO的扩展,支持PCIe标卡、开放计算项目(open compute project,OCP)卡。加速组件包括Riser、载板、加速卡互连交换机(switch)等,提供系统加速组件扩展和互连功能。内存扩展组件包括载板、内存扩展芯片、双列直插内存模块(dual in-line memory module,DIMM)、SCM介质等,提供系统扩展内存带宽、内容容量的功能。散热组件,用于对计算设备或计算设备中硬件进行散热,包括风冷散热、液冷散热或二者结合等几种散热方式的组合。应理解的是,散热组件的结构、类型和数量不构成对本申请所要保护技术方案的限定。供电组件,用于为其他组件供电。计算组件,CPU、内存等提供通用计算能力的器件。
管理组件,基板管理控制器等提供设备管理的器件。
此外,为了支持多样性算力和多样性设备,该服务器新架构还实现硬件标准化,包括基础板的标准化和上述的其他组件接口的标准化。
基础板的标准化:包括尺寸、安装孔位、接口电气特性、管理接口协议和参数等标准化。其中,表1为本申请提供的一种基础板接口描述表的示例。
表1
其中,供电采用统一的12V输入,基础板内部通过DC/DC转换成所需要的各类电源。考虑到未来I/O的演进以及不同CPU的差异化,本实施例基于UBC和UBCDD连接器,定义一种Flexible I/O接口,用于替代原有的PCIe接口。所述Flexible I/O接口可以根据需求灵活配置成PCIe/HCCS/SAS/SATA/以太等接口。BCU管理接口主要包括常见的低速维护接口,例如I2C、UART、JTAG等接口,兼容常见处理器平台的管理。
上述的其他组件接口的标准化:包括扩展板、供电组件、散热组件、存储组件、IO组件、加速组件、内存扩展组件等,对组件的电气接口、管理接口和参数进行标准化,而不定义和约束组件的物理尺寸、安装、位置等,这些将提供广大的创新空间,支持差异化和灵活扩展。组件对外接口除了电源和高速信号,其余低速管理接口定义如下表2(表2为本申请提供的一种组件低速管理接口定义表的示例)所示:
表2
除了EXU与BCU的接口外,其它接口通过EXU与各个组件相连。值得注意的是,本实施例只定义这些接口的功能,不限定具体针布局(PINMAP)方式,任何能够实现该功能的实现方式都在本实施例的保护范围以内。
值得说明的是,上述表1和表2的内容仅为辅助解释本申请的技术方案提供的一种示例,具体实施中,服务器新架构、基础板的接口和上述的其他组件的低速接口均可以分别包括更多或更少的内容。
另一方面,服务器新架构还提供一种实现了智能化管理软件,根据服务器新架构的标准化要求实现管理对象模板,服务器在上电后,管理软件通过标准管理总线自动探测组件并获取组件的自描述信息,再根据管理对象模板创建管理对象实例,从而实现管理软件自适应管理实现管理软件智能化,支持组件自动发现和自动适配。
作为示例,参考图7,图7示出了一种新架构服务器的架构示意图。如图7所示,服务器70包括多个组件,分别为扩展板71、基础板72、存储组件73、IO组件74、散热组件75、供电组件76、加速组件77、内存扩展组件78以及BMC 79。并且,基础板72、存储组件73、IO组件74、散热组件75、供电组件76、加速组件77、以及内存扩展组件78分别与扩展板71互联,BMC 79与扩展板72互联。扩展板71、基础板72、存储组件73、IO组件74、散热组件75、供电组件76、加速组件77、以及内存扩展组件78共同实现的功能与传统服务器的功能相同。
下面结合附图,基于上述新架构服务器,以该服务器中包括多个组件为例对本申请实施例提供的配置信息的管理方法进行说明。其中,组件包括上述的基础板、扩展板、和/或上述的功能组件等,服务器的配置信息的详细说明可以参考S101中配置信息的相关描述,不再赘述。
首先,管理装置执行S101-S102,从而实现在新架构服务器中的BMC和至少一个组件中预存服务器的配置信息。
需要说明,在S102,当服务器是上述的新架构服务器时,管理装置对获取到的服务器配置信息执行备份操作后,可以将配置信息的副本数据除备份于BMC中,还备份于新架构服务器中的至少一个组件的存储空间(如设置于组件中的非易失性存储介质)中。其中,该至少一个组件中的存储空间是服务器的BMC可访问的存储空间。其中,管理装置将获取到的配置信息备份于新架构服务器中的至少一个组件的存储空间的详细说明,可以参考S102中管理装置将获取到的配置信息备份于主板的描述,不再赘述。
在一些示例中,管理装置将获取到配置信息的副本数据除备份于BMC中,还备份于新架构服务器中的部分组件的存储空间。也就是说,新架构服务器中的部分组件中的每个组件的非易失性存储介质中均存储有管理装置备份的配置信息。
在另一些示例中,管理装置将获取到配置信息的副本数据除备份于BMC中,还备份于新架构服务器中的每个组件的存储空间。也就是说,新架构服务器中的每个组件中的非易失性存储介质中均存储有管理装置备份的配置信息。
参考图8,图8示出了本申请实施例提供的又一种配置信息的管理方法的流程示意图。
示例地,该方法可以由具有图3所示硬件结构的管理装置执行。该方法包括以下步骤:
S301、管理装置获取新架构服务器的BMC存储的第一配置信息、以及获取新架构服务器中BMC可访问存储空间存储的第二配置信息。
一种可能的情况下,BMC可访问的存储空间是新架构服务器中一个组件的非易失性存储介质,则管理装置基于获取的第一配置信息和该组件中存储的第二配置信息,执行完整性校验、一致性校验、确定目标配置信息以启动服务器的过程,可以参考上文S201-S205所述的方法,不再赘述。
其中,新架构服务器中存储有第二配置信息的的组件可以是新架构服务器中的基础板、扩展板或任一种功能组件,本申请实施例对此不作限定。
另一种可能的情况下,BMC可访问的存储空间包括新架构服务器中m个组件中每个组件的非易失性存储介质。也就是说,在这种情况下,m个组件中每个组件均存储有第二配置信息。其中,m是大于1的整数,且m小于等于新架构服务器中所包括的全部组件的数量。
如图8所示,新架构服务器中的m个组件分别为组件1、组件2、…、以及组件m。其中,该m个组件中的每个组件中均存储有第二配置信息。这里,将每个组件中存储的配置信息均称为第二配置信息,不同组件中的第二配置信息可以是相同的配置信息,也可以是不同的配置信息,对此不作限定。可以理解,以新架构服务器是服务器1为例,当服务器1中的某个组件被更换(如维修时)为另一个服务器的组件,则更换后的组件中存储的配置信息和服务器1中其他组件中存储的配置信息不同。
其中,管理装置获取服务器的BMC存储的第一配置信息、以及获取上述m个组件中每个组件存储的第二配置信息的详细说明,可以参考S201的描述,不再赘述。
S302、管理装置校验第一配置信息和m个第二配置信息的一致性,获得一致性校验结果。
具体的,管理装置通过确定第一配置信息和m个第二配置信息是否完全相同,从而实现对第一配置信息和该m个第二配置信息的一致性校验,并获得一致性校验结果。
当管理装置确定第一配置信息和该m个第二配置信息完全相同,表示第一配置信息和该m个第二配置信息的一致性校验结果为成功,则管理装置执行S303。当管理装置确定第一配置信息和该m个第二配置信息存在不同,则表示第一配置信息和该m个第二配置信息的一致性校验结果为失败,则管理装置执行S304。
其中,管理装置确定第一配置信息和该m个第二配置信息是否完全相同的具体说明,可以参考S202中管理装置确定第一配置信息和第二配置信息是否完全相同的描述,不再赘述。
S303、当管理装置确定第一配置信息和m个第二配置信息的一致性校验结果为成功,则将第一配置信息或任一个第二配置信息确定为目标配置信息,并根据目标配置信息启动服务器。
其中,S303的详细说明可以参考S203的描述,不再赘述。
S304、当管理装置确定第一配置信息和m个第二配置信息的一致性校验结果为失败,则根据第二预设规则将第一配置信息或该m个第二配置信息中的一个配置信息确定为目标配置信息,并根据目标配置信息启动所述服务器。
其中,第二预设规则主要包括以下方式中至少一种:
第三方式,基于用于指示确定目标配置信息。其中,第三方式的详细说明可以参考S204中对第三方式的描述,不再赘述。
第四方式,基于版本确定目标配置信息。具体的,第四方式为将第一配置信息和m个第二配置信息中版本最更高的配置信息确定为目标配置信息的方式。
作为示例,管理装置在确定第一配置信息和m个第二配置信息的一致性校验结果为失败后,可以进一步读取第一配置信息中的版本信息,以确定第一配置信息的版本,以及读取m个第二配置信息每个第二配置信息中的版本信息,以确定每个第二配置信息的版本。进而,管理装置将第一配置信息和m个第二配置信息中版本最高的配置信息,确定为目标配置信息。
第五方式,基于更新时间确定目标配置信息。具体的,第五方式为将第一配置信息和m个第二配置信息的更新时间距离当前时刻更近的时间信息的配置信息确定为目标配置信息的方式。其中,第一配置信息的更新时间为管理装置最新获取第一配置信息时记录的时间信息指示的时间,对于m个第二配置信息中的任一个第二配置信息,该第二配置信息的更新时间为管理装置最新获取的用于得到该第二配置信息的第一配置信息时记录的时间信息指示的时间。
作为示例,管理装置在确定第一配置信息和m个第二配置信息的一致性校验结果为失败后,进一步获取预先记录的获取第一配置信息的时间信息,以确定获取第一配置信息时间为第一时间,以及获取每个第二配置信息的更新时间。进而,管理装置在第一时间和每个第二配置信息的更新中确定距离当前时刻更近的时间,并将该时间对应的配置信息确定为目标配置信息。例如,管理装置确定第一时间晚于m个第二配置信息的更新时间,即相比m个第二配置信息的更新时间,第一时间距离当前时刻更近,因此管理装置将与第一时间对应的第一配置信息确定为目标配置信息。
第六方式,基于相同版本配置信息的数量确定目标配置信息。
具体的,第六方式为将第一配置信息和m个第二配置信息中相同版本数量最多的配置信息确定为目标配置信息的方式。例如,管理装置在确定第一配置信息和上述m个第二配置信息的一致性校验结果为失败后,进一步读取第一配置信息中的版本信息,以确定第一配置信息的版本,以及读取每个第二配置信息中的版本信息,以确定每个第二配置信息的版本。进而,管理装置将第一配置信息和该第二配置信息中相同版本数量最多的配置信息,确定为目标配置信息。
作为示例,以m取值为2为例,当管理装置确定第一配置信息和2个第二配置信息(分别为配置信息1和配置信息2)的一致性校验结果为失败后,进一步读取第一配置信息的版本信息,以确定第一配置信息的版本为版2,以及,管理装置还读取配置信息1的版本信息,以确定配置信息1的版本为版本2,以及读取配置信息2的版本信息,以确定配置信息2的版本为版本3,则管理装置确定版本3的配置信息的数量为1个(即配置信息2),版本2的配置信息的数量为2个(即包括第一配置信息和配置信息1)。因此,管理装置将第一配置信息或配置信息1确定为目标配置信息。
进一步的,在管理装置确定目标配置信息后,根据目标配置信息启动服务器。具体过程可以参考S203的描述,不再赘述。
S305、(可选的)、管理装置将第一配置信息和m个第二配置信息中与目标配置信息不同的配置信息,更新为目标配置信息。
其中,管理装置将第一配置信息和上述m个第二配置信息中与目标配置信息不同的配置信息,更新为目标配置信息的具体说明,可以参考S205的描述,不再赘述。
通过上述S301-S305的方法,通过在新架构服务器的BMC和至少一个组件中预存用于指示服务器整机配置的配置信息,这样在服务器上电后的启动阶段,基于BMC和组件中所存储的配置信息的一致性校验结果可以确定出目标配置信息。进而,服务器能够基于目标配置信息正常启动。从而,当新架构服务器的BMC和其他组件中的任一个被更换,通过本申请实施例提供的方法均能够避免服务器的BMC获取不到服务器的配置信息或获取到错误的服务器配置信息而导致的服务器无法正常启动的问题(或启动后性能低的问题)。
在一些可能是实现方式中,为保证新架构服务器的BMC和至少一个组件中均预存的配置信息的安全性,在上述S302之前,本申请实施例提供的配置信息的管理方法还可以对新架构服务器的BMC和至少一个组件中预存的配置信息的完整性进行校验。
具体的,参考图9,图9示出了本申请实施例提供的又一种配置信息的管理方法的流程示意图。示例地,该方法可以由具有图3所示硬件结构的管理装置执行,控制装置在执行上述的S301后,执行以下步骤:
S3011、管理装置校验第一配置信息和m个第二配置信息的完整性,获得完整性校验结果。
具体的,管理装置分别对第一配置信息和m个第二配置信息中的每个第二配置信息进行完整性校验,从而获得第一配置信息和上述m个第二配置信息的完整性校验结果。其中,管理装置校验每个配置信息的详细说明,可以参考S2011对第一整机信息的完整性进行校验的描述,不再赘述。
当管理装置分别确定第一配置信息和m个第二配置信息中的每个第二配置信息的完整性均校验成功,则确定第一配置信息和m个第二配置信息的完整性校验结果为成功。进而,控制装置执行S302-S305。
当管理装置分别确定第一配置信息和m个第二配置信息中的至少两个配置信息的完整性校验成功,这种情况下,控制装置针对该至少两个配置信息执行S302-S304,以对该至少两个配置信息进行一致性校验,并基于该至少两个配置信息的一致性校验结果确定目标配置信息。进一步,控制装置基于确定的目标配置信息执行S305。不再赘述。
当管理装置确定第一配置信息和m个第二配置信息中仅有一个配置信息的完整性校验成功,则控制装置执行S3012。
当控制装置确定第一配置信息和m个第二配置信息中的每个第二配置信息的完整性均校验失败,表示新架构服务器的BMC和m个组件中存储的配置信息均被非法修改了。这种情况下,管理装置可以输出告警信息,以提示用户重新向管理装置输入新架构服务器的配置信息。进而,管理装置可以重新执行S102所述的方法对获取到的配置信息执行备份操作,不再赘述。
S3012、控制装置将第一配置信息和m个第二配置信息中完整性校验成功的配置信息确定为目标配置信息,并根据目标配置信息启动所述服务器。
具体的,控制装置根据目标配置信息启动所述服务器的详细说明,可以参考S203的描述,不再赘述。
可选的,在一些实施方式中,控制装置还可以执行S305。
基于图9所述方法,管理装置还对新架构服务器的BMC和组件中均预存的配置信息进行完整性校验,从而能够避免新架构服务器的BMC和其他组件中预存的配置信息被非法修改后,导致BIOS从BMC获取到的错误的配置信息(相比指示服务器真实整机配置的配置信息而言)而无法正常启动服务器的问题(或启动后性能低的问题)。
为更清楚的对本申请实施例提供的配置信息的管理方法进行进一步说明,下面以在新架构服务器中应用该方法,且以上述管理装置为新架构服务器中的BMC为例,在逻辑层面对本申请实施例所提供方法进行描述。
参考图10,图10示出了在新架构服务器中应用本申请实施例所提供配置信息的管理方法的逻辑示意图。如图10所示,服务器100的硬件层包括多个组件,分别为BMC芯片、扩展板、基础板、存储组件、IO组件、散热组件、供电组件、加速组件、以及内存扩展组件的存储介质。服务器100的核心层包括BMC芯片、扩展板、基础板、存储组件、IO组件、散热组件、供电组件、加速组件、以及内存扩展组件的硬件驱动。在服务器100的应用层,BMC执行本申请实施例提供的配置信息的管理方法。
其中,BMC预先通过服务器100的输入接口(如键盘等)获取用户输入的服务器100的配置信息(参考S101),并基于S102所述的方法将获取到的配置信息备份至每个替换换组件中。例如,BMC在获取到配置信息之后、且在本次启动服务器100之前的第一时刻,将获取到的配置信息备份至每个替换换组件中。
这样,在本次启动服务器100时,服务器器100的BMC和每个组件中均存储有服务器100的配置信息。在本次服务器100的启动阶段,BMC读取自身存储的配置信息,以及基于通信接口读取扩展板、基础板、存储组件、IO组件、散热组件、供电组件、加速组件以及内存扩展组件中存储的配置信息(参考S301)。然后,BMC对读取到的每个配置信息进行完整行校验(参考S3011)。当BMC读取到的全部配置信息中仅有一个配置信息的完整性校验成功,则将完整性校验成功的配置信息确定为目标配置信息,并根据该目标配置信息启动服务器100(参考S3012)。当BMC读取到的全部配置信息中存在至少两个配置信息的完整性校验成功,则对该至少两个配置信息进行一致性校验,并根据一致性校验结果在该至少两个配置信息中确定目标配置信息,以及根据目标配置信息启动服务器100(参考S302-S304)。可选的,BMC还将BMC和各个组件中存储的与目标配置信息不同的配置信息更新为目标配置信息(对应S305)。
作为一种可能的实现方式,上述方法实施例中所提及的配置信息包括组件管理自描述信息(component self-description record,CSR)或整机自描述信息(product self-description record,PSR)中至少一种。
在一个示例中,上述配置信息的存储格式可以为按照如下预设格式,上述预设格式也可以称为硬件自描述记录(Hardware Self-Description Record,HWSR)格式。其中,组件HWSR是组件静态存储空间,该静态存储空间的固定总线起始地址0xAE。在组件HWSR格式中,包括头部、电子标签、组件自描述信息以及扩展信息等
组件HWSR格式的内部格式如表3所示:
表3
/>
/>
/>
其中,Elable:电子标签,服务器中组件单板的电子标签信息,空间大小固定为2KB。
OEM1(System Information):客户定制化区域1,空间大小固定为1KB。
CSR:Component Self-Description Record组件自描述信息,CSR Header中Vendor+组件ID+组件类型组成组件唯一ID。如果一块单板包含多个组件,则需要定义多个CSR信息。
Internal Use Area:内部使用区域为保留区域,扩展使用,内部格式待定义。
在一些示例中,CSR描述内容包括服务器组件单板的硬件信息、需要管理的器件以及拓扑信息,告警信息等。CSR头部格式见表3。CSR描述格式定位JSON,JSON文件压缩后写入HWSR对应存储空间,BMC管理软件在自发现时,需要根据CSR头部的压缩算法减压,得到JSON数据文件。当前默认压缩算法为gzip(GNUzip)。
下面示例性的对CSR的各个对象进行简单介绍。
示例性的,对于CSR组件属性对象(Component Properties),CSR中组件的基础硬件属性内容如表4所示。
表4
示例性的,对于CSR物理拓扑(PhysicalTopology),CSR物理拓扑主要定义组件的器件管理拓扑信息,比如管理总线拓扑,内存拓扑或者带内总线拓扑,组件可以根据硬件实际情况定义CSR数据文件包含的内容。可选的,CSR物理拓扑的内容如表5所示。
表5
示例性的,对于CSR物理对象(PhysicalObjects),CSR物理对象主要定义组件内的物理对象,包含芯片、连接器、总线、CPU槽位、IO槽位、OCP槽位等等。可选的,CSR物理对象的内容如表6所示。
表6
对象名称 属性名称 含义 数据类型 取值范围 说明
PhysicalObjects MemoryChannels 内存槽位 对象数组
示例性的,对于Buses对象定义管理总线类型如表7所示:
表7
示例性的,对于Connectors对象,Connectors对象定义组件内连接器,包含管理总线连接器、UBC/UBCDD连接器。具体如表8所示:
表8
/>
/>
示例性的,对于ResourceOrder对象,ResourceOrder对象描述BConnectors的上级资源归属顺序。具体如表9所示:
表9
示例性的,对于Zone对象,Zone对象描述UB总线连接器所属的区域信息。具体如表10所示:
表10
示例性的,对于Ports对象,Ports对象描述UB总线连接器的端口号。具体如表11所示:
表11
/>
示例性的,对于Chips对象,Chips对象定义组件内连接器,包含管理总线连接器、UB连接器。具体如表12所示:
表12
/>
示例性的,对于Registers对象数组,Register定义了chip的芯片寄存器信息。具体如表13所示:
表13
/>
示例性的,对于CPU平台对象,CPU平台对象应用于基础计算组件,定义组件的计算平台。具体如表14所示:
表14
示例性的,对于CPUSlots对象,CPUSlots对象应用于基础计算组件,定义组件的CPU Socket槽。具体如表15所示:
表15
示例性的,对于MemoryChannels对象,MemoryChannels对象应用于基础计算组件或内存组件,定义组件的内存通道信息。具体如表16所示:
表16
示例性的,对于MemorySlots对象,MemorySlots对象应用于基础计算组件或内存组件,定义组件的内存槽位信息。具体如表17所示:
表17
示例性的,对于PSUSlots对象,PSUSlots对象应用于管理扩展组件,定义电源槽位信息。具体如表18所示:
表18
示例性的,对于OCPSlots对象,OCPSlots对象应用于管理扩展组件,定义组件的OCP网卡槽位信息。具体如表19所示:
表19
示例性的,对于PCIePorts对象,PCIePorts对象应用于基础计算组件,定义CPU的PCIe Port信息。具体如表20所示:
表20
示例性的,对于DiskSlots对象,DiskSlots对象应用于定义硬盘槽位信息。具体如表21所示:
表21
示例性的,对于DiskPorts对象,DiskPorts对象应用于定义硬盘槽位信息。具体如表22所示:
表22
示例性的,对于WiFis对象,WiFis对象应用于定义BMC提供的WiFis接口定义。具体如表23所示:
表23
示例性的,对于TypeCs对象,TypeCs对象应用于定义BMC提供的TypeC接口定义。具体如表24所示:
表24
示例性的,对于SDs对象,SDs对象应用于定义SD卡槽位信息。具体如表25所示:
表25
示例性的,对于Digitrons对象,Digitrons对象应用于定义显示数码管信息。具体如表26所示:
表26
示例性的,对于HardDiskDraws对象,HardDiskDraws对象应用于定义硬盘抽屉信息。具体如表27所示:
表27
示例性的,对于FanSlots对象,FanSlots对象应用于定义风扇信息。具体如表28所示:
表28
示例性的,对于CSR逻辑对象(LogicalObjects),CSR逻辑对象主要定义组件内的与物理对象相关的逻辑对象,主要包含监控传感器信息。具体如表29所示:
表29
/>
/>
示例性的,对于DevTest对象,DevTest对象描述物理设备自检。具体如表30所示:
表30
示例性的,对于RefEth对象,RefEth对象描述相关的Eth网口。具体如表31所示:
表31
示例性的,对于VoltTest对象,VoltTest对象描述电压检测。具体如表32所示:
表32
在另一些示例中,整机自描述信息(PSR)包括整机拓扑信息以及整机散热信息。通过整机信息的自描述,使各组件组合成为一台服务器后整机可自适应管理维护。
示例性的,PSR的整机产品描述(Product Description)可以如表33所示:
表33
下面在示例性的对PSR的整机组件拓扑对象(ComponentTopology)进行简单介绍。
示例性的,对于组件管理总线连接拓扑,组件管理总线连接拓扑的信息可以如表34所示:
表34
示例性的,对于组件UB总线连接拓扑,组件UB总线连接拓扑的信息可以如表35所示:
表35
示例性的,系统内面板槽位与组件连接的对应关系可以如表36所示:
表36
/>
示例性的,系统内面板槽位与IEU组件连接的对应关系可以如表37所示:
表37
示例性的,Configurations对象定义IEUPCIeSlotInfo的某个slot支持的配置集合可以如表38所示:
表38
示例性的,CableCheck对象定义Configurations的某个slot预期的线缆连接关系配置可以如表39所示:
表39
示例性的,系统内面板槽位与SEU组件连接的对应关系可以如表40所示:
表40
/>
示例性的,Configurations对象定义SEUHddSlotInfo的某个slot支持的配置集合可以如表41所示:
表41
示例性的,CableCheck对象定义Configurations的某个slot预期的线缆连接关系配置可以如表42所示:
表42
示例性的,系统内面板槽位与FlexIO灵活插卡连接的对应关系可以如表43所示:
表43
示例性的,Configurations对象定义IEUPCIeSlotInfo的某个slot支持的配置集合可以如表44所示:
表44
示例性的,CableCheck对象定义Configurations的某个slot预期的线缆连接关系配置可以如表45所示:
表45
上文结合附图详细介绍了本申请提供的配置信息的管理方法,下文将结合附图进一步介绍本申请提供的管理装置。
为了实现上述功能,如图11所示,图11示出了本申请实施例提供的一种配置信息的管理装置110的结构示意图。管理装置110应用于服务器(如上述的传统服务器或新架构服务器),并用于执行上述的配置信息的管理方法,例如用于执行图4、图5、图6、图8或图9所示的方法。其中,管理装置110可以包括获取单元111、校验单元112以及启动单元113。
获取单元111,用于获取第一配置信息和第二配置信息。校验单元112,用于校验第一配置信息和第二配置信息的一致性,获得一致性校验结果。启动单元113,用于根据一致性校验结果启动服务器。其中,第一配置信息为服务器的BMC存储的配置信息,第二配置信息为第一时刻对服务器的配置信息进行备份的备份数据。作为示例,结合图5,获取单元111可以用于执行S201,校验单元112可以用于执行S202,启动单元113可以用于执行S203或S204。
可选的,管理装置110还包括备份单元114,用于在获取单元111获取第一配置信息和第二配置信息之前的第一时刻,对服务器的配置信息执行备份,获得第二配置信息。其中,第一时刻为服务器本次启动前的任一时刻,第二配置信息存储在BMC可访问的服务器的存储空间中。作为示例,结合图4,备份单元114可以用于执行S102。
可选的,当包括管理装置110的服务器为新架构服务器时,BMC可访问的服务器的存储空间为服务器组件的存储空间,组件包括基础板和/或功能组件,功能组件包括存储组件、输入输出IO组件、加速组件、内存扩展组件、散热组件、供电组件、计算组件、管理组件中至少一种,BMC可访问的组件的存储空间为组件中的非易失性存储介质。
可选的,当包括管理装置110的服务器为传统服务器时,BMC可访问的服务器的存储空间为设置于服务器主板上的非易失性存储介质。
可选的,管理装置110还包括确定单元115,用于当上述一致性校验结果为第一配置信息和第二配置信息的一致性校验成功时,将第一配置信息或第二配置信息确定为目标配置信息。启动单元113,具体用于根据目标配置信息启动服务器。作为示例,结合图5,确定单元115和启动单元113可以用于执行S203。
可选的,确定单元115,还用于当一致性校验结果为第一配置信息和第二配置信息的一致性校验失败时,根据预设规则将第一配置信息或第二配置信息确定为目标配置信息。其中,预设规则用于指示将第一配置信息和第二配置信息中版本更高的配置信息确定为目标配置信息的方式,或者,基于用户指示在第一配置信息和第二配置信息中确定目标配置信息的方式,或者,将第一配置信息和第二配置信息中记录有距离当前时刻更近的时间信息的配置信息确定为目标配置信息的方式。启动单元113,具体用于根据目标配置信息启动服务器。作为示例,结合图5,确定单元115和启动单元113可以用于执行S204。
可选的,管理装置110还包括更新单元116,用于将第一配置信息和第二配置信息中与目标配置信息不同的配置信息,更新为目标配置信息。作为示例,结合图5,更新单元116可以用于执行S205。
可选的,校验单元112,还用于在校验第一配置信息和第二配置信息的一致性之前,校验第一配置信息的完整性和第二配置信息的完整性,获得完整性校验结果,并在完整性校验结果为成功时,执行校验第一配置信息和第二配置信息的一致性的操作。作为示例,结合图6,校验单元112可以用于执行S2011。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种管理装置110的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。作为示例,结合图3,管理装置110中的校验单元112和确定单元115所实现的功能可以通过图3中的处理器301执行图3中的存储器302中的程序代码实现。获取单元111所实现的功能可以通过图3中的通信接口303实现。启动单元113、备份单元114以及更新单元116所实现的功能可以通过图3中的处理器301执行图3中的存储器302中的程序代码、以及通过图3中的通信接口303实现。
本申请还提供一种计算机设备。可选的,该计算设备具有图3所示的硬件结构。该计算设备包括上文所述的管理装置,该计算设备中的管理装置可以用于执行上文图4、图5、图6或图7所述的方法,不再赘述。
本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。需要说明的是,图11中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,还可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本申请实施例还提供一种计算机程序产品,以及用于存储该计算机程序产品的计算机可读存储介质。该计算机程序产品可以包括一个或多个程序指令,当该一个或多个程序指令被一个或多个处理器运行时可以提供以上针对图4、图5、图6、图8或图9描述的功能或者部分功能。因此,例如,参考图5中S201~S205的一个或多个特征可以由该计算机程序产品中的一个或多个指令来承担。在一些示例中,诸如针对图4、图5、图6、图8或图9描述的管理装置可以被配置为,响应于通过计算机可读存储介质中存储的一个或多个程序指令,提供各种操作、功能、或者动作。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在处理器上执行计算机指令时,全部或部分地产生按照本申请实施例的流程或功能。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (11)

1.一种配置信息的管理方法,其特征在于,所述方法应用于包括管理装置的服务器,所述方法由所述管理装置执行,包括:
获取第一配置信息和第二配置信息,所述第一配置信息为所述服务器的基板管理控制器BMC存储的配置信息,所述第二配置信息为第一时刻对所述服务器的配置信息进行备份的备份数据;
校验所述第一配置信息和所述第二配置信息的一致性,获得一致性校验结果;
根据所述一致性校验结果启动所述服务器。
2.根据权利要求1所述的方法,其特征在于,在所述获取第一配置信息和第二配置信息之前,所述方法还包括:
在所述第一时刻,对所述服务器的配置信息执行备份,获得所述第二配置信息,所述第一时刻为所述服务器本次启动前的任一时刻,所述第二配置信息存储在所述BMC可访问的所述服务器的存储空间中。
3.根据权利要求2所述的方法,其特征在于,当所述服务器为新架构服务器时,所述BMC可访问的所述服务器的存储空间为所述服务器中组件的存储空间,所述组件包括基础板和/或功能组件,所述功能组件包括存储组件、输入输出IO组件、加速组件、内存扩展组件、散热组件、供电组件、计算组件、管理组件中至少一种,所述BMC可访问的所述组件的存储空间为所述组件中的非易失性存储介质。
4.根据权利要求2所述的方法,其特征在于,当所述服务器为传统服务器时,所述BMC可访问的所述服务器的存储空间为设置于所述服务器主板上的非易失性存储介质。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据所述一致性校验结果启动所述服务器包括:
当所述一致性校验结果为所述第一配置信息和所述第二配置信息的一致性校验成功时,将所述第一配置信息或所述第二配置信息确定为目标配置信息;
根据所述目标配置信息启动所述服务器。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述根据所述一致性校验结果启动所述服务器包括:
当所述一致性校验结果为所述第一配置信息和所述第二配置信息的一致性校验失败时,根据预设规则将所述第一配置信息或所述第二配置信息确定为所述目标配置信息,其中,所述预设规则用于指示将所述第一配置信息和所述第二配置信息中版本更高的配置信息确定为所述目标配置信息的方式,或者,基于用户指示在所述第一配置信息和所述第二配置信息中确定所述目标配置信息的方式,或者,将所述第一配置信息和所述第二配置信息中记录有距离当前时刻更近的时间信息的配置信息确定为所述目标配置信息的方式;
根据所述目标配置信息启动所述服务器。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
将所述第一配置信息和所述第二配置信息中与所述目标配置信息不同的配置信息,更新为所述目标配置信息。
8.根据权利要求1所述的方法,其特征在于,在所述校验所述第一配置信息和所述第二配置信息的一致性之前,所述方法还包括:
校验所述第一配置信息的完整性和所述第二配置信息的完整性,获得完整性校验结果;当所述完整性校验结果为成功时,执行所述校验所述第一配置信息和所述第二配置信息的一致性的操作。
9.一种配置信息的管理装置,其特征在于,所述管理装置应用于服务器,所述管理装置用于在所述服务器的启动阶段执行如权利要求1-8中任一项所述的方法。
10.根据权利要求9所述的装置,其特征在于,所述管理装置为所述服务器的基板管理控制器BMC。
11.一种服务器,其特征在于,所述服务器包括多个组件和基板控制器BMC,所述组件包括基础板和/或功能组件,所述功能组件包括存储组件、输入输出IO组件、加速组件、内存扩展组件、散热组件、供电组件、计算组件、管理组件中至少一种;所述BMC中存储有所述服务器的配置信息,所述BMC用于将所述服务器的配置信息备份于所述多个组件的存储空间中,所述BMC还用于在所述服务器的启动阶段执行如权利要求1-8中任一项所述的方法。
CN202210908371.4A 2022-02-28 2022-07-29 配置信息的管理方法、装置及服务器 Pending CN116700801A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/108352 WO2024022212A1 (zh) 2022-02-28 2023-07-20 配置信息的管理方法、装置及服务器

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2022101867935 2022-02-28
CN202210186793 2022-02-28

Publications (1)

Publication Number Publication Date
CN116700801A true CN116700801A (zh) 2023-09-05

Family

ID=87822724

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210908371.4A Pending CN116700801A (zh) 2022-02-28 2022-07-29 配置信息的管理方法、装置及服务器
CN202210908833.2A Pending CN116700747A (zh) 2022-02-28 2022-07-29 固件升级的方法、控制装置及系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202210908833.2A Pending CN116700747A (zh) 2022-02-28 2022-07-29 固件升级的方法、控制装置及系统

Country Status (2)

Country Link
CN (2) CN116700801A (zh)
WO (1) WO2024022212A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117648134A (zh) * 2024-01-26 2024-03-05 宝德计算机系统股份有限公司 一种服务器多背板丝印自适应定位方法、装置及存储介质
CN117648134B (zh) * 2024-01-26 2024-05-14 宝德计算机系统股份有限公司 一种服务器多背板丝印自适应定位方法、装置及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812828B2 (en) * 2010-11-16 2014-08-19 Intel Corporation Methods and apparatuses for recovering usage of trusted platform module
CN113064646A (zh) * 2021-03-24 2021-07-02 山东英信计算机技术有限公司 一种bios启动方法、系统及相关装置
CN114328080A (zh) * 2021-11-29 2022-04-12 苏州浪潮智能科技有限公司 一种固件状态检测的方法及装置、电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117648134A (zh) * 2024-01-26 2024-03-05 宝德计算机系统股份有限公司 一种服务器多背板丝印自适应定位方法、装置及存储介质
CN117648134B (zh) * 2024-01-26 2024-05-14 宝德计算机系统股份有限公司 一种服务器多背板丝印自适应定位方法、装置及存储介质

Also Published As

Publication number Publication date
CN116700747A (zh) 2023-09-05
WO2024022212A1 (zh) 2024-02-01

Similar Documents

Publication Publication Date Title
CN107025406B (zh) 母板、计算机可读存储装置以及固件验证方法
JP5540155B2 (ja) プラットフォーム独立メモリ論理の提供
US10747883B2 (en) Collated multi-image check in system-on-chips
US11579893B2 (en) Systems and methods for separate storage and use of system BIOS components
US11036863B2 (en) Validating an image using an embedded hash in an information handling system
US20090210456A1 (en) Methods, Systems and Media for TPM Recovery Key Backup and Restoration
CN105122261A (zh) 从遭到破坏的系统启动代码中恢复
US10902127B2 (en) Method and apparatus for secure boot of embedded device
US7536604B2 (en) Method and system for reconfiguring functional capabilities in a data processing system with dormant resources
US20230140209A1 (en) System and method for secure access to a distributed virtual firmware network drive
US11340990B2 (en) System and method to run basic input/output system code from a non-volatile memory express device boot partition
US11900128B2 (en) Modularized basic input output system (BIOS) firmware activation
US11977640B2 (en) Systems and methods for authenticating the identity of an information handling system
US20240037501A1 (en) Validating secure modifications to information handling systems
US11514193B2 (en) Validating secure assembly and delivery of multiple information handling systems installed in a shared chassis
US20220207126A1 (en) Validating secure assembly and delivery of information handling systems
CN111198832B (zh) 一种处理方法和电子设备
US20230127223A1 (en) Physical port validation for information handling systems
US20230126538A1 (en) Component tracking for information handling systems
US20230130694A1 (en) Validation of fixed firmware profiles for information handling systems
US20230133726A1 (en) Method and system for avoiding boot failure from platform firmware resilience execution
CN116700801A (zh) 配置信息的管理方法、装置及服务器
US11423180B2 (en) Secure identification of components installed in information handling systems
CN116702149A (zh) 一种可信度量方法、服务器以及芯片
US20240020032A1 (en) Option read-only memory firmware-based remediation

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