固件更新方法、电子设备及控制系统与流程

文档序号:18008923发布日期:2019-06-25 23:44阅读:135来源:国知局
固件更新方法、电子设备及控制系统与流程

本申请实施例涉及计算机技术领域,尤其涉及固件更新方法、电子设备及控制系统。



背景技术:

随着互联网技术的不断发展,许多企业建立了数据中心(datacenter)。数据中心中一般会有很多服务器,以提供不同的服务。由于用户需求在不断地调整变化,这就需要对服务器的性能进行不断地更新,例如对服务器的基板管理控制器(bmc,baseboardmanagementcontroller)固件进行升级。

目前通常情况下,需要运维人员手动对每一台服务器进行bmc固件更新。而且在更新过程中,往往不会考虑服务器当前的运行情况。



技术实现要素:

本申请实施例提供了固件更新方法、电子设备及控制系统。

第一方面,本申请实施例提供了一种固件更新方法,包括:响应于基板管理控制器检测到与服务器对应的目标固件数据,将目标固件数据存储至服务器;采集服务器的第一信息,其中,第一信息与服务器的负载功耗相关;在第一信息满足一功耗条件的情况下,利用目标固件数据更新服务器中的当前固件数据。

在一些实施例中,功耗条件为第一信息所指示的负载功耗低于预设功耗值;以及该方法还包括:通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长内的功耗是否低于预设功耗值。

在一些实施例中,通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长内的功耗是否低于预设功耗值,包括:通过基板管理控制器周期性地采集服务器的功耗,确定在预设时长内采集的多个功耗是否均小于预设功耗值。

在一些实施例中,目标固件数据存储于第一存储资源中,包括更新的固件版本或某一特定的固件版本;以及该方法还包括:通过基板管理控制器访问第一存储资源,确定第一存储资源中是否有与服务器对应的目标固件数据。

在一些实施例中,确定第一存储资源中是否有与服务器对应的目标固件数据,包括:将第一存储资源中固件的版本信息与服务器中当前固件的版本信息进行匹配;和/或确定第一存储资源中的固件信息是否包含预设标识,其中,预设标识用于表征与服务器对应的目标固件。

在一些实施例中,第一存储资源包括数据库;以及该方法还包括:在服务器中的固件数据更新后,通过基板管理控制器向数据库发送服务器的更新情况。

在一些实施例中,该方法还包括:在服务器中的固件数据更新失败的情况下,重新采集服务器的第一信息,并在重新采集的第一信息满足功耗条件的情况下,利用目标固件数据再次更新服务器中的当前固件数据。

在一些实施例中,该方法还包括:在服务器中的固件数据更新成功的情况下,删除服务器中存储的目标固件数据。

第二方面,本申请实施例提供了一种电子设备,包括:存储模块,被配置成响应于基板管理控制器检测到与服务器对应的目标固件数据,将目标固件数据存储至服务器;采集模块,被配置成采集服务器的第一信息,其中,第一信息与服务器的负载功耗相关;处理模块,被配置成在第一信息满足一功耗条件的情况下,利用目标固件数据更新服务器中的当前固件数据。

在一些实施例中,功耗条件为第一信息所指示的负载功耗低于预设功耗值;以及该电子设备还包括监控模块,被配置成通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长内的功耗是否低于预设功耗值。

在一些实施例中,目标固件数据存储于第一存储资源中,包括更新的固件版本或某一特定的固件版本;以及该电子设备还包括通信模块,被配置成通过基板管理控制器访问第一存储资源,确定第一存储资源中是否有与服务器对应的目标固件数据。

第三方面,本申请实施例还提供了一种控制系统,包括:第一存储资源,被配置成存储目标固件数据;服务器,被配置成响应于基板管理控制器检测到第一存储资源中有与服务器对应的目标固件数据,将目标固件数据存储至服务器;采集服务器的第一信息,其中,第一信息与服务器的负载功耗相关;在第一信息满足一功耗条件的情况下,利用目标固件数据更新服务器中的当前固件数据。

本申请实施例提供的固件更新方法、电子设备及控制系统,在基板管理控制器检测到与服务器对应的目标固件数据的情况下,可以自动地将目标固件数据存储至服务器中。接着,可以采集服务器的第一信息。其中,第一信息可以与服务器的负载功耗相关。并且在第一信息满足一功耗条件的情况下,可以利用目标固件数据自动更新服务器中的当前固件数据。也就是说,这种实施方式可以根据服务器的负载功耗情况,来确定对其进行固件自动更新的时机。这样不仅有助于减少运维人员的工作量,降低人为出错率。而且可以有利于减少对服务器正常工作运行的影响,保证服务器的处理效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1为本申请提供的固件更新方法的一个实施例的流程图;

图2为本申请提供的电子设备的一个实施例的结构示意图;

图3为本申请提供的控制系统的一个实施例的结构示意图。

具体实施方式

为使本领域技术人员更好的理解本申请的技术方案,下面结合附图和具体实施方式对本申请作详细说明。

此处参考附图描述本申请的各种方案以及特征。

通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特性将会变得显而易见。

还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。

当结合附图时,鉴于以下详细说明,本申请的上述和其它方面、特征和优势将变得更为显而易见。

此后参照附图描述本申请的具体实施例;然而,应当理解,所发明的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以根据用户的历史的操作,判明真实的意图,避免不必要或多余的细节使得本申请模糊不清。因此,本文所发明的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。

本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其它实施例中”,其均可指代根据本申请的相同或不同实施例中的一个或多个。

请参见图1,其示出了本申请提供的固件更新方法的一个实施例的流程100。该固件更新方法可以应用于各种电子设备。这里的电子设备可以包括(但不限于)智能手机、平板电脑、台式计算机和服务器等等。该固件更新方法可以包括以下步骤:

步骤101,响应于基板管理控制器检测到与服务器对应的目标固件数据,将目标固件数据存储至服务器。

通常情况下,基板管理控制器(bmc)一般安装在服务器上。并且一台服务器往往会配置一个基板管理控制器。也就是说,一台服务器通常与一个基板管理控制器相对应。可以理解的是,基板管理控制器可以独立于服务器,安装在其他电子设备上。此外,一个基板管理控制器也可以同时管理控制多台服务器。

在本实施例中,若基板管理控制器检测到与其控制管理的服务器对应的目标固件数据,则可以将目标固件数据存储在服务器上。例如可以将目标固件数据存储在服务器本地的存储部件中,如sd存储卡(securedigitalmemorycard)或cf卡(compactflash)等等。其中,目标固件数据可以是服务器所需更改后的固件数据。也就是说,将服务器中的当前固件数据更改为目标固件数据后,可以实现所需的服务功能。

作为示例,目标固件数据可以包括(但不限于)更新的固件版本(即新版本的固件数据)和/或某一特定的固件版本(例如某一旧版本的固件数据)。可以理解的是,这里的目标固件数据可以是完整的固件安装包,也可以是仅包含修改部分数据的数据包。这样有助于减小目标固件数据的大小,降低其所需占用的存储空间,提高传输效率。

在这里,用户可以使用终端通过有线连接方式或无线连接方式,来向基板管理控制器发送目标固件数据。又例如,基板管理控制器可以根据用户设置的指定路径,来获取目标固件数据。可选地,目标固件数据也可以存储于第一存储资源中。这里的第一存储资源可以是硬件设备,也可以是软件应用。第一存储资源可以包括(但不限于)以下至少一种:u盘、移动硬盘、数据库、云端网盘等等。这样可以满足不同用户的使用需求。此时,基板管理控制器可以访问该第一存储资源,并可以确定其中是否有与服务器对应的目标固件数据。

可以理解的是,基板管理控制器可以周期性地访问第一存储资源,也可以在接收到访问指令的情况下,访问第一存储资源。其中,访问指令可以是用户发送的,也可以是检测到第一存储资源与基板管理控制器或服务器电连接时而生成的。如当有设备插入服务器上的某个接口时可以生成访问指令。

此外,基板管理控制器可以通过多种方式,来确定是否有与服务器对应的目标固件数据。

例如,可以将第一存储资源中固件的版本信息与服务器中当前固件的版本信息进行匹配。其中,版本信息可以包括(但不限于)以下至少一项:固件名称、版本号、版本创建时间等等。在这里,若第一存储资源中固件与服务器中固件的固件名称相同,且前者的版本号大于后者的版本号,说明第一存储资源中固件是服务器中固件的更新升级版本,则可以确定第一存储资源中有与服务器对应的目标固件数据。

又例如,确定第一存储资源中的固件信息是否包含预设标识。其中,预设标识可以用于表征与服务器对应的目标固件。作为示例,预设标识可以是两位字符串。第一位字符可以用于表示对应的服务器,如a表示服务器a,b表示服务器b等等。而第二位字符可以用于表示对应的固件数据,如1表示新版本的固件数据,0表示旧版本的固件数据。为了进一步地满足不同使用需求,第二位字符还可以用于表示对应等级版本的固件数据,如5表示比当前版本新一个版本的固件数据,9表示最新版本的固件数据,4表示比当前版本旧一个版本的固件数据(即回退至前一版本)。

步骤102,采集服务器的第一信息。

在本实施例中,在服务器运行过程中,基板管理控制器可以采集服务器的第一信息。其中,第一信息可以与服务器的负载功耗相关,如可以包括(但不限于)数据通道占用比等。也就是说,根据第一信息可以直接或间接地确定服务器当前的负载功耗情况。需要说明的是,上述采集方式可以根据实际需求进行设置,如周期性(每隔30秒)或实时采集。

步骤103,在第一信息满足一功耗条件的情况下,利用目标固件数据更新服务器中的当前固件数据。

在本实施例中,可以确定步骤102中采集的第一信息是否满足功耗条件。这里的功耗条件在本申请中并不限制,可以根据实际情况进行设置。并且在第一信息满足一功耗条件的情况下,可以利用目标固件数据更新服务器中的当前固件数据。这里的更新方式在本申请中并不限制。例如,可以在服务器中重新安装目标固件数据,以覆盖当前的固件数据。又例如,可以比较目标固件数据与当前固件数据的不同部分,从而仅对当前固件数据进行不同部分的更新。这样有利于提高固件的更新效率,降低对服务器资源的占用。

在本实施例的一些可选的实现方式,功耗条件可以为第一信息所指示的负载功耗低于预设功耗值。其中,预设功耗值同样可以根据实际情况进行设置。此时,可以通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长(如1分钟)内的功耗是否低于预设功耗值。需要说明的是,这里的在预设时长内的功耗可以根据实际需求来确定,如可以是预设时长内功耗的平均值,也可以是预设时长内功耗的中值等等。

作为示例,可以通过基板管理控制器周期性地采集服务器的功耗,并确定在预设时长内采集的多个功耗是否均小于预设功耗值。在这里,采集周期的时长通常要比预设时长短。也就是说,基板管理控制器首先可以确定当前采集的功耗是否低于预设功耗值。若当前采集的功耗低于预设功耗值,则可以将当前时刻作为起始时间,确定在预设时长内采集的其他多个功耗是否也均小于预设功耗值。这样有助于提高功耗监控结果的准确度,进而在服务器负载功耗较低的时间段进行固件自动更新。

需要说明的是,目标固件数据往往较大,而基板管理控制器中的存储空间通常有限。因此可以将目标固件数据存储在服务器中。此外,在传输存储目标固件数据的过程中,会占用服务器资源。为了降低对后续采集监控服务器的功耗情况产生影响,可以先将目标固件数据存储在服务器中。

本申请实施例提供的固件更新方法,在基板管理控制器检测到与服务器对应的目标固件数据的情况下,可以自动地将目标固件数据存储至服务器中。接着,可以采集服务器的第一信息。其中,第一信息可以与服务器的负载功耗相关。并且在第一信息满足一功耗条件的情况下,可以利用目标固件数据自动更新服务器中的当前固件数据。也就是说,这种实施方式可以根据服务器的负载功耗情况,来确定对其进行固件自动更新的时机。这样不仅有助于减少运维人员的工作量,降低人为出错率。而且可以有利于减少对服务器正常工作运行的影响,保证服务器的处理效率。

在一些实施例中,若上述第一存储资源为数据库,则在服务器中的固件数据更新后,还可以通过基板管理控制器向数据库发送服务器的更新情况。数据库还可以对反馈的更新情况进行记录存储,这样可以使运维人员及时了解固件的更新情况,也便于运维人员管理。可以理解的是,这里的更新情况有可能是更新成功,也有可能是更新失败。即利用目标固件数据对服务器中的当前固件数据进行更新的结果可能是成功,也可能是失败。

可选地,在服务器中的固件数据更新失败的情况下,可以重新采集服务器的第一信息。并在重新采集的第一信息满足功耗条件的情况下,可以利用目标固件数据再次对服务器中的当前固件数据进行更新。具体过程可以参见上述步骤102和步骤103中的相关描述,此处不再赘述。

进一步地,在服务器中的固件数据更新成功的情况下,还可以删除服务器中存储的目标固件数据。这样可以对服务器中的数据进行及时清理,减少存储空间的占用,提升服务器的处理效率。

继续参见图2,作为对上述图1所示方法的实现,本申请还提供了一种电子设备的一个实施例。该电子设备实施例与上述各实施例所示的方法实施例相对应。该电子设备可以是各种电子设备。

如图2所示,本实施例的电子设备200可以包括:存储模块201,被配置成响应于基板管理控制器检测到与服务器对应的目标固件数据,将所述目标固件数据存储至所述服务器;采集模块202,被配置成采集所述服务器的第一信息,其中,所述第一信息与所述服务器的负载功耗相关;处理模块203,被配置成在所述第一信息满足一功耗条件的情况下,利用所述目标固件数据更新所述服务器中的当前固件数据。

在一些实施例中,功耗条件可以为第一信息所指示的负载功耗低于预设功耗值;以及该电子设备200还可以包括监控模块(图2中未示出),被配置成通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长内的功耗是否低于预设功耗值。

可选地,监控模块可以进一步被配置成通过基板管理控制器周期性地采集服务器的功耗,确定在预设时长内采集的多个功耗是否均小于预设功耗值。

在一些应用场景中,目标固件数据可以存储于第一存储资源中,包括更新的固件版本或某一特定的固件版本;以及该电子设备200还可以包括通信模块(图2中未示出),被配置成通过基板管理控制器访问第一存储资源,确定第一存储资源中是否有与服务器对应的目标固件数据。

可选地,通信模块可以进一步被配置成:将第一存储资源中固件的版本信息与服务器中当前固件的版本信息进行匹配;和/或确定第一存储资源中的固件信息是否包含预设标识,其中,预设标识用于表征与服务器对应的目标固件。

进一步地,第一存储资源可以包括数据库;以及该电子设备200还可以包括反馈模块(图2中未示出),被配置成在服务器中的固件数据更新后,通过基板管理控制器向数据库发送服务器的更新情况。

在一些实施例中,在服务器中的固件数据更新失败的情况下,采集模块202还可以被配置成重新采集服务器的第一信息;以及处理模块203还可以被配置成在重新采集的第一信息满足功耗条件的情况下,利用目标固件数据再次更新服务器中的当前固件数据。

可选地,处理模块203还可以被配置成在服务器中的固件数据更新成功的情况下,删除服务器中存储的目标固件数据。

可以理解的是,该电子设备200中记载的诸模块与参考图1描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于该电子设备200及其中包含的模块,在此不再赘述。

本申请还提供了一种控制系统,包括第一存储资源和服务器。下面参见图3,其示出了本申请提供的控制系统的一个实施例的结构示意图。

如图3所示,第一存储资源301可以被配置成存储目标固件数据。而服务器302可以被配置成响应于基板管理控制器检测到第一存储资源中有与服务器对应的目标固件数据,将目标固件数据存储至服务器;采集服务器的第一信息,其中,第一信息与服务器的负载功耗相关;在第一信息满足一功耗条件的情况下,利用目标固件数据更新服务器中的当前固件数据。

在一些实施例中,功耗条件可以为第一信息所指示的负载功耗低于预设功耗值;以及服务器302还可以被配置成通过基板管理控制器对服务器的功耗进行监控,并确定服务器在预设时长内的功耗是否低于预设功耗值。

可选地,服务器302可以进一步被配置成通过基板管理控制器周期性地采集服务器的功耗,确定在预设时长内采集的多个功耗是否均小于预设功耗值。

进一步地,服务器302还可以被配置成将第一存储资源中固件的版本信息与服务器中当前固件的版本信息进行匹配;和/或确定第一存储资源中的固件信息是否包含预设标识,其中,预设标识用于表征与服务器对应的目标固件。

在一些应用场景中,第一存储资源301可以包括数据库;以及服务器302还可以被配置成在服务器中的固件数据更新后,通过基板管理控制器向数据库发送服务器的更新情况。

可选地,服务器302还可以被配置成在服务器中的固件数据更新失败的情况下,重新采集服务器的第一信息,并在重新采集的第一信息满足功耗条件的情况下,利用目标固件数据再次更新服务器中的当前固件数据。

进一步地,服务器302还可以被配置成在服务器中的固件数据更新成功的情况下,删除服务器中存储的目标固件数据。

由于本实施例所介绍的电子设备、控制系统为本申请实施例中的固件更新方法所对应的电子设备、控制系统,故而,基于本申请实施例中的固件更新方法,本领域的技术人员能够了解本申请实施例中电子设备、控制系统的具体实施方式以及其各种变化形式,所以在此对于该电子设备、控制系统不再详细介绍。只要本领域所述技术人员实施本申请实施例中的固件更新方法的电子设备、控制系统,都属于本申请所欲保护的范围。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理模块以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理模块执行的指令产生用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的步骤。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1