Method and device for controlling storage device on server
By deploying device controllers and power-down controllers on the server, detecting and updating the memory's firmware, the problem of inefficient firmware maintenance is solved, ensuring the normal operation and efficient maintenance of the storage device.
Patent Information
- Application Number
- CN202411440682.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-15
- Publication Date
- 2025-01-17
AI Technical Summary
The firmware maintenance efficiency of the storage device on the server is low, resulting in untimely handling of firmware problems, affecting the normal use of the storage device.
By deploying device controllers and power-down controllers on the server, the matching degree of memory and firmware is detected. If it does not match, select the appropriate reference firmware update from the backup firmware to ensure that the memory can work normally after restarting and improve firmware maintenance efficiency .
It effectively avoids memory failures caused by inappropriate firmware, ensures that the memory provides normal functions in a timely manner, improves firmware maintenance efficiency, and solves the problem of low firmware maintenance efficiency.
Smart Images

Figure CN119322627A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computers, and in particular, to a method and apparatus for controlling a storage device on a server. Background Art
[0002] With the continuous development of servers, how to efficiently manage and control storage devices on servers has attracted more and more attention. At present, the maintenance of the firmware of the storage devices on the server is highly dependent on manual operation, which consumes a lot of manpower and may not be able to handle the firmware problems of the storage devices in time, and the maintenance efficiency of the firmware of the storage devices on the server is not high. Summary of the invention
[0003] The embodiments of the present application provide a method and apparatus for controlling a storage device on a server, so as to at least solve the problem of low maintenance efficiency of firmware of a storage device on a server in the related art.
[0004] According to an embodiment of the present application, a control method for a storage device on a server is provided, the server comprising a device controller and a power-on / off controller, the device controller and the power-on / off controller being connected to respective memories in the storage device deployed on the server, the memory storing a current version of a first firmware, the server storing a current version of a second firmware and / or a historical version of a third firmware, the memory being set so that the stored firmware takes effect after the memory is restarted, the method being applied to the device controller, the method comprising: detecting a first matching degree between memory information of the memory and first firmware information of the first firmware, wherein the first matching degree is used to indicate whether the first firmware matches the memory; in the case where the first matching degree is used to indicate that the first firmware does not match the memory, finding a reference firmware having a corresponding second matching degree from the second firmware and / or the third firmware for indicating that the corresponding firmware matches the memory, wherein the second matching degree is a matching degree between the memory information and the firmware information of the corresponding firmware; updating the first firmware stored on the memory using the reference firmware; and sending a power-on / off control request corresponding to the memory to the power-on / off controller, wherein the power-on / off controller is used to control the memory to restart in response to the power-on / off control request.
[0005] In an exemplary embodiment, the updating the first firmware stored in the memory using the reference firmware includes:
[0006] writing the reference firmware into the storage location of the first firmware in the memory; or,
[0007] Extract variable data and variable positions of the reference firmware relative to the first firmware; write the variable data into the variable position in the storage position of the first firmware on the memory.
[0008] In an exemplary embodiment, multiple firmware slots are deployed on the memory, a target slot among the multiple firmware slots is used to store the firmware used by the memory by default, and other slots among the multiple firmware slots except the target slot are used to store other firmware except the firmware used by the memory by default, the operating state of the target slot is read-only state, and the operating state of the other slots is read-write state.
[0009] In an exemplary embodiment, writing the reference firmware on the storage location of the first firmware on the memory includes: extracting the reference slot where the reference firmware is located from the other slots; switching the operating state of the target slot from a read-only state to a read-write state; reading the reference firmware from the reference slot; overwriting the reference firmware on the target slot; and switching the operating state of the target slot from a read-write state to a read-only state.
[0010] In an exemplary embodiment, the storage device deployed on the server includes multiple memories, and the power-on and power-off controller includes multiple power-on and power-off components connected in sequence, and the multiple power-on and power-off components connected in sequence are respectively connected to the multiple memories one-to-one, and the first power-on and power-off component among the multiple power-on and power-off components connected in sequence is connected to the device controller; the sending of the power-on and power-off control request corresponding to the memory to the power-on and power-off controller includes: sending the power-on and power-off control request corresponding to the memory among the multiple memories in which firmware update has occurred to the first power-on and power-off component, wherein the power-on and power-off control request is used to request the power-on and power-off components corresponding to the memory among the multiple memories in which firmware update has occurred to control the memory in which firmware update has occurred to be powered off and to power on the memory in which firmware update has occurred after a target time.
[0011] In an exemplary embodiment, the device controller includes a baseboard management controller and a backplane controller, the baseboard management controller is deployed on the mainboard of the server, the backplane controller, the multiple up and down power components and the multiple memories are deployed on the storage backplane of the server, the baseboard management controller is connected to the backplane controller, and the first up and down power component is connected to the backplane controller; the sending of the up and down power control request corresponding to the memory in which firmware update has occurred in the multiple memories to the first up and down power component includes: the baseboard management controller sends the up and down power control request corresponding to the memory in which firmware update has occurred to the first up and down power component through the backplane controller; after the baseboard management controller sends the up and down power control request corresponding to the memory in which firmware update has occurred to the first up and down power component through the backplane controller, the method also includes: The target upper and lower power components among the multiple upper and lower power components connected in sequence that receive the upper and lower power control request detects whether the memory controlled by the upper and lower power control request includes the memory connected to the target upper and lower power components, and detects whether the next upper and lower power components are connected after the target upper and lower power components; when the target upper and lower power components detect that the memory controlled by the upper and lower power control request includes the memory connected to the target upper and lower power components, the target upper and lower power components control the memory connected to the target upper and lower power components to power off and record the power-off duration of the memory connected to the target upper and lower power components, and when the recorded power-off duration is equal to the target duration, the memory connected to the target upper and lower power components is controlled to power on; when the target upper and lower power components detect that the next upper and lower power components are connected after the target upper and lower power components, the target upper and lower power components send the upper and lower power control request to the next upper and lower power components.
[0012] In an exemplary embodiment, finding out the corresponding second matching degree from the second firmware and the third firmware is used to indicate a reference firmware that the corresponding firmware matches the memory, including: detecting the second matching degree corresponding to the second firmware; determining that the second firmware is the reference firmware when the second matching degree corresponding to the second firmware is used to indicate that the second firmware matches the memory; detecting the second matching degree corresponding to the third firmware when the second matching degree corresponding to the second firmware is used to indicate that the second firmware does not match the memory; and determining that the third firmware is the reference firmware when the second matching degree corresponding to the third firmware is used to indicate that the third firmware matches the memory.
[0013] In an exemplary embodiment, the detecting a first degree of match between the memory information of the memory and the first firmware information of the first firmware includes: detecting the correctness of the first firmware, wherein the correctness is used to indicate whether the first firmware is complete; in the case where it is detected that the correctness is used to indicate that the first firmware is incomplete, determining that the first degree of match is used to indicate that the first firmware does not match the memory; in the case where it is detected that the correctness is used to indicate that the first firmware is complete, comparing the similarity between the first version information and the second version information, wherein the memory information includes the first version information, the first firmware information includes the second version information, the first version information is used to indicate the version of the firmware that the memory can support, and the second version information is used to indicate the version of the firmware of the first firmware; in the case where the similarity is less than a similarity threshold, determining that the first degree of match is used to indicate that the first firmware does not match the memory; in the case where the similarity between the first version information of the memory and the second version information of the first firmware is greater than or equal to the similarity threshold, determining that the first degree of match is used to indicate that the first firmware matches the memory.
[0014] According to another embodiment of the present application, a control device for a storage device on a server is provided, the server comprising a device controller and a power-on and power-off controller, the device controller and the power-on and power-off controller being connected to respective memories in the storage device deployed on the server, the memory storing a current version of a first firmware, the server storing a current version of a second firmware and / or a historical version of a third firmware, the memory being configured so that the stored firmware takes effect after the memory is restarted, the device being applied to the device controller, the device comprising: a first detection module for detecting a first degree of match between memory information of the memory and first firmware information of the first firmware, wherein the first degree of match is used to indicate the whether the first firmware matches the memory; a search module, used to, when the first matching degree is used to indicate that the first firmware does not match the memory, find out from the second firmware and / or the third firmware a reference firmware with a corresponding second matching degree indicating that the corresponding firmware matches the memory, wherein the second matching degree is the matching degree between the memory information and the firmware information of the corresponding firmware; an update module, used to update the first firmware stored on the memory with the reference firmware; a first sending module, used to send an up and down power control request corresponding to the memory to the up and down power controller, wherein the up and down power controller is used to control the memory to restart in response to the up and down power control request.
[0015] According to another embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when run.
[0016] According to another embodiment of the present application, an electronic device is provided, including a storage device and a processor, wherein the storage device stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0017] Through the present application, since a device controller and an on / off controller connected to each memory in the storage device deployed on the server are set, the device controller will detect the first matching degree between the memory information of the memory and the first firmware information of the first firmware. When the first matching degree indicates that the first firmware does not match the memory, a reference firmware matching the memory is screened out from the second firmware and / or the third firmware to avoid using an inappropriate firmware that affects the normal use of the memory, and when the mismatch between the first firmware and the memory is found, a suitable firmware can be screened to update the first firmware stored in the memory, further ensuring that the memory can provide normal functional services in a timely manner without being affected by firmware failures, and the on / off controller can be used to directly control the restart of the memory with the replaced firmware, ensuring that the replaced firmware can take effect in a timely manner, further improving the maintenance efficiency of the firmware. Therefore, the problem of low maintenance efficiency of the firmware of the storage device on the server can be solved, and the effect of improving the maintenance efficiency of the firmware of the storage device on the server can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 It is a hardware structure block diagram of a server device of a method for controlling a storage device on a server according to an embodiment of the present application;
[0019] Figure 2 is a flowchart of a method for controlling a storage device on a server according to an embodiment of the present application;
[0020] Figure 3 is a schematic diagram of a storage device on a control server according to an embodiment of the present application;
[0021] Figure 4 The structure of the control method of the storage device on the server according to the embodiment of the present application is Figure 1 ;
[0022] Figure 5 The structure of the control method of the storage device on the server according to the embodiment of the present application is Figure 2 ;
[0023] Figure 6It is a system interface block diagram of a hard disk backplane management system based on BMC Web according to an embodiment of the present application;
[0024] Figure 7 It is a structural block diagram of a control device for a storage device on a server according to an embodiment of the present application. DETAILED DESCRIPTION
[0025] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0027] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking running on a server device as an example, Figure 1 1 is a hardware structure block diagram of a server device of a method for controlling a storage device on a server according to an embodiment of the present application. Figure 1 As shown, the server device may include one or more ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a storage device 104 for storing data, wherein the above-mentioned server device may also include a transmission device 106 and an input and output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the above server device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.
[0028] The storage device 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the control method of the storage device on the server in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the storage device 104, that is, to implement the above method. The storage device 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the storage device 104 may further include a storage device remotely arranged relative to the processor 102, and these remote memories may be connected to the server device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0029] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the server device. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0030] In this embodiment, a control method for a storage device on a server is provided. The server includes a device controller and a power-on and power-off controller. The device controller and the power-on and power-off controller are connected to each memory in the storage device deployed on the server. The memory stores a current version of a first firmware. The server stores a current version of a second firmware and / or a historical version of a third firmware. The memory is set to enable the stored firmware to take effect after the memory is restarted. The method is applied to the device controller. Figure 2 is a flowchart of a method for controlling a storage device on a server according to an embodiment of the present application. Figure 2 As shown, the process includes the following steps:
[0031] Step S202, detecting a first matching degree between memory information of the memory and first firmware information of the first firmware, wherein the first matching degree is used to indicate whether the first firmware matches the memory;
[0032] Step S204, when the first matching degree is used to indicate that the first firmware does not match the memory, searching from the second firmware and / or the third firmware for a reference firmware having a corresponding second matching degree for indicating that the corresponding firmware matches the memory, wherein the second matching degree is a matching degree between the memory information and the firmware information of the corresponding firmware;
[0033] Step S206, using the reference firmware to update the first firmware stored in the memory;
[0034] Step S208 , sending a power-on / off control request corresponding to the memory to the power-on / off controller, wherein the power-on / off controller is used to control the memory to restart in response to the power-on / off control request.
[0035] Through the above steps, since a device controller and an on / off controller connected to each memory in the storage device deployed on the server are set, the device controller will detect the first matching degree between the memory information of the memory and the first firmware information of the first firmware. When the first matching degree indicates that the first firmware does not match the memory, a reference firmware matching the memory is screened out from the second firmware and / or the third firmware to avoid using an inappropriate firmware that affects the normal use of the memory, and when the mismatch between the first firmware and the memory is found, a suitable firmware can be screened to update the first firmware stored in the memory, further ensuring that the memory can provide normal functional services in a timely manner without being affected by firmware failures, and the memory with the replaced firmware can be directly controlled to restart through the on / off controller to ensure that the replaced firmware can take effect in a timely manner, further improving the maintenance efficiency of the firmware. Therefore, the problem of low maintenance efficiency of the firmware of the storage device on the server can be solved, and the effect of improving the maintenance efficiency of the firmware of the storage device on the server can be achieved.
[0036] Optionally, in an embodiment of the present application, the device controller may be, but is not limited to, a device or a combination of devices that can control storage devices and power-on and power-off controllers on a server, such as a BMC (Baseboard Management Controller) or a CPLD (Complex Programmable Logic Device).
[0037] Optionally, in an embodiment of the present application, the power on and off controller may be, but is not limited to, a device or a combination of devices that can receive instructions to provide power to a storage device or control power support for a storage device.
[0038] Optionally, in the embodiment of the present application, the firmware stored on the server may be, but is not limited to, determined according to the operating requirements of the storage device deployed on the server. When the operating requirements of the storage device indicate that the firmware version requirements are high, only the current version of the second firmware is stored in the server, and the historical version of the third firmware is no longer stored; when the operating requirements indicate that the firmware version requirements are not very high, the server stores both the current version of the second firmware and the historical version of the third firmware. When faced with the situation that the stability of the current version of the firmware is poor, storing the current version of the second firmware is not very helpful for restoring the firmware to normal use. In this case, it can be selected to store only the historical version of the third firmware in the server to avoid the waste of time caused by multiple attempts to restore the normal use of the storage device.
[0039] Optionally, in the embodiment of the present application, the second firmware and / or the third firmware may be stored in, but not limited to, a memory, or in other storage areas of the server.
[0040] Optional, Figure 3 is a schematic diagram of a storage device on a control server according to an embodiment of the present application, such as Figure 3 As shown, the device controller is connected to the power-on and power-off controller and the memory in the storage device, and the power-on and power-off controller is also connected to the memory in the storage device. The device controller can collect the storage information of the memory and the first firmware information of the first firmware through the connection with the memory, and update the first firmware stored in the memory when necessary. The device controller can also send the power-on and power-off control request corresponding to the memory to the power-on and power-off controller when the corresponding memory needs to be restarted through the connection with the power-on and power-off controller. After receiving the power-on and power-off control request, the power-on and power-off controller can control the corresponding memory to restart through the connection with the memory, and automatically complete the entire firmware maintenance and update process.
[0041] In the embodiment provided in step S202, the memory information may be, but is not limited to, information indicating the current hardware version of the memory, or information indicating the firmware version that the memory can support.
[0042] Optionally, in an embodiment of the present application, the first firmware information may include, but is not limited to, firmware version information of the first firmware, integrity information of the first firmware, modification information of the first firmware, and the like.
[0043] Optionally, in an embodiment of the present application, detecting a first degree of match between memory information of the memory and first firmware information of the first firmware includes but is not limited to detecting a size relationship between the first degree of match and a first target degree of match threshold; when the first degree of match is less than the first target degree of match threshold, determining that the first degree of match is used to indicate that the first firmware does not match the memory; when the first degree of match is greater than or equal to the first target degree of match threshold, determining that the first degree of match is used to indicate that the first firmware matches the memory.
[0044] Optionally, in an embodiment of the present application, detecting the first degree of match between the memory information of the memory and the first firmware information of the first firmware includes but is not limited to detecting whether the firmware version supported by the memory recorded in the memory information includes the firmware version of the first firmware recorded in the first firmware information; when the supported firmware version includes the firmware version of the first firmware, determining the first degree of match at this time is used to indicate that the first firmware matches the memory; when the supported firmware version does not include the firmware version of the first firmware, determining the first degree of match at this time is used to indicate that the first firmware does not match the memory.
[0045] In the embodiment provided in step S204, finding out the corresponding second matching degree from the second firmware and / or the third firmware to indicate the reference firmware that the corresponding firmware matches the memory includes but is not limited to finding out the corresponding second matching degree from the second firmware to indicate the reference firmware that the corresponding firmware matches the memory when the second firmware is stored on the server, or finding out the corresponding second matching degree from the third firmware to indicate the reference firmware that the corresponding firmware matches the memory when the third firmware is stored on the server, or finding out the corresponding second matching degree from the second firmware and the third firmware to indicate the reference firmware that the corresponding firmware matches the memory when the second firmware and the third firmware are stored on the server.
[0046] Optionally, in an embodiment of the present application, the reference firmware whose corresponding second matching degree is used to indicate that the corresponding firmware matches the memory is found from the second firmware and the third firmware, including but not limited to the reference firmware whose second matching degree between the firmware information of the corresponding firmware and the memory information is higher than the second target matching degree threshold value, which is screened out from the second firmware and the third firmware.
[0047] Optionally, in an embodiment of the present application, the size relationship between the first target matching threshold and the second target matching threshold can be flexibly selected according to needs. For example, the second target matching threshold can be selected to be equal to the first target matching threshold, or in order to enhance the efficiency of firmware maintenance and replacement and determine the available firmware as soon as possible, the second target matching threshold can be selected to be slightly smaller than the first target matching threshold.
[0048] Optionally, in an embodiment of the present application, finding out from the second firmware and the third firmware a reference firmware whose corresponding second matching degree is used to indicate that the corresponding firmware matches the memory includes but is not limited to extracting firmware version information from the memory information, extracting second firmware version information from the firmware information of the second firmware, and extracting third firmware version information from the firmware information of the third firmware, wherein the firmware version information is used to indicate the firmware version of the firmware supported by the memory, the second firmware version information is used to indicate the firmware version of the second firmware, and the third firmware version information is used to indicate the firmware version of the third firmware; judging whether the second firmware and the third firmware are supported by the memory according to the firmware version information, the second firmware version information and the third firmware version information support; in the case where it is detected that the second firmware is supported by the memory and the third firmware is not supported by the memory or the third firmware is supported by the memory and the second firmware is not supported by the memory, determine the firmware supported by the memory in the second firmware and the third firmware as the reference firmware; in the case where it is detected that both the second firmware and the third firmware are not supported by the memory, generate an alarm message and send the alarm message to the server host of the server, wherein the alarm message is used to indicate that the reference firmware cannot be determined; in the case where it is detected that both the second firmware and the third firmware are supported by the memory, detect the storage location of the second firmware and the third firmware; determine the firmware stored in the memory in the second firmware and the third firmware as the reference firmware. In the above manner, from the two perspectives of firmware version and firmware storage location, when the first firmware in the memory cannot be used, a firmware that is more suitable for the memory situation is selected for replacement, thereby improving the maintenance efficiency of the firmware of the storage device on the server.
[0049] Optionally, in an embodiment of the present application, when the first matching degree is used to indicate that the first firmware does not match the memory, and the second matching degree of the second firmware and the memory and the second matching degree of the third firmware and the memory both indicate that the corresponding firmware and the memory match, in order to reduce the impact of firmware changes on the use of the memory, the second firmware whose firmware version is the same as the firmware version of the first firmware is selected as the reference firmware.
[0050] In the embodiment provided in step S206, it includes but is not limited to selecting a method for updating the first firmware stored in the memory according to the reference firmware. For example, in the case where the reference firmware is the second firmware, the integrity of the first firmware may be destroyed, resulting in the first firmware being unable to be used normally. In this case, the difference between the first firmware and the second firmware stored in the memory is small, and it can be selected to compare the difference points between the first firmware and the second firmware stored in the memory and then modify the difference points in a targeted manner for updating; in the case where the reference firmware is the third firmware, the update of the firmware version may bring about a large firmware difference. Therefore, in this case, it can be selected to completely rewrite the first firmware stored in the memory, and directly write the third firmware to the storage location in the memory used to store the first firmware, overwriting the first firmware.
[0051] In the embodiment provided in step S208, sending the power-on and power-off control request corresponding to the memory to the power-on and power-off controller includes but is not limited to sending the power-off control request corresponding to the memory to the power-on and power-off controller, and timing starts from the moment the power-off control request is issued, and sending the power-on control request corresponding to the memory to the power-on and power-off controller after the target time period of issuing the power-off control request, and the power-on and power-off control request includes a power-off control request and a power-on control request.
[0052] As an optional implementation, using a reference firmware to update a first firmware stored on a memory includes: writing the reference firmware on a storage location of the first firmware on the memory; or, extracting variable data and variable positions of the reference firmware relative to the first firmware; and writing the variable data to the variable position in the storage location of the first firmware on the memory.
[0053] Through the above steps, the method of updating the first firmware can be flexibly selected according to different situations of the firmware before and after the update, which can improve the update efficiency of the firmware of the memory in the server.
[0054] As an optional implementation, multiple firmware slots are deployed on the memory, a target slot among the multiple firmware slots is used to store the firmware used by the memory by default, and other slots among the multiple firmware slots except the target slot are used to store other firmware except the firmware used by the memory by default, the operation status of the target slot is read-only, and the operation status of the other slots is read-write.
[0055] As an optional implementation, writing a reference firmware at the storage location of the first firmware on the memory includes: extracting a reference slot where the reference firmware is located from other slots; switching the operating state of the target slot from a read-only state to a read-write state; reading the reference firmware from the reference slot; overwriting the reference firmware into the target slot; switching the operating state of the target slot from a read-write state to a read-only state.
[0056] Optionally, in the embodiment of the present application, the firmware slot may be, but is not limited to, a storage area in a memory divided from a memory for storing firmware.
[0057] Optionally, in an embodiment of the present application, the operating state of the target slot used to store the firmware used by the memory by default is set to a read-only state to avoid abnormal tampering of the default firmware used by the memory during the use of the memory, thereby ensuring that the normal function of the memory is not destroyed.
[0058] Optionally, in an embodiment of the present application, the memory may be a hard disk, and multiple firmware slots of the hard disk store multiple firmware versions. For example, a certain hardware slot supports 1 to 7, and the hard disk includes 7 firmware slots. Each slot can be configured as read-only or read-write. During the initialization of the hard disk at startup, if the firmware verification of the default slot (usually slot 1) (i.e., the target slot) fails, the default slot of the hard disk is configured to be readable and writable through the I2C command, and the firmware information of the backup slot (usually slot 2) (i.e., the reference slot) is read back to slot 1, and then slot 1 is configured to be read-only, and the hard disk is powered on and off again through the LDO module (i.e., the power on and off controller) to achieve recovery and maintenance of the hard disk firmware. In addition, other slots can store downgraded versions of hard disk firmware information. If there is a problem with the current version of the firmware, the downgraded version of the firmware can be read back and written to slot 1.
[0059] As an optional implementation, the storage device deployed on the server includes multiple memories, and the power-on and power-off controller includes multiple power-on and power-off components connected in sequence, the multiple power-on and power-off components connected in sequence are respectively connected to the multiple memories one-to-one, and the first power-on and power-off component among the multiple power-on and power-off components connected in sequence is connected to the device controller; sending a power-on and power-off control request corresponding to the memory to the power-on and power-off controller includes: sending a power-on and power-off control request corresponding to a memory in which firmware update has occurred among multiple memories to the first power-on and power-off component, wherein the power-on and power-off control request is used to request the power-on and power-off components corresponding to the memory in which firmware update has occurred among the multiple memories to control the power-off and power-on of the memory in which firmware update has occurred after a target time.
[0060] Optionally, in an embodiment of the present application, multiple upper and lower electrical components connected in sequence are respectively connected one-to-one with multiple memories, and the upper and lower electrical control request can be sent to the upper and lower electrical components corresponding to the memories by sending an upper and lower electrical control request to the first upper and lower electrical component and transmitting the requests of multiple upper and lower electrical components.
[0061] Through the above steps, when it is determined that a firmware update has occurred in a memory, an up and down power control request can be sent directly to the first connected up and down power component without the need for the baseboard management controller and the backplane controller to determine which specific up and down power component to send the request to. The control resources of the baseboard management controller and the backplane controller can be released as soon as possible to continue monitoring the firmware status of the next memory, thereby improving the control efficiency of the memory when there are multiple memories.
[0062] As an optional implementation, the device controller includes a baseboard management controller and a backplane controller, the baseboard management controller is deployed on a mainboard of a server, the backplane controller, multiple up and down electrical components and multiple memories are deployed on a storage backplane of the server, the baseboard management controller is connected to the backplane controller, and the first up and down electrical component is connected to the backplane controller; sending an up and down electrical control request corresponding to a memory in which firmware update has occurred among multiple memories to the first up and down electrical component, including: the baseboard management controller sends the up and down electrical control request corresponding to the memory in which firmware update has occurred to the first up and down electrical component through the backplane controller;
[0063] After the baseboard management controller sends the power-on and power-off control request corresponding to the memory in which the firmware update has occurred to the first up and down electrical component through the backplane controller, the method also includes: the target up and down electrical component that receives the power-on and power-off control request among the multiple up and down electrical components connected in sequence detects whether the memory controlled by the power-on and power-off control request includes the memory connected to the target up and down electrical component, and detects whether the next up and down electrical component is connected after the target up and down electrical component; when the target up and down electrical component detects that the memory controlled by the power-on and power-off control request includes the memory connected to the target up and down electrical component, the target up and down electrical component controls the memory connected to the target up and down electrical component to power off and records the power-off duration of the memory connected to the target up and down electrical component, and when the recorded power-off duration is equal to the target duration, controls the memory connected to the target up and down electrical component to power on; when the target up and down electrical component detects that the next up and down electrical component is connected after the target up and down electrical component, the target up and down electrical component sends the power-on and power-off control request to the next up and down electrical component.
[0064] Optionally, in the embodiments of the present application, Figure 4 The structure of the control method of the storage device on the server according to the embodiment of the present application is Figure 1 .like Figure 4As shown, the BMC (i.e., baseboard management controller) is deployed on the mainboard (MB) of the server, the backplane controller and multiple upper and lower electrical components and multiple memories are deployed on the storage backplane (BP) of the server, the BMC is connected to the backplane controller, the backplane controller is connected to the first upper and lower electrical component, the multiple upper and lower electrical components are connected in sequence, the multiple upper and lower electrical components connected in sequence are respectively connected one-to-one with the multiple memories, and the BMC is connected to the multiple memories through I2CSWITCH (I2C switch). After the BMC uses the reference firmware to update the first firmware stored in the memory, the BMC sends an up and down power control request corresponding to the memory to the first up and down power component through the backplane controller. When receiving the up and down power control request, the first up and down power component detects whether the memory controlled by the up and down power control request includes the memory connected to the first up and down power component, and detects whether the next up and down power component is connected after the first up and down power component. If it is detected that the memory connected to the first up and down power component is included, the connected memory is controlled to restart. If it is detected that the next up and down power component is connected, the up and down power control request is passed to the next up and down power component. Multiple up and down power components perform the above operations until an up and down power component detects that the next up and down power component is not connected after the up and down power component.
[0065] As an optional implementation, finding out the corresponding second matching degree from the second firmware and the third firmware is used to indicate a reference firmware that the corresponding firmware matches the memory, including: detecting the second matching degree corresponding to the second firmware; when the second matching degree corresponding to the second firmware is used to indicate that the second firmware matches the memory, determining that the second firmware is the reference firmware; when the second matching degree corresponding to the second firmware is used to indicate that the second firmware does not match the memory, detecting the second matching degree corresponding to the third firmware; when the second matching degree corresponding to the third firmware is used to indicate that the third firmware matches the memory, determining that the third firmware is the reference firmware.
[0066] Through the above steps, the second firmware with the same version as the first firmware is preferably used to update the first firmware, and the substantial impact of the firmware update operation on the memory is reduced as much as possible, so as to ensure the normal and efficient use of the memory function as much as possible.
[0067] As an optional implementation, detecting a first degree of match between memory information of a memory and first firmware information of a first firmware includes: detecting the correctness of the first firmware, wherein the correctness is used to indicate whether the first firmware is complete; in the case where it is detected that the correctness is used to indicate that the first firmware is incomplete, determining the first degree of match is used to indicate that the first firmware does not match the memory; in the case where it is detected that the correctness is used to indicate that the first firmware is complete, comparing the similarity between the first version information and the second version information, wherein the memory information includes the first version information, the first firmware information includes the second version information, the first version information is used to indicate the version of the firmware that the memory can support, and the second version information is used to indicate the version of the firmware of the first firmware; in the case where the similarity compared is less than a similarity threshold, determining the first degree of match is used to indicate that the first firmware does not match the memory; in the case where the similarity compared between the first version information of the memory and the second version information of the first firmware is greater than or equal to the similarity threshold, determining the first degree of match is used to indicate that the first firmware matches the memory.
[0068] Through the above steps, by detecting the version information of the firmware and the integrity of the firmware, it is ensured that the firmware used by the memory can ensure the normal operation of the memory, thereby improving the monitoring efficiency of the storage device on the server.
[0069] As an optional implementation, Figure 5 The structure of the control method of the storage device on the server according to the embodiment of the present application is Figure 2 ,like Figure 5As shown, the present application also provides a BMC Web-based hard disk backplane management system that combines the firmware update function of the memory in the server. In this system, there are 3 I2C HEADERs on the mainboard, which are located at the front window, the middle (near the CPU), and the rear window, and the hard disk connector is used to connect the hard disk. The front window backplane connects the I2CHEADER at the front window position, corresponding to channel 0 of I2C SWITCH. When the path through which the hard disk (memory) information obtained by the BMC passes is channel 0 of I2CSWITCH, it can be determined that the hard disk is the front window hard disk, and the backplane where the hard disk is located is the front window backplane. The mainboard supplies power to the backplane hard disk through the power connector, and adds upper and lower power components (which can be LDO (low dropout regulator) modules) before each hard disk. Its input is P12V / P3V3, and its output is P12V / P3V3. The on and off of the line is controlled by the EN pin of the upper and lower power components (the pin is connected to the CPLD (i.e., the backplane controller), and the BMC can control the EN signal to be high: control the hard disk to power on, and low: control the hard disk to power off) by communicating with the CPLD. The upper and lower electrical components will also output signals to the next upper and lower electrical components, which can save the number of CPLD pins when the CPLD pins are tight. Indicator lights are also arranged on the backplane. The CPLD collects information about the hard disk to control the corresponding lights to display the corresponding lighting mode. For example, when the hard disk is in place, the green light is always on; when the hard disk is reading or writing, the green light flashes at 4Hz; when the hard disk fails, the red light is always on; the hard disk positioning light, the blue light is always on. When the BMC communicates with the hard disk and detects that the hard disk temperature is too high when reading the register information, a pre-alarm is issued, and the red and blue lights flash alternately at a rate of 1Hz.
[0070] Figure 6 1 is a system interface block diagram of a hard disk backplane management system based on BMC Web according to an embodiment of the present application. Figure 5 and Figure 6As shown, the contents displayed on the interface include: (1) hard disk position, the display format is: front / middle / rear BPx_NVME_y, x indicates the front / middle / rear xth backplane, y indicates the yth hard disk on the backplane; (2) in-place status, used to indicate whether the current hard disk is in place; (3) power status, used to indicate whether the current hard disk is powered on normally, and the hard disk can also be powered on / off by clicking the power indicator position of the corresponding hard disk on this interface; (4) capacity, model, SN, maximum speed, based on the basic information of the hard disk obtained by the communication between BMC and the hard disk; (5) temperature, based on the Temp.Threshold parameter in the critical_warning register of the hard disk captured by BMC, obtain information and display the hard disk temperature in real time. When the hard disk temperature is too high, the front / middle / rear backplane cooling strategy is automatically matched, and the fan speed can also be manually adjusted on this interface. The operation of manually adjusting the fan speed is to first click the manual adjustment fan speed option of the fan speed module, and then select the corresponding fan to adjust its speed to 25%, 50%, 75%, 100%. If the temperature is higher than 85°C, the BMC will obtain control of the backplane light and turn on the temperature warning light; (6) Disk life, based on the register percentage_used parameter captured by the BMC, is used to indicate the disk life. If it exceeds 85%, the indicator light will be on to prompt the administrator to replace the hard disk; (7) LED lighting information module, this module can be used to display the status of the corresponding hard disk light in real time, to intuitively display the status of the hard disk. Double-clicking the corresponding option at the same time can trigger the corresponding lighting command. For example, double-clicking the light position of hard disk number 1 will turn on the hard disk light to indicate the hard disk position. For SAS / SATA hard disks, the lighting method is SGPIO / I2C; for NVME hard disks, the lighting method is VPP / I2C. After the BMC obtains the backplane CPLD lighting control, the backplane CPLD will synchronously shield the corresponding hard disk's other lighting methods; (8) Firmware upgrade module, click Firmware Upgrade → Hard Disk Number → Select Firmware Image → Upload in sequence. Start to automatically verify the firmware and upgrade the hard disk firmware for hard disk firmware maintenance and update; (9) Alarm information module, which determines whether the hard disk has error information based on the media_errors parameter captured by the BMC. If so, it captures the ECC, CRC and other error information logs to support the administrator in handling the corresponding hard disk failures.
[0071] As an optional implementation, the hard disk backplane management system described above may be used to manage the hard disk based on the following steps:
[0072] Step S1, complete the installation of the CPU, motherboard, radiator, management board, backplane, hard disk and related cables to complete the construction of the whole machine.
[0073] Step S2, power on the computer and log in to the BMC WEB interface through the IP information.
[0074] Step S3, displaying the basic information of all hard disks in the whole machine configuration (hard disk location, in-position status, power status, capacity, model, SN, maximum speed, temperature, disk life) and hard disk light information on the BMC WEB interface. The basic information of the hard disk is realized by BMC continuously polling to communicate with each hard disk and refresh the basic information of the hard disk. The light information is realized by BMC continuously polling to communicate with each backplane CPLD and refresh the hard disk light information.
[0075] Step S4, when the hard disk temperature exceeds 85°C, the BMC will light up the hard disk warning light and display the corresponding hard disk LED light position on the WEB interface, and automatically adapt its front window / center / rear window cooling strategy. The front window backplane is usually cooled by air, and the rear window backplane is usually cooled by water. When the hard disk temperature at the corresponding position is detected to be too high, the corresponding cooling strategy is adopted, such as increasing the fan speed. The corresponding relationship between the fan speed and temperature that needs to be adjusted can be adapted through software.
[0076] Step S5, during the data interaction process of the hard disk, there is a data verification process. A set of data corresponds to a verification code. When the verification fails, the corresponding register information count is increased by 1. The register is not infinitely accumulated, but will be cleared every period of time. The BMC can read the relevant hard disk register information through the I2C bus. When the BMC detects that the corresponding register information exceeds the limit value, it is considered that a serious error has occurred in the hard disk. When a serious error occurs in the hard disk, the BMC will light up the Error light of the hard disk and display it in the corresponding hard disk LED light position on the WEB interface, and capture the relevant log and display it in the alarm information. At the same time, the BMC will notify the BIOS through the ESPI bus to stop data interaction with the hard disk and cut off the power supply of the hard disk. The administrator reads the corresponding log information to analyze the hard disk failure and solve the bug.
[0077] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of each embodiment of the present application.
[0078] In this embodiment, a control device for a storage device on a server is also provided. The server includes a device controller and a power on and off controller. The device controller and the power on and off controller are connected to various memories in the storage device deployed on the server. The current version of the first firmware is stored in the memory. The current version of the second firmware and / or the historical version of the third firmware are stored on the server. The memory is set so that the stored firmware takes effect after the memory is restarted. The device is applied to the device controller. The device is used to implement the above-mentioned embodiments and preferred implementation methods. Those that have been explained will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware with predetermined functions. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and conceivable.
[0079] Figure 7 is a structural block diagram of a control device for a storage device on a server according to an embodiment of the present application, such as Figure 7 As shown, the device comprises:
[0080] A first detection module 702, configured to detect a first matching degree between memory information of the memory and first firmware information of the first firmware, wherein the first matching degree is used to indicate whether the first firmware matches the memory;
[0081] A search module 704 is used to search for a reference firmware with a corresponding second matching degree indicating that the corresponding firmware matches the memory from the second firmware and / or the third firmware when the first matching degree indicates that the first firmware does not match the memory, wherein the second matching degree is a matching degree between the memory information and the firmware information of the corresponding firmware; an update module 706 is used to update the first firmware stored in the memory using the reference firmware;
[0082] The first sending module 708 is used to send a power-on / off control request corresponding to the memory to the power-on / off controller, wherein the power-on / off controller is used to control the memory to restart in response to the power-on / off control request.
[0083] Through the above steps, since a device controller and an on / off controller connected to each memory in the storage device deployed on the server are set, the device controller will detect the first matching degree between the memory information of the memory and the first firmware information of the first firmware. When the first matching degree indicates that the first firmware does not match the memory, a reference firmware matching the memory is screened out from the second firmware and / or the third firmware to avoid using an inappropriate firmware that affects the normal use of the memory, and when the mismatch between the first firmware and the memory is found, a suitable firmware can be screened to update the first firmware stored in the memory, further ensuring that the memory can provide normal functional services in a timely manner without being affected by firmware failures, and the on / off controller can be used to directly control the restart of the memory with the replaced firmware, ensuring that the replaced firmware can take effect in a timely manner, further improving the maintenance efficiency of the firmware. Therefore, the problem of low maintenance efficiency of the firmware of the storage device on the server can be solved, and the effect of improving the maintenance efficiency of the firmware of the storage device on the server can be achieved.
[0084] As an optional embodiment, the update module includes: a first writing unit, used to write a reference firmware at a storage location of the first firmware on the memory; an extraction unit, used to extract variable data and variable positions of the reference firmware relative to the first firmware; and a second writing unit, used to write the variable data to the variable position in the storage location of the first firmware on the memory.
[0085] Optionally, multiple firmware slots are deployed on the memory, a target slot among the multiple firmware slots is used to store the firmware used by the memory by default, and other slots among the multiple firmware slots except the target slot are used to store other firmware except the firmware used by the memory by default, the operation status of the target slot is read-only, and the operation status of other slots is read-write; the first writing unit is also used to: extract the reference slot where the reference firmware is located from other slots; switch the operation status of the target slot from a read-only state to a read-write state; read the reference firmware from the reference slot; overwrite the reference firmware into the target slot; and switch the operation status of the target slot from a read-write state to a read-only state.
[0086] As an optional implementation, the storage device deployed on the server includes multiple memories, the power-on and power-off controller includes multiple power-on and power-off components connected in sequence, the multiple power-on and power-off components connected in sequence are respectively connected to the multiple memories one-to-one, and the first power-on and power-off component among the multiple power-on and power-off components connected in sequence is connected to the device controller; a first sending module includes: a sending unit, used to send an power-on and power-off control request corresponding to a memory in which firmware update has occurred among multiple memories to the first power-on and power-off component, wherein the power-on and power-off control request is used to request the power-on and power-off components corresponding to the memory in which firmware update has occurred among the multiple memories to control the power-off of the memory in which firmware update has occurred and to power on the memory in which firmware update has occurred after a target time.
[0087] Optionally, the device controller includes a baseboard management controller and a backplane controller, the baseboard management controller is deployed on the mainboard of the server, the backplane controller, multiple upper and lower electrical components and multiple memories are deployed on the storage backplane of the server, the baseboard management controller is connected to the backplane controller, and the first upper and lower electrical component is connected to the backplane controller; the sending unit is further used to: send an upper and lower electrical control request corresponding to the memory in which the firmware update has occurred to the first upper and lower electrical component through the backplane controller based on the baseboard management controller;
[0088] As an optional embodiment, the device also includes: a second detection module, which is used to detect whether the memory controlled by the up and down power control request includes the memory connected to the target up and down power component, and detect whether the next up and down power component is connected after the target up and down power component, based on the target up and down power component receiving the up and down power control request from multiple sequentially connected up and down power components; a control module, which is used to control the memory connected to the target up and down power component to power off and record the power-off duration of the memory connected to the target up and down power component when the target up and down power component detects that the memory controlled by the up and down power control request includes the memory connected to the target up and down power component, and when the recorded power-off duration is equal to the target duration, control the memory connected to the target up and down power component to power on; a second sending module, which is used to send the up and down power control request to the next up and down power component when the target up and down power component detects that the next up and down power component is connected after the target up and down power component.
[0089] As an optional implementation, the search module includes: a first detection unit, used to detect the second matching degree corresponding to the second firmware; a first determination unit, used to determine that the second firmware is a reference firmware when the second matching degree corresponding to the second firmware is used to indicate that the second firmware matches the memory; a second detection unit, used to detect the second matching degree corresponding to the third firmware when the second matching degree corresponding to the second firmware is used to indicate that the second firmware does not match the memory; and a second determination unit, used to determine that the third firmware is a reference firmware when the second matching degree corresponding to the third firmware is used to indicate that the third firmware matches the memory.
[0090] As an optional implementation, the first detection module includes: a third detection unit, which is used to detect the correctness of the first firmware, wherein the correctness is used to indicate whether the first firmware is complete; a third determination unit, which is used to determine a first matching degree to indicate that the first firmware does not match the memory when it is detected that the correctness indicates that the first firmware is incomplete; a comparison unit, which is used to compare the similarity between the first version information and the second version information when it is detected that the correctness indicates that the first firmware is complete, wherein the memory information includes the first version information, the first firmware information includes the second version information, the first version information is used to indicate the version of the firmware that the memory can support, and the second version information is used to indicate the version of the firmware of the first firmware; a fourth determination unit, which is used to determine that the first matching degree is used to indicate that the first firmware does not match the memory when the similarity is less than a similarity threshold; and a fifth determination unit, which is used to determine that the first matching degree is used to indicate that the first firmware matches the memory when the similarity between the first version information of the memory and the second version information of the first firmware is greater than or equal to the similarity threshold.
[0091] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.
[0092] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.
[0093] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0094] An embodiment of the present application further provides an electronic device, comprising a storage device and a processor, wherein a computer program is stored in the storage device, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0095] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0096] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0097] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0098] An embodiment of the present application also provides a computer program, which includes computer instructions, which are stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the steps in any one of the above method embodiments.
[0099] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail herein.
[0100] Obviously, those skilled in the art should understand that the above modules or steps of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.
[0101] The above are only preferred embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present application shall be included in the protection scope of the present application.
Claims
1. A method for controlling a storage device on a server, characterized in that: The server includes a device controller and a power-on and power-off controller, wherein the device controller and the power-on and power-off controller are connected to each memory in a storage device deployed on the server, the memory stores a current version of a first firmware, the server stores a current version of a second firmware and / or a historical version of a third firmware, the memory is configured so that the stored firmware takes effect after the memory is restarted, and the method is applied to the device controller, and the method includes: detecting a first matching degree between memory information of the memory and first firmware information of the first firmware, wherein the first matching degree is used to indicate whether the first firmware matches the memory; In a case where the first matching degree is used to indicate that the first firmware does not match the memory, searching for a reference firmware having a corresponding second matching degree for indicating that the corresponding firmware matches the memory from the second firmware and / or the third firmware, wherein the second matching degree is a matching degree between the memory information and the firmware information of the corresponding firmware; updating the first firmware stored in the memory using the reference firmware; A power on and off control request corresponding to the memory is sent to the power on and off controller, wherein the power on and off controller is used to control the memory to restart in response to the power on and off control request.
2. The method according to claim 1, characterized in that The using the reference firmware to update the first firmware stored in the memory comprises: writing the reference firmware into the storage location of the first firmware in the memory; or, Extract variable data and variable positions of the reference firmware relative to the first firmware; write the variable data into the variable position in the storage position of the first firmware on the memory.
3. The method according to claim 2, characterized in that Multiple firmware slots are deployed on the memory, a target slot among the multiple firmware slots is used to store the firmware used by the memory by default, and other slots among the multiple firmware slots except the target slot are used to store other firmware except the firmware used by the memory by default, the operation state of the target slot is read-only state, and the operation state of the other slots is read-write state.
4. The method according to claim 3, characterized in that: Writing the reference firmware at the storage location of the first firmware on the memory includes: Extracting the reference slot where the reference firmware is located from the other slots; Switching the operation state of the target slot from a read-only state to a read-write state; Reading the reference firmware from the reference slot; Overwriting the reference firmware into the target slot; The operation state of the target slot is switched from a read-write state to a read-only state.
5. The method according to claim 1, characterized in that The storage device deployed on the server includes a plurality of memories, the upper and lower power controller includes a plurality of upper and lower power components connected in sequence, the plurality of upper and lower power components connected in sequence are respectively connected to the plurality of memories in a one-to-one correspondence, and the first upper and lower power component of the plurality of upper and lower power components connected in sequence is connected to the device controller; The sending the power-on and power-off control request corresponding to the memory to the power-on and power-off controller includes: The power-on and power-off control request corresponding to the memory in which the firmware update has occurred among the multiple memories is sent to the first power-on and power-off component, wherein the power-on and power-off control request is used to request the power-on and power-off component corresponding to the memory in which the firmware update has occurred among the multiple memories to control the power-off of the memory in which the firmware update has occurred and to power on the memory in which the firmware update has occurred after a target time.
6. The method according to claim 5, characterized in that The device controller comprises a baseboard management controller and a backplane controller, the baseboard management controller is deployed on the mainboard of the server, the backplane controller, the multiple upper and lower electrical components and the multiple memories are deployed on the storage backplane of the server, the baseboard management controller is connected to the backplane controller, and the first upper and lower electrical component is connected to the backplane controller; The sending the power-up and power-down control request corresponding to the memory in which the firmware update has occurred among the multiple memories to the first power-up and power-down component comprises: the baseboard management controller sending the power-up and power-down control request corresponding to the memory in which the firmware update has occurred to the first power-up and power-down component through the backplane controller; After the baseboard management controller sends the power-on and power-off control request corresponding to the memory in which the firmware update has occurred to the first power-on and power-off component through the backplane controller, the method further includes: The target upper and lower electrical components among the plurality of upper and lower electrical components connected in sequence that receive the upper and lower electrical control request detect whether the memory controlled by the upper and lower electrical control request includes the memory connected to the target upper and lower electrical components, and detect whether the next upper and lower electrical components are connected after the target upper and lower electrical components; When the target power-on and power-off component detects that the memory controlled by the power-on and power-off control request includes the memory connected to the target power-on and power-off component, the target power-on and power-off component controls the memory connected to the target power-on and power-off component to be powered off and records the power-off duration of the memory connected to the target power-on and power-off component, and when the recorded power-off duration is equal to the target duration, controls the memory connected to the target power-on and power-off component to be powered on; When the target upper and lower power component detects that a next upper and lower power component is connected after the target upper and lower power component, the target upper and lower power component sends the upper and lower power control request to the next upper and lower power component.
7. The method according to claim 1, characterized in that Finding a corresponding second matching degree from the second firmware and the third firmware to indicate a reference firmware that matches the corresponding firmware with the memory includes: detecting the second matching degree corresponding to the second firmware; When the second matching degree corresponding to the second firmware indicates that the second firmware matches the memory, determining that the second firmware is the reference firmware; In a case where the second matching degree corresponding to the second firmware indicates that the second firmware does not match the memory, detecting the second matching degree corresponding to the third firmware; In a case where the second matching degree corresponding to the third firmware is used to indicate that the third firmware matches the memory, the third firmware is determined to be the reference firmware.
8. The method according to claim 1, characterized in that The detecting a first matching degree between the memory information of the memory and the first firmware information of the first firmware includes: detecting the correctness of the first firmware, wherein the correctness is used to indicate whether the first firmware is complete; In the case where the correctness is detected to indicate that the first firmware is incomplete, determining the first degree of match to indicate that the first firmware does not match the memory; In a case where it is detected that the correctness is used to indicate that the first firmware is complete, comparing the similarity between the first version information and the second version information, wherein the memory information includes the first version information, the first firmware information includes the second version information, the first version information is used to indicate a version of the firmware that the memory can support, and the second version information is used to indicate a version of the firmware of the first firmware; In the case where the similarity is less than a similarity threshold, determining the first matching degree is used to indicate that the first firmware does not match the memory; In a case where the similarity between the first version information of the memory and the second version information of the first firmware is greater than or equal to the similarity threshold, determining the first matching degree is used to indicate that the first firmware matches the memory.
9. A control device for a storage device on a server, characterized in that: The server includes a device controller and an up / down power controller, the device controller and the up / down power controller are connected to each memory in the storage device deployed on the server, the memory stores a current version of a first firmware, the server stores a current version of a second firmware and / or a historical version of a third firmware, the memory is set to take effect after the memory is restarted, the device is applied to the device controller, the device includes: a first detection module, used to detect a first matching degree between memory information of the memory and first firmware information of the first firmware, wherein the first matching degree is used to indicate whether the first firmware matches the memory; a search module, used to find a reference firmware with a corresponding second matching degree from the second firmware and / or the third firmware to indicate that the corresponding firmware matches the memory when the first matching degree is used to indicate that the first firmware does not match the memory, wherein the second matching degree is a matching degree between the memory information and the firmware information of the corresponding firmware; An update module is used to use the reference firmware to update the first firmware stored on the memory; a first sending module is used to send an up and down power control request corresponding to the memory to the up and down power controller, wherein the up and down power controller is used to control the memory to restart in response to the up and down power control request.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program implements the steps of the method described in any one of claims 1 to 8 when executed by a processor.
11. An electronic device comprising a storage device, a processor, and a computer program stored in the storage device and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method described in any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Hard disk firmware upgrading and information collecting method and system and medium
CN112947957A
Hard disk maintenance method and device, equipment and storage medium
CN115098324A
Firmware upgrading method, device and equipment and readable storage medium
CN116301973A
Server starting method and device, storage medium and electronic equipment
CN118051277A