CN115794172A - 一种nvme固态硬盘的固件刷新方法、装置以及介质 - Google Patents
一种nvme固态硬盘的固件刷新方法、装置以及介质 Download PDFInfo
- Publication number
- CN115794172A CN115794172A CN202211663450.XA CN202211663450A CN115794172A CN 115794172 A CN115794172 A CN 115794172A CN 202211663450 A CN202211663450 A CN 202211663450A CN 115794172 A CN115794172 A CN 115794172A
- Authority
- CN
- China
- Prior art keywords
- firmware
- raid card
- refreshing
- refreshed
- nvme
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 101
- 239000007787 solid Substances 0.000 title claims abstract description 63
- 230000003213 activating effect Effects 0.000 claims abstract description 6
- 238000004590 computer program Methods 0.000 claims description 12
- 230000000694 effects Effects 0.000 claims description 11
- 238000012360 testing method Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 20
- 238000011161 development Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请公开了一种NVME固态硬盘的固件刷新方法、装置以及介质,应用于服务器技术领域。本申请先获取RAID卡的控制器类型,然后确认RAID卡的唯一识别码,并根据RAID卡的控制器类型查询RAID卡下待刷新固件的NVME SSD的盘符。最后根据得到的唯一识别码和盘符对待刷新固件的NVME SSD进行固件的加载、激活与刷新。基于上述方案,在针对RAID模式下NVME SSD需要固件刷新的时候,不需要优先更换至板载直连配置进行固件刷新再更换至RAID模式下使用,只需要查询并确认RAID卡的类型,然后针对不同类型的RAID卡利用各自对应的固件刷新工具和固件刷新方法对NVME SSD进行固件刷新。
Description
技术领域
本申请涉及服务器技术领域,特别是涉及一种NVME固态硬盘的固件刷新方法、装置以及介质。
背景技术
随着服务器产业迅速发展,客户需求越来越多样化,针对服务器的配置要求错综复杂。随着固态硬盘(Solid State Drive,SSD)的发展趋势变化,非易失性内存主机控制器接口规范(Non-Volatile Memory Host Controller Interface Specification,NVME)SSD越来越占据市场的主流地位。当前的NVME SSD固件(Firmware,FW)刷新方案如下:固件刷新工具为nvmecli,仅适用于板载直连模式。固件刷新步骤是运行nvme fw-download/dev/nvme*n1–f[FW文件],加载固件。通过nvme fw-commit/dev/nvme*n1-s0-a3激活并刷新固件。其中,/dev/nvme*n1代表待刷新固件盘的盘符。目前对于磁盘阵列(Redundant Arraysof Independent Disks,RAID)模式无固件刷新方法,需要先在板载直连模式下进行固件刷新操作,然后才能在RAID模式下进行其它相关测试。目前的技术方案需要区分拓扑结构。板载直连配置下,一般通过nvmecli进行固件刷新。可见,因为以往服务器针对NVME SSD的配置较为简单,一般情况下只支持对NVME SSD的板载配置。随着业务的发展,此种配置具有一定的局限性,由此迎来NVME搭配RAID卡的配置,但这方面的技术相对比较空白,加之目前SSD厂商之多,对SSD的管控也较为复杂,尤其对于NVME SSD的固件管控问题更为突出。面对之后骤增的NVME搭配RAID卡的配置需求,需要有对应的方案方法来应对RAID卡配置下NVMESSD的固件升降级等操作。
针对NVME SSD FW刷新,目前包括RAID和板载直连两种配置,当前的方案仅支持板载直连配置下的固件刷新,在测试RAID配置的时候,需要额外准备板载直连配置进行固件刷新。且操作过程中频繁更换配置,提高了操作难度。
由此可见,如何简化NVME SSD FW(固件)的刷新过程,是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种NVME固态硬盘的固件刷新方法、装置以及介质,以简化NVME SSD FW的刷新过程。
为解决上述技术问题,本申请提供一种NVME固态硬盘的固件刷新方法,包括:
获取RAID卡的控制器类型,其中,所述RAID卡包括Broadcom RAID卡和MicrochipRAID卡;
确认所述RAID卡的唯一识别码;
根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVME SSD的盘符;
根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新。
优选地,所述根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVMESSD的盘符包括:
若所述RAID卡为Broadcom RAID卡,则通过EID和Slot号确定所述盘符;
若所述RAID卡为Microchip RAID卡,则通过Channel ID和Device号确定所述盘符。
优选地,所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之后,还包括:
重启机器以使固件刷新生效。
优选地,所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之前,还包括:
查询并确认所述RAID卡下所述待刷新固件的NVME SSD的固件版本;
所述重启机器以使固件刷新生效之后,还包括:
查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功。
优选地,所述查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功之后,还包括:
若所述待刷新固件刷新成功,则对刷新固件后的NVME SSD进行混合读写操作以判断盘体是否能够进行读写。
优选地,若所述RAID卡为Broadcom RAID卡,则进行固件刷新的刷新工具为storcli64;
若所述RAID卡为Microchip RAID卡,则进行固件刷新的刷新工具为arcconf。
优选地,所述获取RAID卡的控制器类型包括:
利用lspci命令查询所述RAID卡的控制器类型。
为解决上述技术问题,本申请还提供一种NVME固态硬盘的固件刷新装置,包括:
获取模块,用于获取RAID卡的控制器类型,其中,所述RAID卡包括Broadcom RAID卡和Microchip RAID卡;
确认模块,用于确认所述RAID卡的唯一识别码;
第一查询模块,用于根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVME SSD的盘符;
刷新模块,用于根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新。
优选地,所述NVME固态硬盘的固件刷新装置还包括:重启模块,用于在所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之后,重启机器以使固件刷新生效。。
优选地,所述NVME固态硬盘的固件刷新装置还包括:第二查询模块,用于在所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之前,查询并确认所述RAID卡下待刷新固件的NVME SSD的固件版本;还用于所述重启机器以使固件刷新生效之后,查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功。
优选地,所述NVME固态硬盘的固件刷新装置还包括:控制模块,用于在所述查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功之后,若所述待刷新固件刷新成功,则对刷新固件后的NVME SSD进行混合读写操作以判断盘体是否能够进行读写。
为解决上述技术问题,本申请还提供一种NVME固态硬盘的固件刷新装置,包括:存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述NVME固态硬盘的固件刷新方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述NVME固态硬盘的固件刷新方法的步骤。
本申请所提供的一种NVME固态硬盘的固件刷新方法,其中,RAID卡包括BroadcomRAID卡和Microchip RAID卡。本申请先获取RAID卡的控制器类型,然后确认RAID卡的唯一识别码,并根据之前获取的RAID卡的控制器类型查询RAID卡下待刷新固件的NVME SSD的盘符。最后采用对应的刷新工具,带入得到的唯一识别码和盘符以实现对待刷新固件的NVMESSD进行固件的加载、激活与刷新。基于上述方案,在针对RAID模式下NVME SSD需要固件刷新的时候,不需要优先更换至板载直连配置进行固件刷新再更换至RAID模式下使用,只需要查询并确认RAID卡的类型,然后针对不同类型的RAID卡利用各自对应的固件刷新工具和固件刷新方法对NVME SSD进行固件刷新。可见,本方案对SIT、兼容性测试、竞标测试等能够极大程度的节省人力、时间、成本,保障在行业内的优势。同时避免了对直连系统的依赖,不用硬件上进行变动和插拔,能够有效避免频繁拔插操作导致盘体以及主板物理接口的损坏。还去除人工干预,不用必须现场操作,可实现远程操作,同时使测试可实现全程自动化,节省人力、时间成本,提高了测试效率。
本申请还提供了一种NVME固态硬盘的固件刷新装置和计算机可读存储介质,与上述方法对应,故具有与上述方法相同的有益效果。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种NVME固态硬盘的固件刷新方法的流程图;
图2为本申请实施例提供的一种NVME固态硬盘的固件刷新方法的具体流程图;
图3为本申请实施例提供的NVME固态硬盘的固件刷新装置的结构图;
图4为本申请另一实施例提供的NVME固态硬盘的固件刷新装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种NVME固态硬盘的固件刷新方法、装置以及介质,以简化NVME SSD FW的刷新过程。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
随着服务器产业迅速发展,客户需求越来越多样化,针对服务器的配置要求错综复杂。随着SSD的发展趋势变化,NVME SSD越来越占据市场的主流地位。但以往服务器针对NVME SSD的配置较为简单,一般情况下只支持对NVME SSD的板载配置。随着业务的发展,此种配置具有一定的局限性,由此迎来NVME搭配磁盘阵列RAID卡的配置,但这方面的技术相对比较空白,加之目前SSD厂商之多,对SSD的管控也较为复杂,尤其对于NVME SSD的固件管控问题更为突出。面对之后骤增的NVME搭配RAID卡的配置需求,需要有对应的方案方法来应对RAID卡配置下NVME SSD的固件升降级等操作。目前的技术方案需要区分拓扑结构。板载直连配置下,一般通过nvmecli进行固件刷新。针对RAID卡配置,主流分为两种:Broadcom的RAID卡和Microchip的RAID卡,这两种配置的情况,由于nvmecli不能穿透RAID阵列,这时候识别到的硬盘盘符如sda,不是物理盘符而是虚拟阵列,nvmecli命令无法直接进行操作,这时需要先更换为板载直连模式,使用nvmecli工具进行NVME SSD的固件刷新,然后再换回磁盘阵列RAID卡配置之后进行其它相应操作。
针对NVME SSD FW刷新,目前包括RAID和板载直连两种配置,现有技术仅支持板载直连配置下的固件刷新。在测试RAID配置的时候,需要额外准备板载直连配置进行固件刷新。导致频繁更换配置,提高了操作难度,占用测试资源,降低测试效率,而且容易损坏机器的配件。且更换配置进行固件刷新的动作增加了人工步骤,无法实现测试自动化、程序化,无法远程控制和测试。目前市面上常用的工具以及各个SSD厂商的专属工具,均不能够透过磁盘阵列RAID卡针对NVME SSD进行固件刷新,特提出本申请的方案以解决透过磁盘阵列RAID卡进行NVME SSD FW刷新的问题。本方案在测试RAID配置的时候,不需要额外准备板载直连配置进行固件刷新。不会频繁更换配置,降低了操作难度,降低了测试资源的占用,提高了测试效率,降低了机器配件的损坏几率。且更换配置进行固件刷新的动作不会增加人工步骤,可以实现测试自动化、程序化,可以远程控制和测试。
本申请实施例提供了一种NVME固态硬盘的固件刷新方法,图1为本申请实施例提供的一种NVME固态硬盘的固件刷新方法的流程图;如图1所示,该方法包括如下步骤:
S10:获取RAID卡的控制器类型,其中,RAID卡包括Broadcom RAID卡和MicrochipRAID卡。
S11:确认RAID卡的唯一识别码。
S12:根据RAID卡的控制器类型查询RAID卡下待刷新固件的NVME SSD的盘符。
S13:根据RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新。
本申请实施例通过RAID卡对NVME SSD进行固件刷新,避免了更换板载直连系统的繁杂步骤。下面说明本申请实施例的其中一种具体示例。在RAID模式下,透过RAID卡对NVMESSD进行固件刷新,如下为刷新方案:
1、利用lspci命令查询RAID卡的控制器类型,即确认RAID卡是Broadcom RAID卡还是Microchip RAID卡。
2、查询RAID卡的Controller ID,即确认RAID卡的唯一识别码。
3、查询RAID下待刷新固件的NVME SSD的盘符,其中Broadcom RAID卡下硬盘的盘符通过EID和Slot号来确定、Microchip RAID卡下硬盘的盘符通过Channel ID和Device号来确定。
4、在刷新固件前,查询并确认RAID下待刷新固件的NVME SSD的固件版本。
5、带入上述第2步查询到的RAID卡的Controller ID和第3步查询到的RAID下待刷新固件的NVME SSD的盘符。并且针对不同型号的RAID卡需要利用各自对应的刷新工具和刷新方法来对待刷新固件的NVME SSD进行固件的加载、激活与刷新。其中Broadcom RAID卡利用的固件刷新工具为storcli64,Microchip RAID卡下利用的固件刷新工具为arcconf。
6、重启机器,使得固件刷新生效。
7、刷新固件后,查询RAID下待刷新固件的NVME SSD的固件版本,确认固件刷新成功。
8、利用fio命令对刷新固件后的NVME SSD进行混合读写操作,确认盘体是否能够进行读写,确认盘体是否正常。
基于上述方案,本实施例在针对RAID模式下NVME SSD需要FW刷新的时候,不需要优先更换至板载直连配置进行FW刷新再更换至RAID模式下使用,只需要利用lspci命令查询并确认磁盘阵列RAID卡的类型,针对不同类型的磁盘阵列RAID卡利用各自对应的FW刷新工具和FW刷新方法对NVME SSD进行FW刷新。通过本实施例的方案可解决RAID配置下NVMESSD FW无法直接刷新,需要更换板载直连配置才能进行固件刷新的问题,极大程度减少人工更换配置,降低了操作难度,节约了时间、人力成本。
本申请实施例只提供了Broadcom RAID卡以及Microchip RAID卡两种不同控制器类型,实际应用时不作限定。下面针对Broadcom RAID卡以及Microchip RAID卡的刷新过程进行说明。Broadcom RAID卡下固件刷新过程如下(其中,c*中的*代表Controller ID;e*中的*代表EID;s*中的*代表Slot号):
1、运行./storcli64 show,查询Broadcom RAID卡的数量和Controller ID。
2、运行./storcli64/c*show,查询所有待刷新FW盘的EID和Slot号。
3、运行./storcli64/c*/e*/s*show all,查询待刷新FW盘的FW版本。
4、运行./storcli64/c*/e*/s*download src=***.bin mode=E offlineactivatenow,进行FW刷新。
5、运行reboot,重启机器。
6、运行./storcli64/c*/e*/s*show all,查询待刷新FW盘的FW版本。
而Microchip RAID卡下的固件刷新过程如下:
1、运行arcconf list,查询Microchip RAID卡的数量和Controller ID;
2、运行./arcconf getconfig[Controller ID],查询待刷新FW盘的协议类型、Reported Channel ID和Device号、FW版本;
3、运行./arcconf imageupdate[Controller ID]device[Reported Channel ID和Device号]32768[FW文件]239,进行FW刷新;
4、运行reboot,重启机器;
5、运行./arcconf getconfig 1,查询待刷新FW盘的FW版本。
另外,本申请实施例中fio的读写模型如下:fio--name=128k_rw--rw=rw--randrepeat=0--direct=1--thread--norandommap--ioengine=libaio--numjobs=1
--group_reporting--filename=/dev/nvme*n1--runtime=600--time_based--bs=128k--iodepth=128–rwmixread=50--output=128k_sw_nvme*.log。
图2为本申请实施例提供的一种NVME固态硬盘的固件刷新方法的具体流程图;如图2所示,该方法包括如下步骤:S20:识别控制器。S21:判断是否存在控制器;若存在控制器,则进入步骤S22;若不存在控制器,则进入步骤S33。S22:自动识别控制器类型;若是Broadcom RAID卡,则进入步骤S23;若是Micrchip RAID卡,则进入步骤S28。S23:识别NVME硬盘盘符1。S24:识别NVME盘固件版本1。S25:刷新固件1。S26:重启机器1。S27:再次识别NVME盘固件版本1。S28:识别NVME硬盘盘符2。S29:识别NVME盘固件版本2。S30:刷新固件2。S31:重启机器2。S32:再次识别NVME盘固件版本2。S33:板载直连模式。S34:识别NVME硬盘盘符3。S35:识别NVME盘固件版本3。S36:刷新固件3。S37:重启机器3。S38:再次识别NVME盘固件版本3。S39:判断是否正常读写;若能正常读写,则结束;若不能正常读写,则进入步骤S40。S40:读写失败分析。即NVME固态硬盘的固件刷新时需要先识别控制器,从而判断是否存在控制器,若存在控制器,则自动识别控制器类型,判断是Broadcom RAID卡还是Microchip RAID卡。若不存在控制器,则只能进入板载直连模式。这三种情况下均需要通过以下步骤完成刷新:识别NVME硬盘盘符,识别NVME盘固件版本,刷新固件,重启机器,再次识别NVME盘固件版本,最后判断是否正常读写;若是,则结束;若否,则进行读写失败分析。需要注意的是,图2所示的方案仅仅是本实施例提供的其中一种具体示例,并不对本申请其他方案造成限定。
以上对本申请实施例所提供的NVME固态硬盘的固件刷新方法进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
本申请实施例所提供的一种NVME固态硬盘的固件刷新方法,其中,磁盘阵列RAID卡包括Broadcom RAID卡和Microchip RAID卡。本申请实施例先获取磁盘阵列RAID卡的控制器类型,然后确认磁盘阵列RAID卡的唯一识别码,并根据之前获取的RAID卡的控制器类型查询磁盘阵列RAID卡下待刷新固件的NVME SSD的盘符。最后采用对应的刷新工具,带入得到的唯一识别码和盘符以实现对待刷新固件的NVME SSD进行固件的加载、激活与刷新。基于上述方案,在针对RAID模式下NVME SSD需要固件刷新的时候,不需要优先更换至板载直连配置进行固件刷新再更换至RAID模式下使用,只需要查询并确认磁盘阵列RAID卡的类型,然后针对不同类型的磁盘阵列RAID卡利用各自对应的固件刷新工具和固件刷新方法对NVME SSD进行固件刷新。可见,本方案对系统集成测试(System Integration Testing,SIT)、兼容性测试、竞标测试等能够极大程度的节省人力、时间、成本,保障在行业内的优势。同时避免了对直连系统的依赖,不用硬件上进行变动和插拔,能够有效避免频繁拔插操作导致盘体以及主板物理接口的损坏。还去除人工干预,不用必须现场操作,可实现远程操作,同时使测试可实现全程自动化,节省人力、时间成本,提高了测试效率。
本申请实施例的磁盘阵列RAID卡包括Broadcom RAID卡和Microchip RAID卡,两种RAID卡确定盘符的方式不相同。本实施例提供一种具体的方案,根据磁盘阵列RAID卡的控制器类型查询磁盘阵列RAID卡下待刷新固件的NVME SSD的盘符包括:若RAID卡为Broadcom RAID卡,则通过EID和Slot号确定盘符。若磁盘阵列RAID卡为Microchip RAID卡,则通过Channel ID和Device号确定盘符。
另外,在固件刷新时,两种磁盘阵列RAID卡刷新所使用的刷新工具也不相同,若磁盘阵列RAID卡为Broadcom RAID卡,则进行固件刷新的刷新工具可使用storcli64;若磁盘阵列RAID卡为Microchip RAID卡,则进行固件刷新的刷新工具可使用arcconf。值得注意的是,本实施例仅仅提供一种具体的方案,确定盘符的方式和固件刷新工具并不限于本实施例提供的方案。
在根据磁盘阵列RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新之后,需要重启机器以使固件刷新生效。而在实际应用中,通常需要验证固件是否刷新成功。因此,根据磁盘阵列RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新之前,可以查询并确认磁盘阵列RAID卡下待刷新固件的NVMESSD的固件版本,然后在重启机器以使固件刷新生效之后,再次查询磁盘阵列RAID卡下待刷新固件的NVME SSD的固件版本以确认待刷新固件是否刷新成功。另外,若待刷新固件刷新成功,则可以继续对刷新固件后的NVME SSD进行混合读写操作以判断盘体是否能够进行读写。
本申请实施例通过磁盘阵列RAID卡对NVME SSD进行固件刷新,避免了更换板载直连系统的繁杂步骤。本申请是在RAID模式下透过磁盘阵列RAID卡对NVME SSD进行固件刷新,可以利用lspci命令查询磁盘阵列RAID卡的控制器类型,从而确认磁盘阵列RAID卡是Broadcom RAID卡还是Microchip RAID卡,两种磁盘阵列RAID卡的处理方式不同。然后获取唯一识别码和盘符为后续刷新作准备。先查询磁盘阵列RAID卡的Controller ID,即确认磁盘阵列RAID卡的唯一识别码。并查询磁盘阵列RAID下待刷新固件的NVME SSD的盘符。需要注意的是,不同的磁盘阵列RAID卡的盘符是不同的,因此确定的方式也不相同。其中Broadcom RAID卡下硬盘的盘符通过EID和Slot号来确定、Microchip RAID卡下硬盘的盘符通过Channel ID和Device号来确定。带入上述查询到的磁盘阵列RAID卡的Controller ID和磁盘阵列RAID卡下待刷新固件的NVME SSD的盘符。最后针对不同型号的磁盘阵列RAID卡需要利用各自对应的刷新工具和刷新方法来对待刷新固件的NVME SSD进行固件的加载、激活与刷新。其中Broadcom RAID卡利用的固件刷新工具为storcli64,Microchip RAID卡下利用的固件刷新工具为arcconf。
而在刷新固件前,还可以先查询并确认磁盘阵列RAID卡下待刷新固件的NVME SSD的固件版本。然后重启机器,使得固件刷新生效。固件刷新生效之后,再次查询磁盘阵列RAID卡下待刷新固件的NVME SSD的固件版本以确认固件是否刷新成功。若固件刷新成功之后,还需要确认盘体是否能够进行读写,才能确定本次操作成功完成。具体可以利用fio命令对刷新固件后的NVME SSD进行混合读写操作,确认盘体是否能够进行读写,确认盘体是否正常。
本申请实施例针对Broadcom RAID卡以及Microchip RAID卡的刷新过程进行说明。Broadcom RAID卡下固件刷新过程如下(其中,c*中的*代表Controller ID;e*中的*代表EID;s*中的*代表Slot号):运行./storcli64 show,查询Broadcom RAID卡的数量和Controller ID。运行./storcli64/c*show,查询所有待刷新FW盘的EID和Slot号。运行./storcli64/c*/e*/s*show all,查询待刷新FW盘的FW版本。运行./storcli64/c*/e*/s*download src=***.bin mode=Eoffline activatenow,进行FW刷新。运行reboot,重启机器。运行./storcli64/c*/e*/s*show all,查询待刷新FW盘的FW版本。
而Microchip RAID卡下的固件刷新过程如下:运行arcconf list,查询MicrochipRAID卡的数量和Controller ID。运行./arcconf getconfig[Controller ID],查询待刷新FW盘的协议类型、Reported Channel ID和Device号、FW版本。运行./arcconf imageupdate[Controller ID]device[Reported Channel ID和Device号]32768[FW文件]239,进行FW刷新。运行reboot,重启机器。运行./arcconf getconfig 1,查询待刷新FW盘的FW版本。
可将,两种不同的磁盘阵列RAID卡对应的刷新方案是不同,本实施例仅仅提供了Broadcom RAID卡以及Microchip RAID卡的其中一种刷新过程,在实际应用时并不限于该方案。
以上对本申请实施例所提供的NVME固态硬盘的固件刷新方法进行了详细介绍,需要注意的是,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上各实施例的说明只是用于帮助理解本申请的方法及其核心思想。对于文中出现的各种限定性术语仅仅用于说明本申请的具体方案,在实际进行NVME固态硬盘的固件刷新时,并不限于上述实施例中提到的方案。同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
下面对本申请提到的各名词进行解释。NVME又称非易失性内存主机控制器接口规范,是一个逻辑设备接口规范。它是与高级主机控制器接口(Advanced Host ControllerInterface,AHCI)类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过高速串行计算机扩展总线标准(PCI Express,PCIe)总线附加的非易失性存储器介质(例如采用闪存的固态硬盘驱动器),虽然理论上不一定要求PCIe总线协议。SSD又称固态驱动器,是用固态电子存储芯片阵列制成的硬盘。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上基本与普通硬盘一致。固件就是写入可擦写可编程只读存储器或电可擦可编程只读存储器中的程序。固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。固件是担任着一个系统最基础和最底层工作的软件。而在硬件设备中,固件就是硬件设备的灵魂,因为一些硬件设备除了固件以外没有其它软件组成,因此固件也就决定着硬件设备的功能及性能。磁盘阵列RAID卡有“数块独立磁盘构成具有冗余能力的阵列”之意。磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查的观念,当数组中任意一个硬盘发生故障时,仍可读出数据。在数据重构时,可将数据经计算后重新置入新硬盘中。lspci是查看设备上pcie设备信息的命令。该命令的不同参数配合,在查看pcie设备和定位pcie问题时很有用。包括查看pcie设备中断号、查看配置空间内容、修改配置空间寄存器等操作。
随着服务器的快速发展,对于部件的升级需求也越来越多,硬盘、网卡、磁盘阵列RAID卡等作为服务器的重要组成部分,为了适应快速发展的网络需求,给用户带来极致体验,频繁升级已经成为常态,因此,为了便捷服务器测试和服务器升级维护操作,能够统一现在服务器中各硬件和固件刷新方法的工具是必不可少的。本申请中Broadcom RAID卡利用的固件刷新工具为storcli64,Microchip RAID卡下利用的固件刷新工具为arcconf。
在上述实施例中,对于NVME固态硬盘的固件刷新方法进行了详细描述,本申请还提供NVME固态硬盘的固件刷新装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
基于功能模块的角度,本实施例提供一种NVME固态硬盘的固件刷新装置,图3为本申请实施例提供的NVME固态硬盘的固件刷新装置的结构图,如图3所示,该装置包括:
获取模块10,用于获取RAID卡的控制器类型,其中,RAID卡包括Broadcom RAID卡和Microchip RAID卡;
确认模块11,用于确认RAID卡的唯一识别码;
第一查询模块12,用于根据RAID卡的控制器类型查询RAID卡下待刷新固件的NVMESSD的盘符;
刷新模块13,用于根据RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
作为优选的实施方式,NVME固态硬盘的固件刷新装置还包括:重启模块,用于在根据RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新之后,重启机器以使固件刷新生效。。
第二查询模块,用于在根据RAID卡的控制器类型采用对应的刷新工具,带入唯一识别码和盘符以对待刷新固件的NVME SSD进行固件的加载、激活与刷新之前,查询并确认RAID卡下待刷新固件的NVME SSD的固件版本;还用于重启机器以使固件刷新生效之后,查询RAID卡下待刷新固件的NVME SSD的固件版本以确认待刷新固件是否刷新成功。
控制模块,用于在查询RAID卡下待刷新固件的NVME SSD的固件版本以确认待刷新固件是否刷新成功之后,若待刷新固件刷新成功,则对刷新固件后的NVME SSD进行混合读写操作以判断盘体是否能够进行读写。
本实施例提供的NVME固态硬盘的固件刷新装置中,RAID卡包括Broadcom RAID卡和Microchip RAID卡。本申请通过获取模块先获取RAID卡的控制器类型,然后确认模块确认RAID卡的唯一识别码,第一查询模块根据之前获取的RAID卡的控制器类型查询RAID卡下待刷新固件的NVME SSD的盘符。最后刷新模块采用对应的刷新工具,带入得到的唯一识别码和盘符以实现对待刷新固件的NVME SSD进行固件的加载、激活与刷新。基于上述方案,在针对RAID模式下NVME SSD需要固件刷新的时候,不需要优先更换至板载直连配置进行固件刷新再更换至RAID模式下使用,只需要查询并确认RAID卡的类型,然后针对不同类型的RAID卡利用各自对应的固件刷新工具和固件刷新方法对NVME SSD进行固件刷新。可见,本方案对SIT、兼容性测试、竞标测试等能够极大程度的节省人力、时间、成本,保障在行业内的优势。同时避免了对直连系统的依赖,不用硬件上进行变动和插拔,能够有效避免频繁拔插操作导致盘体以及主板物理接口的损坏。还去除人工干预,不用必须现场操作,可实现远程操作,同时使测试可实现全程自动化,节省人力、时间成本,提高了测试效率。
基于硬件的角度,本实施例提供了另一种NVME固态硬盘的固件刷新装置,图4为本申请另一实施例提供的NVME固态硬盘的固件刷新装置的结构图,如图4所示,NVME固态硬盘的固件刷新装置包括:存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例中所提到的NVME固态硬盘的固件刷新方法的步骤。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的NVME固态硬盘的固件刷新方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于NVME固态硬盘的固件刷新方法涉及到的数据等。
在一些实施例中,NVME固态硬盘的固件刷新装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图中示出的结构并不构成对NVME固态硬盘的固件刷新装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的NVME固态硬盘的固件刷新装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:NVME固态硬盘的固件刷新方法。
本实施例提供的NVME固态硬盘的固件刷新装置,与上述方法对应,故具有与上述方法相同的有益效果。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例描述的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例提供的计算机可读存储介质,与上述方法对应,故具有与上述方法相同的有益效果。
以上对本申请所提供的一种NVME固态硬盘的固件刷新方法、装置以及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种NVME固态硬盘的固件刷新方法,其特征在于,包括:
获取RAID卡的控制器类型,其中,所述RAID卡包括Broadcom RAID卡和Microchip RAID卡;
确认所述RAID卡的唯一识别码;
根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVME SSD的盘符;
根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新。
2.根据权利要求1所述的NVME固态硬盘的固件刷新方法,其特征在于,所述根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVME SSD的盘符包括:
若所述RAID卡为Broadcom RAID卡,则通过EID和Slot号确定所述盘符;
若所述RAID卡为Microchip RAID卡,则通过ChannelID和Device号确定所述盘符。
3.根据权利要求2所述的NVME固态硬盘的固件刷新方法,其特征在于,所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之后,还包括:
重启机器以使固件刷新生效。
4.根据权利要求3所述的NVME固态硬盘的固件刷新方法,其特征在于,所述根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新之前,还包括:
查询并确认所述RAID卡下所述待刷新固件的NVME SSD的固件版本;
所述重启机器以使固件刷新生效之后,还包括:
查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功。
5.根据权利要求1所述的NVME固态硬盘的固件刷新方法,其特征在于,所述查询所述RAID卡下所述待刷新固件的NVME SSD的固件版本以确认所述待刷新固件是否刷新成功之后,还包括:
若所述待刷新固件刷新成功,则对刷新固件后的NVME SSD进行混合读写操作以判断盘体是否能够进行读写。
6.根据权利要求1所述的NVME固态硬盘的固件刷新方法,其特征在于,若所述RAID卡为Broadcom RAID卡,则进行固件刷新的刷新工具为storcli64;
若所述RAID卡为Microchip RAID卡,则进行固件刷新的刷新工具为arcconf。
7.根据权利要求1所述的NVME固态硬盘的固件刷新方法,其特征在于,所述获取RAID卡的控制器类型包括:
利用lspci命令查询所述RAID卡的控制器类型。
8.一种NVME固态硬盘的固件刷新装置,其特征在于,包括:
获取模块,用于获取RAID卡的控制器类型,其中,所述RAID卡包括Broadcom RAID卡和Microchip RAID卡;
确认模块,用于确认所述RAID卡的唯一识别码;
第一查询模块,用于根据所述RAID卡的控制器类型查询所述RAID卡下待刷新固件的NVME SSD的盘符;
刷新模块,用于根据所述RAID卡的控制器类型采用对应的刷新工具,带入所述唯一识别码和所述盘符以对所述待刷新固件的NVME SSD进行固件的加载、激活与刷新。
9.一种NVME固态硬盘的固件刷新装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的NVME固态硬盘的固件刷新方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的NVME固态硬盘的固件刷新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211663450.XA CN115794172A (zh) | 2022-12-23 | 2022-12-23 | 一种nvme固态硬盘的固件刷新方法、装置以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211663450.XA CN115794172A (zh) | 2022-12-23 | 2022-12-23 | 一种nvme固态硬盘的固件刷新方法、装置以及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115794172A true CN115794172A (zh) | 2023-03-14 |
Family
ID=85427794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211663450.XA Pending CN115794172A (zh) | 2022-12-23 | 2022-12-23 | 一种nvme固态硬盘的固件刷新方法、装置以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794172A (zh) |
-
2022
- 2022-12-23 CN CN202211663450.XA patent/CN115794172A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6012130A (en) | Method and apparatus for automated disk drive upgrades | |
US8086919B2 (en) | Controller having flash memory testing functions, and storage system and testing method thereof | |
US8312444B2 (en) | Method for optimizing memory modules for user-specific environments | |
CN110515641A (zh) | 服务器固件的更新方法、装置及系统 | |
CN109408097A (zh) | 一种固件升级方法、装置、系统及一种电子设备 | |
CN113835644B (zh) | 整机迁移方法、装置、设备及存储介质 | |
US6298427B1 (en) | Method and apparatus for mapping hard disk partitions and block devices to logical drives in a computer system | |
US6473655B1 (en) | Data processing system and method for creating a virtual partition within an existing partition in a hard disk drive | |
CN110825419A (zh) | 一种固件刷新方法、装置及电子设备和存储介质 | |
CN115357262A (zh) | 一种驱动器固件批量升级的方法 | |
US6446139B1 (en) | Multiple chip single image BIOS | |
CN112328179A (zh) | 磁盘阵列的配置方法、系统、电子设备及可读存储介质 | |
CN108733517A (zh) | Ssd固件升级保护方法及装置 | |
CN116301596A (zh) | 一种软件raid构建方法、装置、设备及存储介质 | |
US8086834B2 (en) | System and method for populating a dedicated system service repository for an information handling system | |
US20030233536A1 (en) | Automatic selection of firmware for a computer that allows a plurality of process types | |
CN112445670B (zh) | 一种eMMC测试方法和装置 | |
CN114816491A (zh) | 用于多系统移动终端的系统升级方法、装置及终端 | |
CN110618828B (zh) | 一种数据更新方法及装置 | |
CN112216340A (zh) | 硬盘测试方法、装置、存储介质及电子设备 | |
CN115794172A (zh) | 一种nvme固态硬盘的固件刷新方法、装置以及介质 | |
CN113849380A (zh) | 一种硬盘槽位与信号灯的编号确定方法、系统及相关组件 | |
CN114510375A (zh) | 一种Flash芯片数据区域动态共享系统及方法 | |
US6785747B2 (en) | Method and system for flexible channel path identifier assignment | |
CN1560739A (zh) | 使用存储卡更新固件的方法与装置 |
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 |