一种存储服务器的固件升级方法、系统、装置及存储介质与流程

文档序号:35384520发布日期:2023-09-09 12:07阅读:42来源:国知局
一种存储服务器的固件升级方法、系统、装置及存储介质与流程

本发明涉及计算机,更具体的说是涉及一种存储服务器的固件升级方法、系统、装置及存储介质。


背景技术:

1、存储服务器是一种用于存储大量数据的计算机服务器。它可以支持来自不同标准计算机系统的客户端,并提供有效的数据存储、处理和管理的功能。它的主要功能是提供文件共享和强大的储存能力,可以存放各种格式的文本、图片、视频,以及文件夹和其他各类数据文件。存储服务器以其可靠性和安全性而闻名,因为它们提供完善的安全机制,包括用户身份验证和安全传输等。

2、目前,主流的存储服务器采用图1所示的拓扑结构,包括两个互为备份的控制器,控制器上运行着存储系统及bios、cpld、oses(organic scsi enclosure service,支持scsi协议的机箱管理服务系统)等固件,控制器连接母板,两个psu插在母板上。当存储系统升级时,会附加着固件的升级,每个子模块都需要升级到对应的程序版本,存储系统才能正常运行。

3、具体来说,当psu、cpld的程序需要升级时,存储系统需要将升级包里打包的psu和cpld二进制升级文件发送到oses,再由oses写入psu、cpld。但是,因为oses的存储空间有限,如果升级文件的数量较多,所需的存储空间超出oses的存储空间,则需要分批次进行固件的升级,导致固件升级效率较低。


技术实现思路

1、针对以上问题,本发明的目的在于提供一种存储服务器的固件升级方法、系统、装置及存储介质,采用多种固件共用升级缓存分区方式,直接提取其中的升级文件并进行固件升级,节省存储空间的同时,有效提高了固件升级的效率。

2、本发明为实现上述目的,通过以下技术方案实现:

3、第一方面,本发明公开了一种存储服务器的固件升级方法,包括:

4、获取固件升级文件,根据固件类型和升级位置生成包头信息添加到固件升级文件中;

5、将固件升级文件发送至主控制器的升级文件暂存分区中;

6、读取固件升级文件,并识别相应的包头信息;

7、根据包头信息确定固件类型和升级位置,启动相应的升级链路进行固件的同步和升级。

8、进一步,根据固件类型和升级位置生成包头信息添加到固件升级文件中,包括:

9、根据固件类型和升级位置设置标志位fw_type,并将标志位fw_type添加到固件升级文件的文件名中。

10、进一步,根据固件类型和升级位置设置标志位fw_type,包括:

11、当固件类型为cpld固件时,如果升级位置为主控制器,则将标志位fw_type设置为cpld_l;如果升级位置为备用控制器,则将标志位fw_type设置为cpld_r;当固件类型为psu固件时,如果升级位置为第一psu,则将标志位fw_type设置为psu_a;如果升级位置为第二psu,将标志位fw_type设置为psu_b。

12、进一步,将固件升级文件发送至主控制器的升级文件暂存分区中,包括:将固件升级文件发送至主控制器的扩展存储介质中预设的升级文件暂存分区中。

13、进一步,读取固件升级文件,并识别相应的包头信息,包括:

14、通过支持scsi协议的机箱管理服务系统读取升级文件暂存分区中的固件升级文件;

15、读取固件升级文件的文件名中的标志位fw_type,以确定固件类型和升级位置。

16、进一步,根据包头信息确定固件类型和升级位置,启动相应的升级链路进行固件的同步和升级,包括:

17、如果标志位fw_type为cpld_l,则调用jtag链路利用固件升级文件进行cpld的固件升级;

18、如果标志位fw_type为cpld_r,则通过预设的同步链路将固件升级文件同步到备用控制器;在备用控制器上调用jtag链路利用固件升级文件进行cpld的固件升级。

19、进一步,根据包头信息确定固件类型和升级位置,启动相应的升级链路进行固件的同步和升级,还包括:

20、如果标志位fw_type为psu_a,则调用i2c链路利用固件升级文件进行第一psu的固件升级;

21、如果标志位fw_type为psu_b,则调用i2c链路利用固件升级文件进行第二psu的固件升级。

22、第二方面,本发明还公开了一种存储服务器的固件升级系统,包括:

23、包头信息设置模块,用于获取固件升级文件,根据固件类型和升级位置生成包头信息添加到固件升级文件中;

24、存储模块,用于将固件升级文件发送至主控制器的升级文件暂存分区中;

25、读取识别模块,用于读取固件升级文件,并识别相应的包头信息;

26、同步升级模块,用于根据包头信息确定固件类型和升级位置,启动相应的升级链路进行固件的同步和升级。

27、进一步,所述包头信息设置模块具体用于:根据固件类型和升级位置设置标志位fw_type,并将标志位fw_type添加到固件升级文件的文件名中。

28、进一步,所述存储模块具体用于:将固件升级文件发送至主控制器扩展存储介质中预设的升级文件暂存分区中。

29、进一步,所述读取识别模块具体用于:通过支持scsi协议的机箱管理服务系统读取升级文件暂存分区中的固件升级文件;读取固件升级文件的文件名中的标志位fw_type,以确定固件类型和升级位置。

30、进一步,所述同步升级模块具体用于:如果标志位fw_type为cpld_l,则调用jtag链路利用固件升级文件进行cpld的固件升级;如果标志位fw_type为cpld_r,则通过预设的同步链路将固件升级文件同步到备用控制器;在备用控制器上调用jtag链路利用固件升级文件进行cpld的固件升级;如果标志位fw_type为psu_a,则调用i2c链路利用固件升级文件进行第一psu的固件升级;如果标志位fw_type为psu_b,则调用i2c链路利用固件升级文件进行第二psu的固件升级。

31、第三方面,本发明还公开了一种存储服务器的固件升级装置,包括:

32、存储器,用于存储存储服务器的固件升级程序;

33、处理器,用于执行所述存储服务器的固件升级程序时实现如上文任一项所述存储服务器的固件升级方法的步骤。

34、第四方面,本发明还公开了一种可读存储介质,所述可读存储介质上存储有存储服务器的固件升级程序,所述存储服务器的固件升级程序被处理器执行时实现如上文任一项所述存储服务器的固件升级方法的步骤。

35、对比现有技术,本发明有益效果在于:本发明公开了一种存储服务器的固件升级方法、系统、装置及存储介质,通过固件升级文件预加包头的方式,记录需要升级的固件类型和位置信息,并将所有固件升级文件存放在主控制器的升级文件暂存分区中,实现了多固件共用升级缓存分区,有效节省了存储空间。同时,控制器可根据包头信息准确的进行不同固件的升级,有效提高了固件升级的效率。

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

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