CN110795119A - 固件升级方法、装置、计算机设备及存储介质 - Google Patents

固件升级方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110795119A
CN110795119A CN201910888016.3A CN201910888016A CN110795119A CN 110795119 A CN110795119 A CN 110795119A CN 201910888016 A CN201910888016 A CN 201910888016A CN 110795119 A CN110795119 A CN 110795119A
Authority
CN
China
Prior art keywords
firmware
upgraded
equipment
file
acquiring
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
CN201910888016.3A
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910888016.3A priority Critical patent/CN110795119A/zh
Publication of CN110795119A publication Critical patent/CN110795119A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

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

Abstract

本发明实施例提供了一种固件升级方法、装置、计算机设备及存储介质。该方法应用于数据处理领域,该方法包括:若接收到用户发送的固件升级指令,获取与固件升级指令对应的待升级设备,并判断固件升级指令与待升级设备是否匹配;若固件升级指令与待升级设备匹配,获取固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与待升级固件版本对应的文件路径;判断文件路径中是否存在与待升级固件版本对应的固件文件;若文件路径中存在与待升级固件版本对应的固件文件,将固件文件传输至待升级设备,以对待升级设备进行固件升级。实施本发明实施例,实现固件升级自动化,有利于提升固件升级速度,以及降低固件升级出错率。

Description

固件升级方法、装置、计算机设备及存储介质
技术领域
本发明涉及计算机数据处理领域,尤其涉及一种固件升级方法、装置、计算机设备及计算机可读存储介质。
背景技术
服务器运维工作中,常常需要对服务器进行带外固件升级。现有技术中,对服务器进行固件升级,通常是通过人工下载固件文件,并将所下载的固件文件手工传输至待升级的服务器中,以进行固件升级。升级期间还需人工进行监控,以待升级结束后进行重启等操作。对于大型的服务器群组的运维工作,运维人员所面对的服务器不仅种类繁多,且服务器的厂商也繁杂各异。常规的升级方法显然耗时耗力,不仅升级速度慢,而且人工操作失误率高,容易因固件升级出错而造成不可预估的损失。
发明内容
本发明实施例提供了一种固件升级方法、装置、计算机设备及存储介质,旨在解决固件升级准确度低、识别速度慢等问题。
第一方面,本发明实施例提供了一种固件升级方法,其包括:若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
第二方面,本发明实施例提供了一种固件升级装置,其包括:
第一获取单元,用于若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;
第二获取单元,用于若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;
第一判断单元,用于判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;
文件传输单元,用于若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述固件升级方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述固件升级方法。
本发明实施例提供一种固件升级方法、装置、计算机设备及计算机可读存储介质。该方法包括若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。实施本发明实施例,通过判断固件升级指令与待升级设备之间是否匹配,以防止因固件升级指令输入错误而导致固件升级出错或者失败;进而根据固件升级指令对应的待升级固件版本以及预设的路径映射关系获取待升级固件版本对应的文件路径,若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级,从而实现自动获取待升级设备升级所需的固件文件,以实现固件升级自动化,有利于提升固件升级速度,以及降低固件升级出错率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种固件升级方法的流程示意图;
图2为本发明一实施例提供的一种固件升级方法的应用场景示意图;
图3为本发明一实施例提供的一种固件升级方法的另一流程示意图;
图4为本发明一实施例提供的一种固件升级方法的另一流程示意图;
图5为本发明一实施例提供的一种固件升级方法的另一流程示意图;
图6为本发明一实施例提供的一种固件升级方法的另一流程示意图;
图7为本发明一实施例提供的一种固件升级装置的示意性框图;
图8为本发明一实施例提供的一种固件升级装置的另一示意性框图;
图9为本发明一实施例提供的一种固件升级装置的另一示意性框图;
图10为本发明一实施例提供的一种固件升级装置的另一示意性框图;
图11为本发明一实施例提供的一种固件升级装置的另一示意性框图;
图12为本发明一实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
请参照图1,其为本发明一实施例提供的一种固件升级方法的流程示意图。本发明实施例所提供的固件升级方法可应用于管理服务器10中。该管理服务器10可以为运维部门中用于管理待升级设备20的管理服务器。其中,所述管理服务器10可以是独立的服务器,也可以是多个服务器组成的服务器集群。所述管理服务器10可与待升级设备20建立通讯连接以进行数据交互,例如该管理服务器10可与待升级设备20建立通讯连接以向待升级设备传输固件文件。其中,所述待升级设备可以是不同类型、不同厂商的待升级服务器。如图1所示,该固件升级方法包括步骤S110-S140。
S110,若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配。
具体地,管理服务器包括可进行人机交互的显示装置、输入装置等;用户可通过所述管理服务器的操作界面中进行指令输入操作,以生成固件升级指令并向所述管理服务器发送固件升级指令。其中,待升级设备可以为待升级服务器。固件升级指令包括但不限于待升级设备对应的待升级设备标识符、待升级固件版本、重启设置参数。
若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配,以对用户所发送的估计升级指令进行校验,防止用于输入的升级指令出现错误,导致升级失败。其中,判断所述固件升级指令与所述待升级设备是否匹配具体可以为通过判断所接收到的待升级设备对应的待升级设备标识符与所述待升级设备对应的实际设备标识符是否相同;若所接收到的待升级设备对应的待升级设备标识符与所述待升级设备对应的实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。若所接收到的待升级设备对应的待升级设备标识符与所述待升级设备对应的实际设备标识符不相同,确定所述固件升级指令与所述待升级设备不匹配。
在一些实施例中,如图3所示,步骤S110包括但不限于步骤S111-S114。
S111,若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址。
具体实施中,固件升级指令包括但不限于待升级设备对应的待升级设备标识符、待升级固件版本、重启设置参数。通过解析所述固件升级指令即可获取到所述待升级设备对应的待升级设备标识符。预设的设备数据库用于储存所述待升级设备的设备信息,其中设备信息包括但不限于所述待升级设备的品牌、型号、设备标识符、带外IP地址等等。
通过将所获取到的待升级设备标识符与存储于预设的设备数据库中的设备标识符进行比对,以获取所述待升级设备对应的带外IP地址。若预设的设备数据库中存在与所述待升级设备标识符相同的设备标识符,将所述待升级设备标识符对应的带外IP地址作为所述待升级设备对应的带外IP地址。
若预设的设备数据库中不存在与所述待升级设备标识符相同的设备标识符,确定所述预设的设备数据库中不存在与所述待升级设备标识符对应的设备信息。
S112,根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符。
其中,待升级设备可以为待升级服务器,待升级设备包括基板管理控制器(Baseboard Management Controller,BMC)。基板管理控制器是服务器特有的管理控制器,基板管理控制器的主要功能之一是自动监控服务器运行状态,主要包括各硬件的健康状态。基板管理控制器监测各硬件的健康状态,获取各硬件的信息,有助于用户及时了解服务器的运行状况,保证服务器正常运行。
利用基板管理控制器可实现在设备未开机的状态下,对设备进行固件升级、查看设备信息等操作。根据所述待升级设备对应的带外IP地址可确定所述待升级设备对应的基板管理控制器,进而利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符。
S113,判断所述待升级设备标识符与所述实际设备标识符是否相同。
具体实施中,通过将所述待升级设备标识符与所述实际设备标识符进行比对,以实现判断所述待升级设备标识符与所述实际设备标识符是否相同。
S114,若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
具体实施中,若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。若所述待升级设备标识符与所述实际设备标识符不相同,确定所述固件升级指令与所述待升级设备不匹配。
S120,若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径。
具体实施中,预设的路径映射关系用于储存固件文件的版本信息与文件路径之间的映射关系通过所述预设的路径映射关系,可确定与所述固件文件的版本信息唯一对应的文件路径,即若所述待升级固件版本已确定,通过所述预设的路径映射关系可确定与所述待升级固件版本唯一对应的文件路径。
例如预设的路径映射关系具体为:第一版本信息映射于第一文件路径。假设所述待升级固件版本为第一版本信息,所述第一版本信息具体为Huawei品牌的RH2288HV3机型的3.0版本,第一路径具体为/data/fw/HUAWEI/RH2288HV3/iBMC-V330/image.hpm。通过预设的路径映射关系可确定所述待升级固件版本所对应的文件路径为/data/fw/HUAWEI/RH2288HV3/iBMC-V330/image.hpm。
在一些实施例中,如图4所示,步骤S120之前,还可包括步骤S210-S220。
S210,根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件。
具体实施中,预设的时间间隔可根据实际需求进行设定,例如所述预设的时间间隔可以为3天、7天、15天等等。预设的固件文件下载地址为根据不同的设备厂商所提供的固件文件下载地址。通过根据预设的时间间隔定期向预设的固件文件下载地址发起下载请求,以实现自动获取所述固件文件。
S220,根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径。以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
具体实施中,不同固件文件的版本信息对应不同的文件路径。通过根据所述固件文件的版本信息创建与所述固件文件对应的文件路径并将所述固件文件储存至所述文件路径;以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。有利于后期快速查询获取所储存的固件文件。其中,所述文件路径创建于samba共享服务路径根目录之中,以使得所述文件路径可实现对外共享固件文件。
实施本发明实施例,可实现自动下载不同厂商不同版本的固件文件,并将所下载到的固件文件储存至与所述固件文件的版本信息对应的文件路径中。极大地降低了固件文件的获取时间,有利于提升固件升级的便捷性。
S130,判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件。
具体实施中,判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件具体为:检测所述文件路径中是否存在有固件文件,若所述文件路径中存在有固件文件,将所述文件路径中的固件文件的文件名与待升级固件版本的文件名进行比对,若所述文件路径中的固件文件的文件名与待升级固件版本的文件名相同,确定所述文件路径中存在与所述待升级固件版本对应的固件文件。若所述文件路径中的固件文件的文件名与待升级固件版本的文件名不相同或者所述文件路径中不存在有固件文件,确定所述文件路径中不存在与所述待升级固件版本对应的固件文件。
S140,若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
具体实施中,若所述文件路径中存在与所述待升级固件版本对应的固件文件,可通过调用预设的数据接口将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级,预设的数据接口可以为redfish/restful/cli接口。
于其他实施例中,通过获取固件升级的升级阶段,并将该升级阶段通过显示界面展示至用户,以使用户可快速获知固件升级的进程。例如,当前固件升级正处于设备重启状态,则在显示界面显示设备正在重启。或者,通过显示界面显示与设备重启状态相对应的任务进度值,该任务进度值可预先根据不同的升级阶段进行设定。例如设备重启阶段所对应的任务进度值可设为90%。若当前固件升级正处于设备重启状态,则可通过显示界面显示当前固件升级的进度值为90%。
在一些实施例中,如图5所示,所述方法还可包括步骤S310-S330。
S310,若接收到用户发送的固件升级指令,获取所述固件升级指令对应的重启设置参数,并根据所述重启设置参数确定所述待升级设备完成固件升级后是否需要进行重启操作。
具体实施中,所述固件升级指令包括但不限于待升级设备对应的待升级设备标识符、待升级固件版本、重启设置参数。通过解析所述固件升级指令即可获取到所述待升级设备对应的重启设置参数。所述重启设置参数包括第一设置参数以及第二设置参数,例如第一设置参数可以为0001,第二设置参数可以为0000。第一参数用于表示所述待升级设备完成固件升级后需要进行重启操作,第二参数用于表示所述待升级设备完成固件升级后不需要进行重启操作。
S320,若所述待升级设备完成固件升级后需要进行重启操作,检测所述待升级设备是否已完成固件升级。
在一些实施例中,如图5所示,步骤S320包括但不限于步骤S321-S322。
S321,根据所述固件升级指令生成升级任务编号,并利用redfish协议获取所述升级任务编号对应的任务状态。
其中,redfish协议是一种全新的基于restful接口和JSON数据模型的服务器管理标准。redfish具有可发现,可扩展,易于管理,安全等优点,能够进一步丰富服务器远程管理功能。通过循环调用redfish协议的GET请求,以获取所述升级任务编号对应的任务状态。
S322,若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级,并停止获取所述升级任务编号对应的任务状态。
具体地,所述任务状态包括成功状态、异常状态以及执行状态。若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级。若所述升级任务编号对应的任务状态为异常状态或者执行状态,确定所述待升级设备未完成固件升级。
S330,若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令。
具体实施中,若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令,以重启所述待升级设备,并将固件升级结果通过显示界面或者语音播报等方式通知用户。
实施本发明实施例,通过判断固件升级指令与待升级设备之间是否匹配,以防止因固件升级指令输入错误而导致固件升级出错或者失败;进而根据固件升级指令对应的待升级固件版本以及预设的路径映射关系获取待升级固件版本对应的文件路径,若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级,从而实现自动获取待升级设备升级所需的固件文件,以实现固件升级自动化,有利于提升固件升级速度,以及降低固件升级出错率。
图7是本发明实施例提供的一种固件升级装置100的示意性框图。如图7所示,对应于以上固件升级方法,本发明还提供一种固件升级装置100。该固件升级装置100包括用于执行上述固件升级方法的单元,该装置100可以被配置于服务器中。其中,所述服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。如图7所示,所述装置100包括第一获取单元110、第二获取单元120、第一判断单元130以及文件传输单元140。
第一获取单元110,用于若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配。
在一些实施例中,如图8所示,所述第一获取单元110包括第三获取单元111、第四获取单元112、第二判断单元113以及第一确定单元114。
第三获取单元111,用于若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址。
第四获取单元112,用于根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符。
第二判断单元113,用于判断所述待升级设备标识符与所述实际设备标识符是否相同。
第一确定单元114,用于若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
第二获取单元120,用于若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径。
在一些实施例中,如图9所示,所述装置100还包括第五获取单元210以及生成单元220。
第五获取单元210,用于根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件。
生成单元220,用于根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径。以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
第一判断单元130,用于判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件。
文件传输单元140,用于若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
在一些实施例中,如图10所示,所述装置100还包括第六获取单元310、检测单元320以及指令发送单元330。
第六获取单元310,用于若接收到用户发送的固件升级指令,获取所述固件升级指令对应的重启设置参数,并根据所述重启设置参数确定所述待升级设备完成固件升级后是否需要进行重启操作。
检测单元320,用于若所述待升级设备完成固件升级后需要进行重启操作,检测所述待升级设备是否已完成固件升级。
在一些实施例中,如图11所示,所述检测单元320包括第七获取单元321以及第二确定单元322。
第七获取单元321,用于根据所述固件升级指令生成升级任务编号,并利用redfish协议获取所述升级任务编号对应的任务状态。
第二确定单元322,用于若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级,并停止获取所述升级任务编号对应的任务状态。
指令发送单元330,用于若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述固件升级装置100和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述装置100可以实现为一种计算机程序的形式,计算机程序可以在如图12所示的计算机设备上运行。
请参阅图12,图12是本发明实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器中。其中,所述服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
该计算机设备500包括通过系统总线510连接的处理器520、存储器和网络接口550,其中,存储器可以包括非易失性存储介质530和内存储器540。
该非易失性存储介质530可存储操作系统531和计算机程序532。该计算机程序532被执行时,可使得处理器520执行一种固件升级方法。
该处理器520用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器540为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器520执行时,可使得处理器520执行一种固件升级方法。
该网络接口550用于与其它设备进行网络通信。本领域技术人员可以理解,该计算机设备的示意性框图仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器520用于运行存储在存储器中的程序代码,以实现如下功能:若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
在一实施例中,处理器520在执行所述若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配的步骤时,具体执行如下步骤:若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址;根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符;判断所述待升级设备标识符与所述实际设备标识符是否相同;若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
在一实施例中,处理器520在执行所述若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径的步骤之前,具体执行如下步骤:根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件;根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径;以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
在一实施例中,所述处理器520还用于运行存储在存储器中的程序代码,以实现如下功能:若接收到用户发送的固件升级指令,获取所述固件升级指令对应的重启设置参数,并根据所述重启设置参数确定所述待升级设备完成固件升级后是否需要进行重启操作;若所述待升级设备完成固件升级后需要进行重启操作,检测所述待升级设备是否已完成固件升级;若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令。
在一实施例中,处理器520在执行所述检测所述待升级设备是否已完成固件升级的步骤时,具体执行如下步骤:根据所述固件升级指令生成升级任务编号,并利用redfish协议获取所述升级任务编号对应的任务状态;若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级,并停止获取所述升级任务编号对应的任务状态。
应当理解,在本发明实施例中,处理器520可以是中央处理单元(CentralProcessing Unit,CPU),该处理器520还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域技术人员可以理解,该计算机设备500的示意性框图并不构成对计算机设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在本发明的另一实施例中提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现如下步骤:若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
在一实施例中,所述计算机程序被处理器执行以实现所述若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配的步骤时,具体实现如下步骤:若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址;根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符;判断所述待升级设备标识符与所述实际设备标识符是否相同;若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
在一实施例中,所述计算机程序被处理器执行以实现所述若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径的步骤之前,具体实现如下步骤:根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件;根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径;以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
其中计算机程序被处理器执行时还实现如下步骤:若接收到用户发送的固件升级指令,获取所述固件升级指令对应的重启设置参数,并根据所述重启设置参数确定所述待升级设备完成固件升级后是否需要进行重启操作;若所述待升级设备完成固件升级后需要进行重启操作,检测所述待升级设备是否已完成固件升级;若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令。
在一实施例中,所述计算机程序被处理器执行以实现所述检测所述待升级设备是否已完成固件升级的步骤时,具体实现如下步骤:根据所述固件升级指令生成升级任务编号,并利用redfish协议获取所述升级任务编号对应的任务状态;若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级,并停止获取所述升级任务编号对应的任务状态。
该计算机可读存储介质可以是U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如一个以上单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种固件升级方法,其特征在于,所述方法包括:
若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;
若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;
判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;
若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
2.如权利要求1所述的方法,其特征在于,所述若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配,包括:
若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址;
根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符;
判断所述待升级设备标识符与所述实际设备标识符是否相同;
若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
3.如权利要求1所述的方法,其特征在于,所述若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径之前,还包括:
根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件;
根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径;以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
若接收到用户发送的固件升级指令,获取所述固件升级指令对应的重启设置参数,并根据所述重启设置参数确定所述待升级设备完成固件升级后是否需要进行重启操作;
若所述待升级设备完成固件升级后需要进行重启操作,检测所述待升级设备是否已完成固件升级;
若所述待升级设备已完成固件升级,向所述待升级设备发送重启操作指令。
5.如权利要求4所述的方法,其特征在于,所述检测所述待升级设备是否已完成固件升级,包括:
根据所述固件升级指令生成升级任务编号,并利用redfish协议获取所述升级任务编号对应的任务状态;
若所述升级任务编号对应的任务状态为成功状态,确定所述待升级设备已完成固件升级,并停止获取所述升级任务编号对应的任务状态。
6.一种固件升级装置,其特征在于,所述装置包括:
第一获取单元,用于若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,并判断所述固件升级指令与所述待升级设备是否匹配;
第二获取单元,用于若所述固件升级指令与所述待升级设备匹配,获取所述固件升级指令对应的待升级固件版本,并根据预设的路径映射关系获取与所述待升级固件版本对应的文件路径;
第一判断单元,用于判断所述文件路径中是否存在与所述待升级固件版本对应的固件文件;
文件传输单元,用于若所述文件路径中存在与所述待升级固件版本对应的固件文件,将所述固件文件传输至所述待升级设备,以对所述待升级设备进行固件升级。
7.如权利要求6所述的装置,其特征在于,所述第一获取单元包括:
第三获取单元,用于若接收到用户发送的固件升级指令,获取与所述固件升级指令对应的待升级设备,根据所述固件升级指令获取所述待升级设备对应的待升级设备标识符;以及根据所述待升级设备标识符以及预设的设备数据库,获取所述待升级设备对应的带外IP地址;
第四获取单元,用于根据所述待升级设备对应的带外IP地址,利用所述待升级设备的基板管理控制器获取所述待升级设备对应的实际设备标识符;
第二判断单元,用于判断所述待升级设备标识符与所述实际设备标识符是否相同;
第一确定单元,用于若所述待升级设备标识符与所述实际设备标识符相同,确定所述固件升级指令与所述待升级设备匹配。
8.如权利要求6所述的装置,其特征在于,所述装置还包括:
第五获取单元,用于根据预设的时间间隔定期向预设的固件文件下载地址获取固件文件;
生成单元,用于根据所述固件文件的版本信息创建与所述固件文件对应的文件路径,并将所述固件文件储存至所述文件路径;以及根据所述固件文件的版本信息以及文件路径生成所述预设的路径映射关系。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5中任一项的固件升级方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1-5中任一项所述的固件升级方法。
CN201910888016.3A 2019-09-19 2019-09-19 固件升级方法、装置、计算机设备及存储介质 Pending CN110795119A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910888016.3A CN110795119A (zh) 2019-09-19 2019-09-19 固件升级方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910888016.3A CN110795119A (zh) 2019-09-19 2019-09-19 固件升级方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN110795119A true CN110795119A (zh) 2020-02-14

Family

ID=69438583

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910888016.3A Pending CN110795119A (zh) 2019-09-19 2019-09-19 固件升级方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN110795119A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538517A (zh) * 2020-04-24 2020-08-14 苏州浪潮智能科技有限公司 一种服务器固件升级方法、系统及电子设备和存储介质
CN111880819A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种存储设备固件升级方法、系统、设备及计算机介质
CN112099823A (zh) * 2020-08-31 2020-12-18 新华三信息技术有限公司 一种固件升级方法、装置、设备及机器可读存储介质
CN113127033A (zh) * 2021-03-30 2021-07-16 山东英信计算机技术有限公司 服务器固件版本升级方法、装置、系统及可读存储介质
CN113672263A (zh) * 2021-08-23 2021-11-19 联想(北京)有限公司 固件参数更新控制方法、装置及电子设备
CN114124701A (zh) * 2021-11-05 2022-03-01 交控科技股份有限公司 车载设备远程升级方法及系统
CN114448798A (zh) * 2022-01-27 2022-05-06 瀚云科技有限公司 一种批量设备远程固件升级方法、装置、电子设备及介质
CN114765620A (zh) * 2020-12-30 2022-07-19 深圳市雷鸟网络传媒有限公司 固件发布方法、装置、终端设备及计算机可读存储介质
CN117472411A (zh) * 2023-12-27 2024-01-30 北谷电子(无锡)有限公司 一种兼容多种升级协议的升级方法
CN113064625B (zh) * 2021-04-26 2024-02-09 山东英信计算机技术有限公司 一种带外升级bios的方法、装置、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100021A (zh) * 2014-05-20 2015-11-25 西安中兴新软件有限责任公司 一种设备管理会话的触发方法、设备及系统
CN107181635A (zh) * 2017-07-31 2017-09-19 郑州云海信息技术有限公司 一种升级服务器外接设备的方法及系统
CN107193618A (zh) * 2017-07-20 2017-09-22 山东浪潮商用系统有限公司 一种设备终端升级测试的解决装置、方法及应用
CN107291516A (zh) * 2017-07-12 2017-10-24 珠海格力电器股份有限公司 一种固件升级方法和系统
WO2017190547A1 (zh) * 2016-05-06 2017-11-09 中兴通讯股份有限公司 一种设备升级的方法、装置及配置点设备
CN108259231A (zh) * 2017-12-27 2018-07-06 生迪智慧科技有限公司 智能设备的软件升级方法、网关、服务器及系统
CN109656597A (zh) * 2018-12-19 2019-04-19 广东美的暖通设备有限公司 固件升级方法、装置及计算机可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100021A (zh) * 2014-05-20 2015-11-25 西安中兴新软件有限责任公司 一种设备管理会话的触发方法、设备及系统
WO2017190547A1 (zh) * 2016-05-06 2017-11-09 中兴通讯股份有限公司 一种设备升级的方法、装置及配置点设备
CN107347017A (zh) * 2016-05-06 2017-11-14 中兴通讯股份有限公司 一种设备升级的方法、装置及配置点设备
CN107291516A (zh) * 2017-07-12 2017-10-24 珠海格力电器股份有限公司 一种固件升级方法和系统
CN107193618A (zh) * 2017-07-20 2017-09-22 山东浪潮商用系统有限公司 一种设备终端升级测试的解决装置、方法及应用
CN107181635A (zh) * 2017-07-31 2017-09-19 郑州云海信息技术有限公司 一种升级服务器外接设备的方法及系统
CN108259231A (zh) * 2017-12-27 2018-07-06 生迪智慧科技有限公司 智能设备的软件升级方法、网关、服务器及系统
CN109656597A (zh) * 2018-12-19 2019-04-19 广东美的暖通设备有限公司 固件升级方法、装置及计算机可读存储介质

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538517B (zh) * 2020-04-24 2023-07-14 苏州浪潮智能科技有限公司 一种服务器固件升级方法、系统及电子设备和存储介质
CN111538517A (zh) * 2020-04-24 2020-08-14 苏州浪潮智能科技有限公司 一种服务器固件升级方法、系统及电子设备和存储介质
CN111880819A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种存储设备固件升级方法、系统、设备及计算机介质
CN111880819B (zh) * 2020-07-29 2022-06-17 北京浪潮数据技术有限公司 一种存储设备固件升级方法、系统、设备及计算机介质
CN112099823A (zh) * 2020-08-31 2020-12-18 新华三信息技术有限公司 一种固件升级方法、装置、设备及机器可读存储介质
CN114765620B (zh) * 2020-12-30 2024-04-02 深圳市雷鸟网络传媒有限公司 固件发布方法、装置、终端设备及计算机可读存储介质
CN114765620A (zh) * 2020-12-30 2022-07-19 深圳市雷鸟网络传媒有限公司 固件发布方法、装置、终端设备及计算机可读存储介质
CN113127033A (zh) * 2021-03-30 2021-07-16 山东英信计算机技术有限公司 服务器固件版本升级方法、装置、系统及可读存储介质
WO2022206256A1 (zh) * 2021-03-30 2022-10-06 山东英信计算机技术有限公司 服务器固件版本升级方法、装置、系统及可读存储介质
CN113064625B (zh) * 2021-04-26 2024-02-09 山东英信计算机技术有限公司 一种带外升级bios的方法、装置、设备及介质
CN113672263A (zh) * 2021-08-23 2021-11-19 联想(北京)有限公司 固件参数更新控制方法、装置及电子设备
CN113672263B (zh) * 2021-08-23 2024-04-23 联想(北京)有限公司 固件参数更新控制方法、装置及电子设备
CN114124701B (zh) * 2021-11-05 2024-01-26 交控科技股份有限公司 车载设备远程升级方法及系统
CN114124701A (zh) * 2021-11-05 2022-03-01 交控科技股份有限公司 车载设备远程升级方法及系统
CN114448798B (zh) * 2022-01-27 2023-12-19 瀚云科技有限公司 一种批量设备远程固件升级方法、装置、电子设备及介质
CN114448798A (zh) * 2022-01-27 2022-05-06 瀚云科技有限公司 一种批量设备远程固件升级方法、装置、电子设备及介质
CN117472411A (zh) * 2023-12-27 2024-01-30 北谷电子(无锡)有限公司 一种兼容多种升级协议的升级方法
CN117472411B (zh) * 2023-12-27 2024-05-14 北谷电子(无锡)有限公司 一种兼容多种升级协议的升级方法

Similar Documents

Publication Publication Date Title
CN110795119A (zh) 固件升级方法、装置、计算机设备及存储介质
CN108763038B (zh) 告警数据的管理方法、装置、计算机设备及存储介质
CN108566290B (zh) 服务配置管理方法、系统、存储介质和服务器
EP2876865B1 (en) Communication apparatus, communication system, communication method and recording medium
CN107844343B (zh) 一种复杂服务端应用系统的升级系统及方法
WO2014005506A1 (zh) 一种修复运行错误的方法、装置及系统
US8719634B2 (en) System health and performance care of computing devices
US7065560B2 (en) Verification of computer program versions based on a selected recipe from a recipe table
US20150149909A1 (en) Communication apparatus, communication method, and recording medium
CN109725950B (zh) 一种实现客户端单实例运行的方法、装置及存储介质
US9658917B2 (en) Server performance correction using remote server actions
CN108897496B (zh) 磁盘阵列配置管理方法、装置、计算机设备及存储介质
EP3067799A1 (en) Communication device, communication system, communication method, and communication program
WO2020010727A1 (zh) 应用更新方法和装置及计算机可读存储介质
CN111949368A (zh) 应用程序控制方法及装置
US20040024878A1 (en) Network device and automatic program update technique
CN111752577B (zh) 一种系统版本的升级方法及设备
CN111382259A (zh) 一种app崩溃日志的解析方法及装置
CN112463610A (zh) 一种测试过程控制方法及装置
US6735716B1 (en) Computerized diagnostics and failure recovery
CN111416857A (zh) 客户端崩溃处理方法、装置、系统、设备和存储介质
CN112650666B (zh) 一种软件测试系统、方法、装置、控制设备及存储介质
JP2007068090A (ja) ネットワーク装置監視システムおよび監視方法、ならびにそのプログラム
CN112527603A (zh) 裸金属服务器管理方法、装置、计算机设备及存储介质
CN116955093B (zh) 一种cpu状态监控方法、装置、系统、设备及存储介质

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200214