A method, apparatus, device, and readable storage medium for hard disk firmware upgrade.
By issuing an identifier set and upgrade command from the client, the upgrade file is distributed to the firmware storage area of each hard drive using the RAID card. This solves the problem of low hard drive firmware upgrade efficiency in RAID and achieves efficient hard drive firmware upgrade.
Patent Information
- Application Number
- CN202211452181.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-18
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2042-11-18
AI Technical Summary
The lack of efficient hard drive firmware upgrade methods in existing technologies results in low firmware upgrade efficiency for a large number of hard drives in RAID, affecting user experience.
The client sends out the identifier set and upgrade command respectively, and the RAID card sends the upgrade file to the firmware storage area of each hard drive to be upgraded, thereby realizing the firmware upgrade of the hard drives in the target RAID.
It improves the efficiency of hard drive firmware upgrades and simplifies the upgrade control of multiple hard drives, especially significantly improving efficiency when there are a large number of hard drives.
Smart Images

Figure CN115904451B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of storage systems, and in particular to a hard disk firmware upgrade method. This invention also relates to a hard disk firmware upgrade device, equipment, and computer-readable storage medium. Background Technology
[0002] To increase the fault tolerance of data storage, multiple hard drives are often arranged in a RAID (redundant array of independent disks) configuration for data storage. RAID cards can directly manage all hard drives in the RAID. Hard drives in a RAID configuration require firmware upgrades. However, there is a lack of mature firmware upgrade methods for a large number of hard drives in a RAID configuration, resulting in low efficiency in firmware upgrades and impacting the user experience.
[0003] Therefore, how to provide a solution to the above-mentioned technical problems is a problem that needs to be solved by those skilled in the art. Summary of the Invention
[0004] The purpose of this invention is to provide a hard disk firmware upgrade method, which enables a large number of hard disks in a target RAID to undergo firmware upgrades by having the client send out an identifier set and upgrade commands respectively, thereby improving work efficiency. Another purpose of this invention is to provide a hard disk firmware upgrade device, equipment, and computer-readable storage medium, which enables a large number of hard disks in a target RAID to undergo firmware upgrades by having the client send out an identifier set and upgrade commands respectively, thereby improving work efficiency.
[0005] To solve the above-mentioned technical problems, the present invention provides a hard disk firmware upgrade method, comprising:
[0006] Send the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster;
[0007] Receive an identifier set containing the identifiers of multiple hard drives to be upgraded, sent by the client;
[0008] In response to the upgrade command sent by the client for all the hard drives to be upgraded, the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card, so that each hard drive to be upgraded can perform firmware upgrade according to the upgrade files.
[0009] Preferably, the step of sending the identifiers of each hard drive in the target RAID to the client of the distributed storage cluster specifically involves:
[0010] Obtain the physical ID of each hard drive in the target RAID using the RAID card;
[0011] The physical IDs of each hard drive in the target RAID are sent to the client of the distributed storage cluster.
[0012] Preferably, before sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster, the hard drive firmware upgrade method further includes:
[0013] Obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card;
[0014] The specific steps of sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster are as follows:
[0015] The physical ID of each hard drive in the target RAID, its corresponding disk interface type, and the current firmware version name are all sent to the client of the distributed storage cluster for information verification.
[0016] Preferably, before the firmware upgrade method responds to the upgrade command sent by the client for all the hard drives to be upgraded and distributes the pre-stored upgrade files to the firmware storage area of each of the hard drives to be upgraded via the RAID card, the method further includes:
[0017] Obtain the capacity of the firmware storage area of each hard drive in the target RAID using the RAID card;
[0018] The specific steps of responding to the upgrade command sent by the client for all the hard drives to be upgraded, and distributing the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded via the RAID card, are as follows:
[0019] In response to the upgrade command sent by the client for all the hard drives to be upgraded, the pre-stored upgrade files are sent to each hard drive in the target RAID via the RAID card, and the capacity of the firmware storage area of each hard drive in the target RAID is sent to its respective hard drive via the RAID card, so that each hard drive in the target RAID stores the upgrade files in the firmware storage area determined according to the capacity.
[0020] Preferably, after sending the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster, and before distributing the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded via the RAID card in response to the upgrade command sent by the client for all the hard drives to be upgraded, the hard drive firmware upgrade method further includes:
[0021] Receive the upgrade file for the target RAID sent by the client;
[0022] Store the upgrade file.
[0023] Preferably, after responding to the upgrade command sent by the client for all the hard drives to be upgraded, and distributing the pre-stored upgrade files to the firmware storage area of each of the hard drives to be upgraded via the RAID card, the hard drive firmware upgrade method further includes:
[0024] After a preset time period, the current firmware version name of each hard drive in the target RAID is obtained through the RAID card;
[0025] The current firmware version name of each hard drive in the target RAID is sent to the client so as to verify the upgrade status of each hard drive in the target RAID.
[0026] Preferably, after obtaining the current firmware version name of each hard drive in the target RAID via the RAID card after a preset time period, the hard drive firmware upgrade method further includes:
[0027] Determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file;
[0028] If not, then control the alarm to sound.
[0029] To address the aforementioned technical problems, the present invention also provides a hard disk firmware upgrade device, comprising:
[0030] The first sending module is used to send the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster;
[0031] A receiving module is used to receive an identifier set containing the identifiers of multiple hard drives to be upgraded, sent by the client;
[0032] The second sending module is used to respond to the upgrade command sent by the client for all the hard drives to be upgraded, and to send the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded through the RAID card, so that each hard drive to be upgraded can perform firmware upgrade according to the upgrade files.
[0033] To address the aforementioned technical problems, the present invention also provides a hard disk firmware upgrade device, comprising:
[0034] Memory, used to store computer programs;
[0035] A processor, used to execute the computer program to implement the steps of the hard disk firmware upgrade method as described above.
[0036] To address the aforementioned technical problems, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the hard disk firmware upgrade method described above.
[0037] This invention provides a hard drive firmware upgrade method. Considering that hard drives in a RAID array can be distinguished by their identifiers, and considering that a client can only control the upgrade of a single hard drive in the RAID array of a storage node at a time via commands, this application can send the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster. This allows the identifiers of the hard drives to be upgraded to be selected and formed into an identifier set, which is then sent to the storage node. Upon receiving the identifier set, the storage node, in response to the upgrade command, can use the RAID card to distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering the upgrade action of each hard drive. By having the client distribute the identifier set and the upgrade command respectively, a large number of hard drives in the target RAID array can be upgraded, improving work efficiency.
[0038] The present invention also provides a hard disk firmware upgrade device, equipment, and computer-readable storage medium, which have the same beneficial effects as the hard disk firmware upgrade method described above. Attached Figure Description
[0039] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the prior art and embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0040] Figure 1 A flowchart illustrating a hard disk firmware upgrade method provided by the present invention;
[0041] Figure 2 This is a schematic diagram of the structure of a distributed storage cluster;
[0042] Figure 3 A schematic diagram of a hard disk firmware upgrade device provided by the present invention;
[0043] Figure 4 This is a schematic diagram of a hard disk firmware upgrade device provided by the present invention. Detailed Implementation
[0044] The core of this invention is to provide a hard disk firmware upgrade method. By sending an identifier set and an upgrade command from the client, a large number of hard disks in the target RAID can be upgraded, thereby improving work efficiency. Another core aspect of this invention is to provide a hard disk firmware upgrade device, equipment, and computer-readable storage medium. By sending an identifier set and an upgrade command from the client, a large number of hard disks in the target RAID can be upgraded, thereby improving work efficiency.
[0045] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0046] Please refer to Figure 1 , Figure 1 This is a flowchart illustrating a hard disk firmware upgrade method provided by the present invention. The hard disk firmware upgrade method includes:
[0047] S101: Send the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster;
[0048] Specifically, considering the technical problems mentioned above, and taking into account that each hard drive in the RAID can be distinguished and selected by its identifier, in order to facilitate users to select the hard drive that needs firmware upgrade through the client, in this embodiment of the invention, the identifier of each hard drive in the target RAID independent hard drive redundant array can first be sent to the client of the distributed storage cluster, so that users can understand the identifier of each hard drive and select the hard drive that needs to be upgraded through the client.
[0049] It is worth mentioning that the target RAID in this embodiment of the invention can be a PMC architecture RAID, which can support the selection of hard drives by hard drive identifier.
[0050] S102: Receive a set of identifiers containing identifiers of multiple hard drives to be upgraded, sent by the client;
[0051] Specifically, considering that if the client controls the upgrade of only a single hard drive in the RAID of the storage node at a time via commands, for example, the client can instruct the storage node to upgrade hard drive A in the target RAID, that is, it is not possible to directly control the storage node to upgrade multiple hard drives at the same time via commands. Therefore, this application intends to achieve firmware upgrade control of a large number of hard drives by issuing a combination of issuing an identifier set and an upgrade command. First, an identifier set containing the identifiers of multiple hard drives to be upgraded is issued once, and then an upgrade command is issued to upgrade all hard drives to be upgraded in the identifier set. Through two data issuances, firmware upgrade control of a large number of hard drives can be achieved. Therefore, in this embodiment of the invention, the identifier set containing the identifiers of multiple hard drives to be upgraded issued by the client can be received first, that is, the identifier set of the selected hard drives that need to be upgraded, and it can be used as the data basis for subsequent steps.
[0052] Specifically, the received set of identifiers can be temporarily stored for later use.
[0053] S103: In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded through the RAID card, so that each hard drive to be upgraded can perform firmware upgrade according to the upgrade files.
[0054] Specifically, when the client needs to upgrade each hard drive in the control identifier set, it can issue upgrade commands to all hard drives to be upgraded. At this time, the storage node can use the RAID card to send the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering each hard drive to upgrade its firmware according to the upgrade files in its own firmware storage area.
[0055] As can be seen from the above, the client completes the upgrade control of multiple hard drives by issuing data / commands in two steps. The control method is relatively simple, and its advantages are more obvious when there are a large number of hard drives in the storage node.
[0056] This invention provides a hard drive firmware upgrade method. Considering that hard drives in a RAID array can be distinguished by their identifiers, and considering that a client can only control the upgrade of a single hard drive in the RAID array of a storage node at a time via commands, this application can send the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster. This allows the identifiers of the hard drives to be upgraded to be selected and formed into an identifier set, which is then sent to the storage node. Upon receiving the identifier set, the storage node, in response to the upgrade command, can use the RAID card to distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering the upgrade action of each hard drive. By having the client distribute the identifier set and the upgrade command respectively, a large number of hard drives in the target RAID array can be upgraded, improving work efficiency.
[0057] For a better explanation of the embodiments of the present invention, please refer to Figure 2 , Figure 2 This is a schematic diagram of a distributed storage cluster, based on the above embodiments:
[0058] As a preferred embodiment, sending the identifiers of each hard drive in the target RAID to the client of the distributed storage cluster specifically involves:
[0059] Obtain the physical ID of each hard drive in the target RAID using the RAID card;
[0060] Send the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster.
[0061] in, Figure 2 In this context, Client refers to the client machine, Switch / CN (Coordinator Node) is the coordinating node, which can be used to read and query the data stored in each worker node and return the results to the client, and Host / DN (DATA Node) is the worker node (storage node), which can be used to store user data. Generally, a server carries multiple large-capacity hard drives and acts as a node.
[0062] Specifically, the RAID card can be responsible for building multiple hard drives into a RAID array. When building the RAID array, the RAID card can build physical IDs for each hard drive in the target RAID. Therefore, in this embodiment of the invention, the physical ID is used as the hard drive identifier. The RAID card can first know the physical ID of each hard drive in the target RAID array. Therefore, in this embodiment of the invention, the physical ID of each hard drive in the target RAID array can be obtained through the RAID card, and then the physical IDs of each hard drive in the target RAID array are sent to the client of the distributed storage cluster.
[0063] Of course, in addition to the physical ID, the hard drive identifier can be of many other types, which are not limited in this embodiment of the invention.
[0064] As a preferred embodiment, before sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster, the hard drive firmware upgrade method further includes:
[0065] Obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card;
[0066] Sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster specifically involves:
[0067] The physical IDs of each hard drive in the target RAID, their corresponding disk interface types, and the current firmware version name are sent to the client of the distributed storage cluster for information verification.
[0068] Specifically, considering that when a user selects a hard drive to be upgraded on the client, they may need to determine the disk interface type and current firmware version name of each hard drive in the target RAID, the disk interface type can be used to verify whether the disk interface types of the RAID are consistent, and the appropriate upgrade file can be set according to the disk interface type. The current firmware version name can be used to find out the current firmware version of each hard drive in the target RAID. Therefore, in this embodiment of the invention, the physical ID of each hard drive in the target RAID, its corresponding disk interface type, and the current firmware version name can all be sent to the client of the distributed storage cluster for information verification.
[0069] In this embodiment, the RAID card, as the manager of the target RAID, can obtain the disk interface type and current firmware version name of each hard drive. This will not be elaborated further in this embodiment.
[0070] As a preferred embodiment, in response to the upgrade command sent by the client for all hard drives to be upgraded, before the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card, the hard drive firmware upgrade method further includes:
[0071] Obtain the capacity of the firmware storage area of each hard drive in the target RAID using the RAID card;
[0072] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card. Specifically:
[0073] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are sent to each hard drive in the target RAID via the RAID card. The capacity of the firmware storage area of each hard drive in the target RAID is also sent to its respective hard drive via the RAID card, so that each hard drive in the target RAID can store the upgrade files in the firmware storage area determined according to the capacity.
[0074] Specifically, when sending the pre-stored upgrade files to each hard drive in the target RAID via the RAID card, the upgrade files and the identifier set can be sent to the RAID card first. The RAID card can then distribute the upgrade files to each hard drive specified in the identifier set. However, each hard drive needs to store the upgrade files in its own firmware storage area to trigger the upgrade action. Therefore, in this embodiment of the invention, the capacity of the firmware storage area of each hard drive to be upgraded can be simultaneously sent to the RAID card. The RAID card can then send the capacity of the firmware storage area of each hard drive to be upgraded to its respective hard drive. The hard drive to be upgraded will then trigger its own firmware upgrade action based on the firmware storage area determined by the capacity.
[0075] In this context, the RAID card, acting as the manager of the target RAID, can obtain the capacity of the firmware storage area of each hard drive. Since the capacity of the firmware storage area is unique for each hard drive, each hard drive can find the firmware storage area based on the received firmware storage area capacity.
[0076] Of course, in addition to capacity, hard drives can also determine their firmware storage area in other ways, which are not limited in this embodiment of the invention.
[0077] As a preferred embodiment, after sending the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster, in response to the upgrade command sent by the client for all hard drives to be upgraded, before distributing the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded via the RAID card, the hard drive firmware upgrade method further includes:
[0078] Receive the upgrade file for the target RAID sent by the client;
[0079] Store the upgrade files.
[0080] Specifically, in order to improve work efficiency, this embodiment of the invention provides a method for pre-storing upgrade files in storage nodes. That is, the client can actively send upgrade files for the hard drives to be upgraded in the target RAID to the storage node. The storage node can store the upgrade files after receiving them, eliminating the need for staff to enter upgrade files on each storage node separately, thus improving work efficiency.
[0081] Of course, in addition to this specific method, upgrade files can also be pre-stored on the storage node in other ways, and this embodiment of the invention does not limit them here.
[0082] As a preferred embodiment, in response to the upgrade command sent by the client for all hard drives to be upgraded, after the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card, the hard drive firmware upgrade method further includes:
[0083] After a preset time, the current firmware version name of each hard drive in the target RAID is obtained through the RAID card;
[0084] Send the current firmware version name of each hard drive in the target RAID to the client so that the upgrade status of each hard drive in the target RAID can be verified.
[0085] Specifically, considering that the client does not know whether the upgrade has been successfully completed after the upgrade command is issued, in order to help the client understand the situation, the storage node can obtain the current firmware version name of each hard drive in the target RAID through the RAID card after a preset time, and then send the current firmware version name of each hard drive in the target RAID to the client, so as to verify the upgrade status of each hard drive in the target RAID, improve the user experience, and also facilitate timely handling of abnormal situations where the upgrade is not successful.
[0086] The preset duration can be set independently, and it usually needs to be longer than the time required for the hard drive to complete the firmware upgrade. This embodiment of the invention does not impose any limitations on it.
[0087] Specifically, after discovering that some hard drives to be upgraded have failed to upgrade successfully, the client can again control the upgrade of the failed hard drives by using the identifier set and upgrade command, so as to try the upgrade again.
[0088] As a preferred embodiment, after obtaining the current firmware version name of each hard drive in the target RAID via the RAID card after a preset time, the hard drive firmware upgrade method further includes:
[0089] Determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file;
[0090] If not, then control the alarm to sound.
[0091] Specifically, in order to facilitate local staff at the storage node to be aware of any unsuccessful upgrades, the storage node in this embodiment of the invention can also independently determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file. If not, it means that there are hard drives that have not been successfully upgraded, and therefore the alarm can be activated.
[0092] The alarm can be of various types, such as a buzzer, etc., and the embodiments of the present invention are not limited to these.
[0093] Please refer to Figure 3 , Figure 3 This is a schematic diagram of a hard disk firmware upgrade device provided by the present invention. The hard disk firmware upgrade device includes:
[0094] The first sending module 31 is used to send the identifiers of each hard disk in the target RAID independent hard disk redundant array to the client of the distributed storage cluster;
[0095] The receiving module 32 is used to receive an identifier set containing identifiers of multiple hard drives to be upgraded, sent by the client;
[0096] The second sending module 33 is used to respond to the upgrade command sent by the client for all hard drives to be upgraded, and to send the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded through the RAID card, so that each hard drive to be upgraded can perform firmware upgrade according to the upgrade files.
[0097] This invention provides a hard drive firmware upgrade device. Considering that hard drives in a RAID array can be distinguished by their identifiers, and considering that a client can only control the upgrade of a single hard drive in the RAID array of a storage node at a time via commands, this application can send the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster. This allows the client to select the identifiers of the hard drives to be upgraded and form an identifier set, which is then sent to the storage node. Upon receiving the identifier set, the storage node, in response to the upgrade command, can use the RAID card to distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering the upgrade action of each hard drive. By having the client distribute the identifier set and the upgrade command respectively, a large number of hard drives in the target RAID array can be upgraded, improving work efficiency.
[0098] In a preferred embodiment, the first transmitting module 31 includes:
[0099] The first acquisition module is used to obtain the physical ID of each hard drive in the target RAID through the RAID card;
[0100] The third sending module is used to send the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster.
[0101] In a preferred embodiment, the hard drive firmware upgrade device further includes:
[0102] The second acquisition module is used to obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card;
[0103] The third sending module is specifically used for:
[0104] The physical IDs of each hard drive in the target RAID, their corresponding disk interface types, and the current firmware version name are sent to the client of the distributed storage cluster for information verification.
[0105] In a preferred embodiment, the hard drive firmware upgrade device further includes:
[0106] The third acquisition module is used to obtain the capacity of the firmware storage area of each hard drive in the target RAID through the RAID card;
[0107] The second transmitting module 33 is specifically used for:
[0108] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are sent to each hard drive in the target RAID via the RAID card. The capacity of the firmware storage area of each hard drive in the target RAID is also sent to its respective hard drive via the RAID card, so that each hard drive in the target RAID can store the upgrade files in the firmware storage area determined according to the capacity.
[0109] In a preferred embodiment, the hard drive firmware upgrade device further includes:
[0110] The second receiving module is used to receive the upgrade file of the target RAID sent by the client;
[0111] The storage module is used to store the upgrade files.
[0112] In a preferred embodiment, the hard drive firmware upgrade device further includes:
[0113] The fourth acquisition module is used to obtain the current firmware version name of each hard drive in the target RAID through the RAID card after a preset time.
[0114] The fourth sending module is used to send the current firmware version name of each hard drive in the target RAID to the client so as to verify the upgrade status of each hard drive in the target RAID.
[0115] In a preferred embodiment, the hard drive firmware upgrade device further includes:
[0116] The judgment module is used to determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file. If not, the control module is triggered.
[0117] The control module is used to control the alarm to sound.
[0118] For a description of the hard disk firmware upgrade device provided in this embodiment of the invention, please refer to the aforementioned embodiments of the hard disk firmware upgrade method. This embodiment of the invention will not be repeated here.
[0119] Please refer to Figure 4 , Figure 4 This is a schematic diagram of a hard disk firmware upgrade device provided by the present invention. The hard disk firmware upgrade device includes:
[0120] Memory 31 is used to store computer programs;
[0121] The processor 32 is used to execute computer programs to implement the steps of the hard disk firmware upgrade method as described in the foregoing embodiments.
[0122] Specifically, the memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system and computer-readable instructions, and the internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile storage medium. When the processor executes the computer program stored in the memory, it can perform the following steps: send the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster; receive the identifier set containing the identifiers of multiple hard drives to be upgraded from the client; and, in response to the upgrade command sent by the client for all hard drives to be upgraded, distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded through the RAID card, so that each hard drive to be upgraded can perform firmware upgrade according to the upgrade files.
[0123] This invention provides a hard drive firmware upgrade device. Considering that hard drives in a RAID array can be distinguished by their identifiers, and considering that a client can only control the upgrade of a single hard drive in the RAID array of a storage node at a time via commands, this application can send the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster. This allows the client to select the identifiers of the hard drives to be upgraded and form an identifier set, which is then sent to the storage node. Upon receiving the identifier set, the storage node, in response to the upgrade command, can use the RAID card to distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering the upgrade action of each hard drive. By having the client distribute the identifier set and the upgrade command respectively, a large number of hard drives in the target RAID array can be upgraded, improving work efficiency.
[0124] As an optional embodiment, when the processor executes a computer subroutine stored in memory, it can perform the following steps: obtain the physical ID of each hard drive in the target RAID through the RAID card;
[0125] Send the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster.
[0126] As an optional embodiment, when the processor executes the computer subroutine stored in the memory, it can perform the following steps: obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card;
[0127] Sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster specifically involves:
[0128] The physical IDs of each hard drive in the target RAID, their corresponding disk interface types, and the current firmware version name are sent to the client of the distributed storage cluster for information verification.
[0129] As an optional embodiment, when the processor executes a computer subroutine stored in memory, it can perform the following steps: obtain the capacity of the firmware storage area of each hard drive in the target RAID through the RAID card;
[0130] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card. Specifically:
[0131] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are sent to each hard drive in the target RAID via the RAID card. The capacity of the firmware storage area of each hard drive in the target RAID is also sent to its respective hard drive via the RAID card, so that each hard drive in the target RAID can store the upgrade files in the firmware storage area determined according to the capacity.
[0132] As an optional embodiment, when the processor executes a computer subroutine stored in memory, it can perform the following steps: receiving an upgrade file for the target RAID sent by the client;
[0133] Store the upgrade files.
[0134] As an optional embodiment, when the processor executes the computer subroutine stored in the memory, it can perform the following steps: after a preset time, obtain the current firmware version name of each hard drive in the target RAID through the RAID card;
[0135] Send the current firmware version name of each hard drive in the target RAID to the client so that the upgrade status of each hard drive in the target RAID can be verified.
[0136] As an optional embodiment, when the processor executes the computer subroutine stored in the memory, it can perform the following steps: determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file;
[0137] If not, then control the alarm to sound.
[0138] For a description of the hard disk firmware upgrade device provided in this embodiment of the invention, please refer to the aforementioned embodiment of the hard disk firmware upgrade method. This embodiment of the invention will not be repeated here.
[0139] The present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the hard disk firmware upgrade method as described in the foregoing embodiments.
[0140] Specifically, the readable storage medium can include various media capable of storing program code, such as USB flash drives, external hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks. The storage medium stores a computer program, which, when executed by a processor, performs the following steps: sending the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster; receiving an identifier set containing the identifiers of multiple hard drives to be upgraded from the client; and responding to the upgrade command sent by the client for all hard drives to be upgraded, distributing pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded via the RAID card, so that each hard drive to be upgraded can perform a firmware upgrade according to the upgrade files.
[0141] This invention provides a computer-readable storage medium. Considering that hard drives in a RAID array can be distinguished by their identifiers, and considering that a client can only control the upgrade of a single hard drive in the RAID array at a time via commands, this application can send the identifiers of each hard drive in the target RAID array to the client of the distributed storage cluster. This allows the client to select the identifiers of the hard drives to be upgraded and form an identifier set, which is then sent to the storage node. Upon receiving the identifier set, the storage node, in response to the upgrade command, can use the RAID card to distribute the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded, thereby triggering the upgrade action of each hard drive. By having the client distribute the identifier set and the upgrade command, a large number of hard drives in the target RAID array can be upgraded, improving work efficiency.
[0142] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it may perform the following steps: obtaining the physical ID of each hard drive in the target RAID through a RAID card;
[0143] Send the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster.
[0144] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it may perform the following steps: obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card;
[0145] Sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster specifically involves:
[0146] The physical IDs of each hard drive in the target RAID, their corresponding disk interface types, and the current firmware version name are sent to the client of the distributed storage cluster for information verification.
[0147] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it can perform the following steps: obtain the capacity of the firmware storage area of each hard drive in the target RAID through the RAID card;
[0148] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are distributed to the firmware storage area of each hard drive to be upgraded via the RAID card. Specifically:
[0149] In response to the upgrade command sent by the client for all hard drives to be upgraded, the pre-stored upgrade files are sent to each hard drive in the target RAID via the RAID card. The capacity of the firmware storage area of each hard drive in the target RAID is also sent to its respective hard drive via the RAID card, so that each hard drive in the target RAID can store the upgrade files in the firmware storage area determined according to the capacity.
[0150] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it may perform the following steps: receiving an upgrade file for the target RAID sent by a client;
[0151] Store the upgrade files.
[0152] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it can perform the following steps: after a preset time period, obtain the current firmware version name of each hard drive in the target RAID through the RAID card;
[0153] Send the current firmware version name of each hard drive in the target RAID to the client so that the upgrade status of each hard drive in the target RAID can be verified.
[0154] As an optional embodiment, when the processor executes a computer program stored on a computer-readable storage medium, it may perform the following steps: determining whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file;
[0155] If not, then control the alarm to sound.
[0156] For a description of the computer-readable storage medium provided in the embodiments of the present invention, please refer to the aforementioned embodiments of the hard disk firmware upgrade method; the embodiments of the present invention will not be repeated here.
[0157] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section. It should also be noted that in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising a..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0158] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A hard disk firmware upgrade method, characterized in that, include: The RAID card sends the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster; Receive an identifier set containing the identifiers of multiple hard drives to be upgraded, sent by the client; Obtain the capacity of the firmware storage area of each hard drive in the target RAID using the RAID card; In response to the upgrade command sent by the client for all the hard drives to be upgraded, the RAID card sends the pre-stored upgrade files to each hard drive in the target RAID, and sends the capacity of the firmware storage area of each hard drive in the target RAID to its respective hard drive, so that each hard drive in the target RAID stores the upgrade files in the firmware storage area determined according to the capacity, and performs firmware upgrade according to the upgrade files.
2. The hard disk firmware upgrade method according to claim 1, characterized in that, The specific steps of sending the identifiers of each hard drive in the target RAID to the client of the distributed storage cluster are as follows: Obtain the physical ID of each hard drive in the target RAID using the RAID card; The physical IDs of each hard drive in the target RAID are sent to the client of the distributed storage cluster.
3. The hard disk firmware upgrade method according to claim 2, characterized in that, Before sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster, the hard drive firmware upgrade method further includes: Obtain the disk interface type and current firmware version name of each hard drive in the target RAID through the RAID card; The specific steps of sending the physical IDs of each hard drive in the target RAID to the client of the distributed storage cluster are as follows: The physical ID of each hard drive in the target RAID, its corresponding disk interface type, and the current firmware version name are all sent to the client of the distributed storage cluster for information verification.
4. The hard disk firmware upgrade method according to claim 2, characterized in that, After sending the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster, and before distributing the pre-stored upgrade files to the firmware storage area of each hard drive to be upgraded via the RAID card in response to the upgrade command sent by the client for all the hard drives to be upgraded, the hard drive firmware upgrade method further includes: Receive the upgrade file for the target RAID sent by the client; Store the upgrade file.
5. The hard disk firmware upgrade method according to any one of claims 1 to 4, characterized in that, In response to the upgrade command sent by the client for all the hard drives to be upgraded, after the pre-stored upgrade files are distributed to the firmware storage area of each of the hard drives to be upgraded via the RAID card, the hard drive firmware upgrade method further includes: After a preset time period, the current firmware version name of each hard drive in the target RAID is obtained through the RAID card; The current firmware version name of each hard drive in the target RAID is sent to the client so as to verify the upgrade status of each hard drive in the target RAID.
6. The hard disk firmware upgrade method according to claim 5, characterized in that, After obtaining the current firmware version name of each hard drive in the target RAID via the RAID card after a preset time period, the hard drive firmware upgrade method further includes: Determine whether the current firmware version name of each hard drive in the target RAID is the version corresponding to the upgrade file; If not, then control the alarm to sound.
7. A hard disk firmware upgrade device, characterized in that, include: The first sending module is used to send the identifiers of each hard drive in the target RAID independent hard drive redundant array to the client of the distributed storage cluster via the RAID card; A receiving module is used to receive an identifier set containing the identifiers of multiple hard drives to be upgraded, sent by the client; The third acquisition module is used to obtain the capacity of the firmware storage area of each hard drive in the target RAID through the RAID card; The second sending module is used to respond to the upgrade command sent by the client for all the hard drives to be upgraded, and to send the pre-stored upgrade files to each hard drive in the target RAID through the RAID card, and to send the capacity of the firmware storage area of each hard drive in the target RAID to its respective hard drive through the RAID card, so that each hard drive in the target RAID stores the upgrade files in the firmware storage area determined according to the capacity, and performs firmware upgrade according to the upgrade files.
8. A hard drive firmware upgrade device, characterized in that, include: memory for storing computer programs; A processor, configured to implement the steps of the hard disk firmware upgrade method as described in any one of claims 1 to 6 when executing the computer program.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the hard disk firmware upgrade method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Method for achieving online batch upgrading of hard disk firmware through RAID card under Linux system
CN106681775A
Disk array device and firmware update method
JP2008217202A