集群服务器的固件升级方法和集群服务器技术

技术编号:26342077 阅读:27 留言:0更新日期:2020-11-13 20:30
本发明专利技术公开了一种集群服务器的固件升级方法和集群服务器,其中,该集群服务器的固件升级方法包括如下步骤:主板通过USB线向子板设备烧写辅助固件,子板设备依据所述辅助固件进行重启;在子板设备重启后,主板向子板设备发送升级配置参数,子板设备依据升级配置参数配置升级环境;子板设备通过以太网线向Web服务器发送固件升级请求;子板设备接收Web服务器反馈的固件数据,并将所述固件数据烧写到存储器中。本发明专利技术能够更加高效、便捷地完成固件升级。

Firmware upgrade method of cluster server and cluster server

【技术实现步骤摘要】
集群服务器的固件升级方法和集群服务器
本专利技术涉及集群服务器
,尤其是一种集群服务器的固件升级方法和集群服务器。
技术介绍
集群服务器是指将多个服务器连接组合起来进行同一项服务的服务器集合,从客户端的角度来看,就像是只有一个服务器。集群服务器可以利用多个计算机进行并行计算从而获得很高的计算速度,大大提升服务器的运行性能。通常,集群服务器包括一块主板和多块子板,由于子板数量太多,升级固件较为繁琐。现有的固定件升级方式包括两种,一种方式是使用USB接口直接下载固件进行升级,这种操作方式受制于USB接口的带宽和数量,仅适用于升级数量少的服务器,另一种方式是通过TF卡进行升级,这种升级方式需要配置与子板数量相同的TF卡,并需要将固件写入每个TF卡中,一旦固件有新的更新,又要重新向TF卡烧写程序。
技术实现思路
本专利技术提供一种集群服务器的固件升级方法和集群服务器,能够更加高效、便捷地完成固件升级。根据本专利技术的第一方面,本专利技术提供一种集群服务器的固件升级方法,包括如下步骤:主板通过USB线向子板设备烧写辅助固件,子板设备依据所述辅助固件进行重启;在子板设备重启后,主板向子板设备发送升级配置参数,子板设备依据升级配置参数配置升级环境;子板设备通过以太网线向Web服务器发送固件升级请求;子板设备接收Web服务器反馈的固件数据,并将所述固件数据烧写到存储器中。优选的,所述辅助固件包括Ubuntu固件的内核、根文件系统和升级参数,所述根文件系统使用Buildroot定制,所述升级参数包括升级固件的路径。优选的,所述辅助固件经过打包处理,打包过程如下:将tar/目录里的所有文件打包成tar.gz包,并添加到res/wipe_all-misc.img中作为misc分区固件文件;解压Ubuntu固件中的res/boot.img文件,提示内核和资源文件,连同Buildroot生成的根文件系统包res/recovery.cpio.gz,打包成recovery.img文件;将所有的分区固件文件打包成最终的辅助固件。优选的,当主板通过USB线向子板设备烧写辅助固件时,将PC机上的rkdeveloptool程序移植到主机并运行;对rkdeveloptool程序进行修改,增加固件文件烧写功能和多线程支持功能。优选的,所述子板设备接收Web服务器反馈的固件数据,并将所述固件数据烧写到存储器中的步骤之后,还包括如下步骤:在固件升级成功后,子板设备向主板反馈升级成功信息或者控制子板设备上的预设LED灯闪烁。根据本专利技术的第二方面,本专利技术提供一种集群服务器,包括主板和子板设备,所述主板和子板设备用于执行上述的集群服务器的固件升级方法。本专利技术具有如下技术效果:本专利技术的主板通过USB线向子板设备发送辅助固件,提供升级固件所需的升级工具和升级参数,子板设备通过以太网线请求固件数据,在接收到固件数据后,进行固件升级,这就无需拓展USB接口,利用子板设备自带的以太网线进行固件升级,传输速率更快,实现自动化升级,更加高效、便捷。附图说明图1为本专利技术一种实施例的集群服务器的结构示意图;图2为本专利技术一种实施例的集群服务器的固件升级方法的流程图。具体实施方式在对本专利技术进行具体说明前,有必要对本专利技术的硬件结构进行具体说明,如图1所示,本专利技术的集群服务器包括主板1和多个子板设备2,子板设备2通过内置的USB线和以太网线与主板1连接。传统的USB线和以太网线缆均通过PCB板走线替代,使得电路板的集成度高、稳定性好。主板和子板设备都可以看作是独立的电脑主机,都具有各自的CPU、内存、内部eMMC存储器和网络接口等。子板设备2通过以太网线等网络接口与Web服务器连接,以从Web服务器获取数据。本专利技术实施例提供一种集群服务器的固件升级方法,可参考图2所示的流程图,该方法包括如下步骤:S100:主板通过USB线向子板设备烧写辅助固件,子板设备依据所述辅助固件进行重启。主板会预先制作好辅助固件,辅助固件包含子板设备升级固件所需的升级工具和升级参数,主板通过内置的USB线将辅助固件烧写到子板设备中,子板设备会加载运行该固件,并进行重启,以做好升级固件的准备。对于部分已运行固件的子板设备,则需要将子板设备切换为Loader模式。S200:在子板设备重启后,主板向子板设备发送升级配置参数,子板设备依据升级配置参数配置升级环境。主板会检测子板设备的状态,在子板设备重启后,向子板设备发送升级配置参数,子板设备进行升级环境的网络配置,并可对升级程序进行修改。S300:子板设备通过以太网线向Web服务器发送固件升级请求。在对升级环境配置成功后,子板设备通过以太网线向预设的Web服务器发送固件升级请求,以请求升级固件。Web服务器会验证请求的合法性,如请求合法,Web服务器会向请求的子板设备发送固件数据。S400:子板设备接收Web服务器反馈的固件数据,可实时将接收的固件数据烧写到存储器中,以进行固件升级。在一种实施例中,辅助固件包括Ubuntu固件的内核、根文件系统和升级参数,所述根文件系统使用Buildroot定制,所述升级参数包括升级固件的路径。重用子板设备固有的Ubuntu固件内核,无需额外调用其他固件的内核,可以减少项目编译的复杂性。升级参数包括升级固件的路径,从而对指定固件进行升级。根文件系统使用Buildroot定制,加入必需的功能,例如adb支持功能和rkupdate支持功能,这样可以减少辅助固件的体积。具体的,Buildroot的定制是基于主板芯片原厂的仓库来定制。主要修改有:1.最小化的Buildroot配置,仅包含基本所需的功能,包括adb、busybox和rkupdate等;2.开机自动执行预设脚本,具体可以是/usr/bin/netrecovery脚本,/usr/bin/netrecovery脚本负责从mic分区提取内嵌的tar.gz包,再将其解压到/tmp目录,并运行其中的/tmp/netrecovery脚本。/tmp/netrecovery脚本包含主要的升级操作,需要经常修改,因此由辅助固件提供,免除编译Buildroot根文件系统的需要;3.安装依赖库libcurl,用于http支持。在一种实施例中,辅助固件经过打包处理,打包过程如下:将tar/目录里的所有文件打包成tar.gz包,并添加到res/wipe_all-misc.img中作为misc分区固件文件,该tar.gz包会在辅助固件启动时解压到/tmp目录,并自动执行/tmp/netrecovery脚本;解压Ubuntu固件中的res/boot.img文件,提示内核和资源文件,连同Buildroot生成的根文件系统包res/recovery.cpio.gz,一起打包成recovery.img文件;最后,将所有的分区的固件文件打包成最终的辅助固件。在一种实施例中,对于arm64架构的主板,主板的原厂家提供了一些开源程序,例如rkdeveloptool程序。本文档来自技高网...

【技术保护点】
1.一种集群服务器的固件升级方法,其特征在于,包括如下步骤:/n主板通过USB线向子板设备烧写辅助固件,子板设备依据所述辅助固件进行重启;/n在子板设备重启后,主板向子板设备发送升级配置参数,子板设备依据升级配置参数配置升级环境;/n子板设备通过以太网线向Web服务器发送固件升级请求;/n子板设备接收Web服务器反馈的固件数据,并将所述固件数据烧写到存储器中。/n

【技术特征摘要】
1.一种集群服务器的固件升级方法,其特征在于,包括如下步骤:
主板通过USB线向子板设备烧写辅助固件,子板设备依据所述辅助固件进行重启;
在子板设备重启后,主板向子板设备发送升级配置参数,子板设备依据升级配置参数配置升级环境;
子板设备通过以太网线向Web服务器发送固件升级请求;
子板设备接收Web服务器反馈的固件数据,并将所述固件数据烧写到存储器中。


2.根据权利要求1所述的集群服务器的固件升级方法,其特征在于:所述辅助固件包括Ubuntu固件的内核、根文件系统和升级参数,所述根文件系统使用Buildroot定制,所述升级参数包括升级固件的路径。


3.根据权利要求2所述的集群服务器的固件升级方法,其特征在于:所述辅助固件经过打包处理,打包过程如下:将tar/目录里的所有文件打包成tar.gz包,并添加到res/wipe_all-misc.img中作为misc分区固件文件;解压Ubuntu固件中的res/boot...

【专利技术属性】
技术研发人员:黄其勇文晓东邹学芳詹松彬廖华明杜靖武陈杰鹏
申请(专利权)人:中山市天启智能科技有限公司
类型:发明
国别省市:广东;44

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

1