掌桥专利:专业的专利平台
掌桥专利
首页

一种BMC系统升级方法、系统、装置及可读存储介质

文献发布时间:2023-06-19 18:34:06


一种BMC系统升级方法、系统、装置及可读存储介质

技术领域

本发明涉及计算机技术领域,更具体的说是涉及一种BMC系统升级方法、系统、装置及可读存储介质。

背景技术

随着云计算、人工智能、5G通信等技术的不断发展,服务器迎来全新的发展机会,客户对于服务器订单数量逐年增多。随着服务器数量的增加和技术的更新,BMC(BaseboardManagement Controller,基板管理控制器)的功能也日益强大。在服务器领域,BMC提供本地和远程诊断、控制台支持、配置管理、硬件管理、故障诊断、告警推送等服务器管理功能。

传统的BMC系统升级流程是先将新版本BMC镜像写入Flash中,然后重启BMC,再使用新版本BMC,升级效率比较低,用户等待时间长。而且,如果想回退到升级前的BMC版本,需要重新升级旧版本镜像,无法直接回退。

发明内容

针对以上问题,本发明的目的在于提供一种BMC系统升级方法、系统、装置及可读存储介质,能够提升BMC系统升级效率,减少用户等待时长。

本发明为实现上述目的,通过以下技术方案实现:一种BMC系统升级方法,包括如下步骤:

S1:打开BMC升级界面;

S2:联网查询BMC版本,并选择升级版本;

S3:选择升级方式,并通过BMC记录升级方式;

S4:BMC直接引导所选升级版本的BMC内核,并完成BMC的启动;

S5:运行所选升级版本的BMC;

S6:判断是否触发Flash升级;若是,则执行步骤S7;若否,则执行步骤S9;

S7:BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录;

S8:BMC将所选升级版本的BMC镜像写入Flash,并执行步骤S11;

S9:判断是否需要回退到旧版本的BMC;若是,则执行步骤S10;若否,则执行步骤S11;

S10:重新启动旧版本的BMC镜像,以完成旧版本BMC的回退;

S11:完成BMC的升级操作。

进一步,所述步骤S1包括:使用BMC的Web界面或者客户端程序,选择BMC升级功能,打开BMC的升级界面。

进一步,所述步骤S2包括:在BMC升级界面中,联网查询可以升级的BMC版本镜像以及版本升级信息,用户根据使用需求,选择需要升级的BMC版本镜像。

进一步,所述升级方式包括第一升级方式和第二升级方式;

第一升级方式具体为:体验使用所选升级版本BMC,升级版本BMC启动后,其镜像并不写入Flash;

第二升级方式具体为:升级版本BMC启动后,自动将其镜像写入Flash。

进一步,所述步骤S4包括:BMC使用kexec工具,通过网络文件系统,直接在当前内核引导存放在网络文件系统中的所选升级版本的BMC内核,并完成新版本BMC的启动。

进一步,所述步骤S8包括:BMC启动Flash升级线程,将所选升级版本的BMC镜像写入服务器中配备的单个或者多个BMC Flash中。

进一步,所述步骤S10包括:BMC重新启动后,通过uboot程序引导Flash中存储的旧版本BMC镜像,以完成旧版本BMC的启动。

相应的,本发明还公开了一种BMC系统升级系统,包括:

启动单元,用于打开BMC升级界面;

查询选择单元,用于联网查询BMC版本,选择升级版本,选择升级方式,并通过BMC记录升级方式;

引导启动单元,用于通过BMC直接引导所选升级版本的BMC内核,并完成BMC的启动;

第一判断单元,用于判断是否触发Flash升级;

挂载单元,用于控制BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录;

镜像存储单元,用于控制BMC将所选升级版本的BMC镜像写入Flash;

第二判断单元,用于判断是否需要回退到旧版本的BMC;

回退单元,用于重新启动旧版本的BMC镜像,以完成旧版本BMC的回退。

进一步,启动单元具体用于:使用BMC的Web界面或者客户端程序,选择BMC升级功能,打开BMC的升级界面。

进一步,查询选择单元具体用于:首先,在BMC升级界面中,联网查询可以升级的BMC版本镜像以及版本升级信息,用户根据使用需求,选择需要升级的BMC版本镜像,然后选择升级方式,并通过BMC记录升级方式。

进一步,引导启动单元具体用于:BMC使用kexec工具,通过网络文件系统,直接在当前内核引导存放在网络文件系统中的所选升级版本的BMC内核,并完成新版本BMC的启动。

进一步,镜像存储单元具体用于:BMC启动Flash升级线程,将所选升级版本的BMC镜像写入服务器中配备的单个或者多个BMC Flash中。

进一步,回退单元具体用于:BMC重新启动后,通过uboot程序引导Flash中存储的旧版本BMC镜像,以完成旧版本BMC的启动。

相应的,本发明公开了一种BMC系统升级装置,包括:

存储器,用于存储BMC系统升级程序;

处理器,用于执行所述BMC系统升级程序时实现如上文任一项所述BMC系统升级方法的步骤。

相应的,本发明公开了一种可读存储介质,所述可读存储介质上存储有BMC系统升级程序,所述BMC系统升级程序被处理器执行时实现如上文任一项所述BMC系统升级方法的步骤。

对比现有技术,本发明有益效果在于:本发明公开了一种BMC系统升级方法、系统、装置及可读存储介质,实现了BMC系统升级方式的自主化和多样化。具体的,用户可以直接体验使用新版本BMC,然后可以选择将新版本BMC镜像写入Flash,也可以选择直接回退到升级前版本的BMC。从而提升了BMC系统的升级效率,减少了用户等待时长。

由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本发明具体实施方式的方法流程图。

图2是本发明具体实施方式的系统结构图。

图中,1、启动单元;2、查询选择单元;3、引导启动单元;4、第一判断单元;5、挂载单元;6、镜像存储单元;7、第二判断单元;8、回退单元。

具体实施方式

本发明的核心是提供一种BMC系统升级方法,现有技术中,传统的BMC系统升级流程是先将新版本BMC镜像写入Flash中,然后重启BMC,再使用新版本BMC,升级效率比较低,用户等待时间长。而且,如果想回退到升级前的BMC版本,需要重新升级旧版本镜像,无法直接回退。

而本发明提供的BMC系统升级方法,该方法主要是在BMC升级界面,选择可以联网升级的BMC版本。BMC记录用户选择的升级方式,然后BMC直接引导新版本BMC内核。在新版本BMC启动完成后,用户可以体验使用新版本BMC。在新版本BMC体验使用中,可以根据用户选择的升级方式,自动触发Flash升级,也可以手动触发Flash升级。如果触发Flash升级,BMC挂载新版本镜像的网络目录,将新版本镜像写入Flash,然后完成BMC升级操作。如果不触发Flash升级,用户可以选择是否回退旧版本BMC,如果选择回退,BMC将重新启动存储在Flash中的旧版本BMC镜像;如果选择不回退,则完成BMC升级操作。由此可见,本发明能够提升BMC系统升级效率,减少用户等待时长。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一:

如图1所示,本实施例提供了一种BMC系统升级方法,包括如下步骤:

S1:打开BMC升级界面。

具体的,使用BMC的Web界面或者客户端程序,选择BMC升级功能,打开BMC的升级界面。

S2:联网查询BMC版本,并选择升级版本。

在BMC升级界面中,联网查询可以升级的BMC版本镜像以及版本升级信息,用户根据使用需求,选择需要升级的BMC版本镜像。

S3:选择升级方式,并通过BMC记录升级方式。

具体来说,升级方式包括两种:有两种升级方式:第一种方式,体验使用新版本BMC,新版本BMC启动后,并不自动将新版本BMC镜像写入Flash。第二种方式,新版本BMC启动后,自动将新版本BMC镜像写入Flash。

需要特别说明的是,在执行第一种升级方式时,用户可以手动触发将新版本BMC镜像写入Flash,还可以回退升级前版本BMC。

用户根据使用需求选择升级方式后,BMC记录下用户选择的升级方式,用于在后续升级操作中进行升级方式判断。

S4:BMC直接引导所选升级版本的BMC内核,并完成BMC的启动。

传统BMC引导新版本BMC内核的方式是重启BMC,然后通过uboot程序来引导已经写入Flash中的新版本BMC内核,完成新版本BMC启动。在本步骤中,BMC不需要重启,而是使用kexec工具,通过NFS,直接在当前内核引导存放在网络文件系统中的新版本BMC内核,然后完成新版本BMC的启动,从而缩短的用户等待的时间。

S5:运行所选升级版本的BMC。

在所选升级版本的BMC启动完成后,用户可以进行新版本BMC的体验使用,而无需等待新版本BMC镜像写入到Flash中。

S6:判断是否触发Flash升级;若是,则执行步骤S7;若否,则执行步骤S9。

其中,Flash升级的触发方式包括以下两种:

1、BMC根据记录的用户选择的升级方式判断是否需要自动触发Flash升级。

2、用户在体验使用新版本BMC过程中,也可以手动触发Flash升级。

S7:BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录。

S8:BMC将所选升级版本的BMC镜像写入Flash,并执行步骤S11。

具体来说:BMC启动Flash升级线程,将新版本BMC镜像写入服务器中配备的单个或者多个BMC Flash中,Flash升级线程在后台运行,所以在Flash升级过程中,不影响用户使用BMC系统。

S9:判断是否需要回退到旧版本的BMC;若是,则执行步骤S10;若否,则执行步骤S11。

因为在步骤S6中,没有选择Flash升级,所以用户在体验使用新版本BMC过程中,可以选择是否回退旧版本BMC。

S10:重新启动旧版本的BMC镜像,以完成旧版本BMC的回退。

因为Flash没有升级,所以BMC重新启动后,通过uboot程序引导Flash中存储的旧版本BMC镜像,完成旧版本BMC的启动,实现旧版本BMC的回退。

S11:完成BMC的升级操作。

本实施例提供了一种BMC系统升级方法,实现了BMC系统升级方式的自主化和多样化。具体的,用户可以直接体验使用新版本BMC,然后可以选择将新版本BMC镜像写入Flash,也可以选择直接回退到升级前版本的BMC。从而提升了BMC系统的升级效率,减少了用户等待时长。

实施例二:

基于实施例一,如图2所示,本发明还公开了一种BMC系统升级系统,包括:启动单元1、查询选择单元2、引导启动单元3、第一判断单元4、挂载单元5、镜像存储单元6、第二判断单元7、回退单元8。

启动单元1,用于打开BMC升级界面。启动单元1具体用于:使用BMC的Web界面或者客户端程序,选择BMC升级功能,打开BMC的升级界面。

查询选择单元2,用于联网查询BMC版本,选择升级版本,选择升级方式,并通过BMC记录升级方式。查询选择单元2具体用于:首先,在BMC升级界面中,联网查询可以升级的BMC版本镜像以及版本升级信息,用户根据使用需求,选择需要升级的BMC版本镜像,然后选择升级方式,并通过BMC记录升级方式。

引导启动单元3,用于通过BMC直接引导所选升级版本的BMC内核,并完成BMC的启动。引导启动单元3具体用于:BMC使用kexec工具,通过网络文件系统,直接在当前内核引导存放在网络文件系统中的所选升级版本的BMC内核,并完成新版本BMC的启动。

第一判断单元4,用于判断是否触发Flash升级。

挂载单元5,用于控制BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录。

镜像存储单元6,用于控制BMC将所选升级版本的BMC镜像写入Flash。镜像存储单元6具体用于:BMC启动Flash升级线程,将所选升级版本的BMC镜像写入服务器中配备的单个或者多个BMC Flash中。

第二判断单元7,用于判断是否需要回退到旧版本的BMC。

回退单元8,用于重新启动旧版本的BMC镜像,以完成旧版本BMC的回退。回退单元8具体用于:BMC重新启动后,通过uboot程序引导Flash中存储的旧版本BMC镜像,以完成旧版本BMC的启动。

本实施例提供了一种BMC系统升级系统,实现了BMC系统升级方式的自主化和多样化。具体的,用户可以直接体验使用新版本BMC,然后可以选择将新版本BMC镜像写入Flash,也可以选择直接回退到升级前版本的BMC。从而提升了BMC系统的升级效率,减少了用户等待时长。

实施例三:

本实施例公开了一种BMC系统升级装置,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的BMC系统升级程序时实现以下步骤:

1、打开BMC升级界面。

2、联网查询BMC版本,并选择升级版本。

3、选择升级方式,并通过BMC记录升级方式。

4、BMC直接引导所选升级版本的BMC内核,并完成BMC的启动。

5、运行所选升级版本的BMC。

6、判断是否触发Flash升级;若是,则执行步骤7;若否,则执行步骤9。

7、BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录。

8、BMC将所选升级版本的BMC镜像写入Flash,并执行步骤11。

9、判断是否需要回退到旧版本的BMC;若是,则执行步骤10;若否,则执行步骤11。

10、重新启动旧版本的BMC镜像,以完成旧版本BMC的回退。

11、完成BMC的升级操作。

进一步的,本实施例中的BMC系统升级装置,还可以包括:

输入接口,用于获取外界导入的BMC系统升级程序,并将获取到的BMC系统升级程序保存至所述存储器中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器中,以便处理器利用上述各种指令和参数展开相应的处理。本实施例中,所述输入接口具体可以包括但不限于USB接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。

输出接口,用于将处理器产生的各种数据输出至与其相连的终端设备,以便于与输出接口相连的其他终端设备能够获取到处理器产生的各种数据。本实施例中,所述输出接口具体可以包括但不限于USB接口、串行接口等。

通讯单元,用于在BMC系统升级装置和外部服务器之间建立远程通讯连接,以便于BMC系统升级装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。

键盘,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。

显示器,用于运行服务器供电线路短路定位过程的相关信息进行实时显示。

鼠标,可以用于协助用户输入数据并简化用户的操作。

实施例四:

本实施例还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动硬盘、CD-ROM或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有BMC系统升级程序,所述BMC系统升级程序被处理器执行时实现以下步骤:

1、打开BMC升级界面。

2、联网查询BMC版本,并选择升级版本。

3、选择升级方式,并通过BMC记录升级方式。

4、BMC直接引导所选升级版本的BMC内核,并完成BMC的启动。

5、运行所选升级版本的BMC。

6、判断是否触发Flash升级;若是,则执行步骤7;若否,则执行步骤9。

7、BMC使用mount命令,通过网络文件系统,挂载存放着所选升级版本的BMC镜像的网络目录。

8、BMC将所选升级版本的BMC镜像写入Flash,并执行步骤11。

9、判断是否需要回退到旧版本的BMC;若是,则执行步骤10;若否,则执行步骤11。

10、重新启动旧版本的BMC镜像,以完成旧版本BMC的回退。

11、完成BMC的升级操作。

综上所述,本发明实现了BMC系统升级方式的自主化和多样化

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。

同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的BMC系统升级方法、系统、装置及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

相关技术
  • 系统升级的监控方法、装置、设备及计算机可读存储介质
  • 一种Hadoop对象存储高可用方法、系统、装置及可读存储介质
  • 一种服务器系统安装方法、装置、设备及可读存储介质
  • 一种跳跃性病毒的查杀方法、系统、装置及可读存储介质
  • 一种云备份数据的恢复方法、装置、系统及可读存储介质
  • 分布式存储系统升级方法、系统、装置及可读存储介质
  • 一种电子设备的系统升级方法、装置及可读存储介质
技术分类

06120115615329