固件升级方法及固件升级系统技术方案

技术编号:18496687 阅读:46 留言:0更新日期:2018-07-21 19:59
本公开提供了一种固件升级方法,包括:确定至少一个服务器,其中,至少一个服务器中的每个服务器都包含有待升级的固件;通过内核初始化引导程序,引导至少一个服务器中的每个服务器进行内核初始化;以及在内核初始化完成后,将第一指定版本的固件升级信息下发给至少一个服务器中对应的服务器,以使对应的服务器能够基于第一指定版本的固件升级信息对其包含的待升级的固件的第一当前版本进行升级,其中,第一指定版本高于第一当前版本。此外,本公开还提供了一种应用于包含有待升级的固件的服务器的估计升级方法、一种固件升级系统以及一种应用于包含有待升级的固件的服务器的固件升级系统。

Firmware upgrading method and firmware upgrading system

The present disclosure provides a method for firmware upgrading, including: determining at least one server in which each server in at least one server contains the firmware to be upgraded; initializes the boot program by the kernel, guides each server in at least one server into the kernel initialization; and at the initial kernel. After the completion, the first specified version of the firmware upgrade information is sent to the corresponding server in at least one server to enable the corresponding server to upgrade the first current version of the firmware to be upgraded, based on the firmware upgrade information of the first specified version, in which the first specified version is higher than the first. Previous version. In addition, the public also provides an estimated upgrade method for servers that include firmware to be upgraded, a firmware upgrade system, and a firmware upgrade system for servers that are applied to the firmware to be upgraded.

【技术实现步骤摘要】
固件升级方法及固件升级系统
本公开涉及一种固件升级方法及固件升级系统。
技术介绍
随着电子技术的不断发展,电子设备中的网卡、独立磁盘冗余阵列卡(RedundantArrayofIndependentDisks,简称为RAID卡)或者主机总线适配器卡(HostBusAdapter,简称为HBA卡)等固件的版本也随之升级。然而,不同版本的固件在实际应用过程中可能遇到各种兼容性问题。以服务器的网卡为例,由于版本兼容性的原因,可能无法完成网卡版本的升级,导致服务器的操作系统(OperatingSystem,简称为OS)可能无法正常启动,因此需要在服务器没有安装操作系统的情况下,对固件进行升级。然而,在实现本公开实施例的过程中,专利技术人发现相关技术中至少存在如下问题:针对服务器没有安装操作系统的情况,现有的固件升级方案需要人工手动操作实现,因而比较麻烦,尤其在大批量的服务器固件需要升级的情况下,操作更为繁琐。针对相关技术中的上述问题,目前还未提出有效的解决方案。
技术实现思路
本公开的第一个方面提供了一种固件升级方法,包括:确定至少一个服务器,其中,上述至少一个服务器中的每个服务器都包含有待升级的固件;通过内核初始化引导程序,引导上述至少一个服务器中的每个服务器进行内核初始化;以及在内核初始化完成后,将第一指定版本的固件升级信息下发给上述至少一个服务器中对应的服务器,以使上述对应的服务器能够基于上述第一指定版本的固件升级信息对其包含的待升级的固件的第一当前版本进行升级,其中,上述第一指定版本高于上述第一当前版本。可选地,通过内核初始化引导程序,引导上述至少一个服务器中的每个服务器进行内核初始化包括:获取上述至少一个服务器中的每个服务器发送的固件升级请求;以及响应于上述固件升级请求,向上述至少一个服务器中对应的服务器下发上述内核初始化引导程序,以使上述对应的服务器运行上述内核初始化引导程序,并在上述内核初始化引导程序的引导下进行内核初始化。可选地,在内核初始化完成后,将第一指定版本的固件升级信息下发给上述至少一个服务器中对应的服务器包括:在上述对应的服务器完成内核初始化后,确定上述对应的服务器所包含的待升级的固件的第二当前版本;判断上述至少一个服务器中除对应的服务器之外的其他服务器所包含的待升级的固件的版本中是否存在高于上述第二当前版本的版本;以及若存在,则将上述其他服务器所包含的待升级的固件的版本中高于上述第二当前版本的版本作为上述第一指定版本下发给上述对应的服务器。本公开的第二个方面提供了一种固件升级方法,应用于包含有待升级的固件的服务器,上述方法包括:在需要对上述待升级的固件进行升级的情况下,使上述服务器获取外部设备下发的内核初始化引导程序;在获取到上述内核初始化引导程序后,使上述服务器在上述内核初始化引导程序的引导下进行内核初始化;在内核初始化完成后,获取上述外部设备下发的第二指定版本的固件升级信息;以及基于上述第二指定版本的固件升级信息对上述服务器所包含的待升级的固件的第三当前版本进行升级,其中,上述第二指定版本高于上述第三当前版本。可选地,上述方法还包括:在固件升级完成后,使上述服务器将其包含的固件的升级后的版本信息上报给上述外部设备,以使上述外部设备能够基于上述升级后的版本信息指导上述服务器和/或其他服务器对固件进行升级。本公开的第三个方面提供了一种固件升级系统,包括:确定模块,用于确定至少一个服务器,其中,上述至少一个服务器中的每个服务器都包含有待升级的固件;引导模块,用于通过内核初始化引导程序,引导上述至少一个服务器中的每个服务器进行内核初始化;以及下发模块,用于在内核初始化完成后,将第一指定版本的固件升级信息下发给上述至少一个服务器中对应的服务器,以使上述对应的服务器能够基于上述第一指定版本的固件升级信息对其包含的待升级的固件的第一当前版本进行升级,其中,上述第一指定版本高于上述第一当前版本。可选地,引导模块包括:获取单元,用于获取上述至少一个服务器中的每个服务器发送的固件升级请求;以及下发单元,用于响应于上述固件升级请求,向上述至少一个服务器中对应的服务器下发上述内核初始化引导程序,以使上述对应的服务器运行上述内核初始化引导程序,并在上述内核初始化引导程序的引导下进行内核初始化。可选地,下发模块包括:第一确定单元,用于在上述对应的服务器完成内核初始化后,确定上述对应的服务器所包含的待升级的固件的第二当前版本;判断单元,用于判断上述至少一个服务器中除对应的服务器之外的其他服务器所包含的待升级的固件的版本中是否存在高于上述第二当前版本的版本;以及第二确定单元,用于在存在高于上述第二当前版本的版本的情况下,将上述其他服务器所包含的待升级的固件的版本中高于上述第二当前版本的版本作为上述第一指定版本下发给上述对应的服务器。本公开的第四个方面提供了一种固件升级系统,应用于包含有待升级的固件的服务器,上述系统包括:第一获取模块,用于在需要对上述待升级的固件进行升级的情况下,使上述服务器获取外部设备下发的内核初始化引导程序;初始化模块,用于在获取到上述内核初始化引导程序后,使上述服务器在上述内核初始化引导程序的引导下进行内核初始化;第二获取模块,用于在内核初始化完成后,获取上述外部设备下发的第二指定版本的固件升级信息;以及升级模块,用于基于上述第二指定版本的固件升级信息对上述服务器所包含的待升级的固件的第三当前版本进行升级,其中,上述第二指定版本高于上述第三当前版本。可选地,上述系统还包括:上报模块,用于在固件升级完成后,使上述服务器将其包含的固件的升级后的版本信息上报给上述外部设备,以使上述外部设备能够基于上述升级后的版本信息指导上述服务器和/或其他服务器对固件进行升级。附图说明为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:图1示意性示出了根据本公开实施例的适用于固件升级方法及其系统的应用场景;图2示意性示出了根据本公开实施例的固件升级方法的流程图;图3A示意性示出了根据本公开实施例的通过内核初始化引导程序,引导所述至少一个服务器中的每个服务器进行内核初始化的流程图;图3B示意性示出了根据本公开实施例的将第一指定版本的固件升级信息下发给所述至少一个服务器中对应的服务器的流程图;图4A示意性示出了根据本公开另一实施例的固件升级方法的流程图;图4B示意性示出了根据本公开实又一实施例的固件升级方法的流程图;图5示意性示出了根据本公开实施例的固件升级系统的框图;图6A示意性示出了根据本公开实施例的引导模块的框图;图6B示意性示出了根据本公开实施例的下发模块的框图;图7A示意性示出了根据本公开另一实施例的固件升级系统的框图;图7B示意性示出了根据本公开又一实施例的固件升级系统的框图;以及图8示意性示出了适于用来实现本公开实施例的计算机系统的框图。具体实施方式以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除本文档来自技高网...

【技术保护点】
1.一种固件升级方法,包括:确定至少一个服务器,其中,所述至少一个服务器中的每个服务器都包含有待升级的固件;通过内核初始化引导程序,引导所述至少一个服务器中的每个服务器进行内核初始化;以及在内核初始化完成后,将第一指定版本的固件升级信息下发给所述至少一个服务器中对应的服务器,以使所述对应的服务器能够基于所述第一指定版本的固件升级信息对其包含的待升级的固件的第一当前版本进行升级,其中,所述第一指定版本高于所述第一当前版本。

【技术特征摘要】
1.一种固件升级方法,包括:确定至少一个服务器,其中,所述至少一个服务器中的每个服务器都包含有待升级的固件;通过内核初始化引导程序,引导所述至少一个服务器中的每个服务器进行内核初始化;以及在内核初始化完成后,将第一指定版本的固件升级信息下发给所述至少一个服务器中对应的服务器,以使所述对应的服务器能够基于所述第一指定版本的固件升级信息对其包含的待升级的固件的第一当前版本进行升级,其中,所述第一指定版本高于所述第一当前版本。2.根据权利要求1所述的方法,其中,通过内核初始化引导程序,引导所述至少一个服务器中的每个服务器进行内核初始化包括:获取所述至少一个服务器中的每个服务器发送的固件升级请求;以及响应于所述固件升级请求,向所述至少一个服务器中对应的服务器下发所述内核初始化引导程序,以使所述对应的服务器运行所述内核初始化引导程序,并在所述内核初始化引导程序的引导下进行内核初始化。3.根据权利要求1所述的方法,其中,在内核初始化完成后,将第一指定版本的固件升级信息下发给所述至少一个服务器中对应的服务器包括:在所述对应的服务器完成内核初始化后,确定所述对应的服务器所包含的待升级的固件的第二当前版本;判断所述至少一个服务器中除对应的服务器之外的其他服务器所包含的待升级的固件的版本中是否存在高于所述第二当前版本的版本;以及若存在,则将所述其他服务器所包含的待升级的固件的版本中高于所述第二当前版本的版本作为所述第一指定版本下发给所述对应的服务器。4.一种固件升级方法,应用于包含有待升级的固件的服务器,所述方法包括:在需要对所述待升级的固件进行升级的情况下,使所述服务器获取外部设备下发的内核初始化引导程序;在获取到所述内核初始化引导程序后,使所述服务器在所述内核初始化引导程序的引导下进行内核初始化;在内核初始化完成后,获取所述外部设备下发的第二指定版本的固件升级信息;以及基于所述第二指定版本的固件升级信息对所述服务器所包含的待升级的固件的第三当前版本进行升级,其中,所述第二指定版本高于所述第三当前版本。5.根据权利要求4所述的方法,其中,所述方法还包括:在固件升级完成后,使所述服务器将其包含的固件的升级后的版本信息上报给所述外部设备,以使所述外部设备能够基于所述升级后的版本信息指导所述服务器和/或其他服务器对固件进行升级。6.一种固件升级系统,包括:确定模块,用于确...

【专利技术属性】
技术研发人员:李继启
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京,11

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

1