Method, device, system and baseboard management controller for managing disk array card
By building an event-driven management architecture between the BMC and the RAID card, and leveraging the hardware-level proactive alarm capabilities of the RAID card, the problems of high BMC resource utilization and alarm latency are solved, achieving lightweight and efficient management links.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- INSPUR (SHANDONG) COMPUTER TECH CO LTD
- Filing Date
- 2026-04-24
- Publication Date
- 2026-07-21
AI Technical Summary
In the existing technology, the way BMC manages RAID cards results in high resource utilization, serious alarm delays, and affects the host-side I/O processing capabilities.
After acquiring full information from the RAID card through active polling, the system switches to passive triggering mode to receive event information actively pushed by the RAID card. It leverages the hardware-level active alarm capability of the RAID card to build an event-driven management architecture, replacing the traditional BMC active polling mode.
Significantly reduces bus communication overhead, improves BMC resource utilization and alarm response speed, reduces resource consumption, enhances I/O processing capabilities, and shortens alarm response latency.
Smart Images

Figure CN122431982A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of server technology, and in particular to a method, apparatus, system, and baseboard management controller for managing disk array cards. Background Technology
[0002] The Baseboard Management Controller (BMC) is an intelligent, independent control unit separate from the server system. It is responsible for core functions such as hardware monitoring and management, health status management, power consumption management, and out-of-band RAID (Redundant Array of Independent Disks) management. Through the BMC's out-of-band management technology, developers and operations personnel can easily monitor and control the server without affecting normal system operations.
[0003] Current out-of-band RAID management solutions rely on the BMC (Block Controller) to periodically poll the RAID card, retrieving information such as hard drive details, RAID configuration, link details, and fault information. Since the RAID card requires a large amount of information, especially in storage devices with a large number of hard drives, obtaining a complete set of out-of-band RAID information can take half a minute or more. This consumes significant processor and memory resources on both the BMC and RAID card, reducing their event processing capabilities and response speed. Particularly for the RAID card, this impacts host-side I / O processing capabilities, contradicting the design principle that out-of-band management should not affect normal host operation. Furthermore, much of the information on the RAID card remains unchanged most of the time; repeatedly retrieving the same data results in unnecessary bus resource usage. Polling, which typically takes seconds, results in at least 5 seconds between the RAID card generating an alarm and the BMC receiving it, causing significant alarm latency. Therefore, reducing the resource consumption of the BMC for RAID card management and lowering alarm latency are urgent problems that need to be addressed. Summary of the Invention
[0004] The purpose of this invention is to provide a method, apparatus, system, and baseboard management controller for managing disk array cards, so as to reduce the resource occupancy rate of BMC RAID card management and reduce alarm latency.
[0005] To address the aforementioned technical problems, this invention provides a method for managing a disk array card, applied to a baseboard management controller, comprising: After powering on, the active polling mode is started to poll, obtain and store all information of the disk array card; Switch the active polling mode to the passive triggering mode to receive event information actively pushed by the disk array card; wherein, the event information includes alarm event information; If the event information is the alarm event information, then the alarm event information is parsed, and the corresponding alarm linkage operation is executed according to the parsed content of the alarm event information.
[0006] On the other hand, the disk array card is equipped with an alarm detection engine, which is used to generate the alarm event information based on the monitored core status information and preset alarm conditions; the core status information includes at least one of the following: hard disk health status information, array status information, hardware parameter status information, and communication link status information.
[0007] On the other hand, the event information also includes updated event information; after receiving the event information actively pushed by the disk array card, it also includes: If the event information is the update event information, then the corresponding information of the stored disk array card is updated according to the update event information.
[0008] On the other hand, the event information actively pushed by the disk array card includes: Using the slave device mode of the integrated circuit bus, event information is received from the disk array card that has enabled the master device mode of the integrated circuit bus through the event message frame pushed by the management component transmission protocol.
[0009] On the other hand, after receiving the event information actively pushed by the disk array card, the method further includes: Perform an integrity check on the event information and obtain the check result; If the verification result indicates that the data is complete, then the steps of parsing the alarm event information and performing corresponding alarm linkage operations based on the parsed content of the alarm event information are executed.
[0010] On the other hand, the alarm linkage operation includes at least one of the following: log recording operation, audible and visual alarm operation, and remote push alarm operation.
[0011] On the other hand, after switching the active polling mode to the passive triggering mode, it also includes: The passive triggering mode is switched to the active polling mode at preset time intervals to poll and obtain the target information of the disk array card. Based on the target information, update the corresponding information of the stored disk array card, switch the active polling mode to the passive triggering mode, and execute the step of receiving event information actively pushed by the disk array card.
[0012] The present invention also provides a management device for a disk array card, applied to a baseboard management controller, comprising: The polling module is used to initiate an active polling mode after power-on, polling to obtain and store all information of the disk array card; A passive module is used to switch the active polling mode to a passive triggering mode and receive event information actively pushed by the disk array card; wherein, the event information includes alarm event information; The alarm module is used to parse the alarm event information if the event information is the alarm event information, and to perform corresponding alarm linkage operations according to the parsed content of the alarm event information.
[0013] The present invention also provides a baseboard management controller, comprising: Memory, used to store computer programs; A processor, used to execute the computer program, implements the steps of the disk array card management method as described above.
[0014] In addition, the present invention also provides a management system for a disk array card, including: a disk array card and a baseboard management controller as described above.
[0015] The present invention provides a method for managing a disk array card, applied to a baseboard management controller, comprising: starting an active polling mode after power-on to poll, acquire and store full information of the disk array card; switching the active polling mode to a passive triggering mode to receive event information actively pushed by the disk array card; wherein the event information includes alarm event information; if the event information is alarm event information, parsing the alarm event information and performing corresponding alarm linkage operations according to the parsed content of the alarm event information.
[0016] As can be seen, this invention, by switching from an active polling mode to a passive triggering mode and receiving event information actively pushed by the disk array card, can leverage the hardware-level active alarm capability of the RAID card. It enables hardware and software co-adaptation between the BMC and the RAID card, constructing an event-driven management architecture where the RAID card actively reports to the BMC for passive reception. This replaces the traditional BMC active polling mode, achieving a lightweight and efficient management link, significantly reducing bus communication overhead, and improving the BMC's resource utilization and alarm response speed. Furthermore, this invention also provides a disk array card management device, a baseboard management controller, and a system, which also possess the aforementioned beneficial effects. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0018] Figure 1 A flowchart illustrating a disk array card management method provided in an embodiment of the present invention; Figure 2 This is a flowchart illustrating another disk array card management method provided in an embodiment of the present invention; Figure 3 This is a structural block diagram of a disk array card management device provided in an embodiment of the present invention; Figure 4 This is a schematic diagram of the structure of a baseboard management controller provided in an embodiment of the present invention. Detailed Implementation
[0019] 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.
[0020] Please refer to Figure 1 , Figure 1 This is a flowchart illustrating a disk array card management method provided in an embodiment of the present invention. The method is applied to a baseboard management controller and may include: Step 101: After powering on, start the active polling mode to poll, obtain and store all information of the disk array card.
[0021] It is understood that the RAID card in this embodiment can be an out-of-band RAID card managed by the Baseboard Management Controller (BMC). For example, the Baseboard Management Controller can communicate with the RAID card via an I2C (Inter-Integrated Circuit) bus or a PCIe (Peripheral Component Interconnect Express) bus. The active polling mode in this embodiment can be a mode where the Baseboard Management Controller (BMC) actively polls the RAID card to obtain data (or information). In this embodiment, the Baseboard Management Controller can initiate the active polling mode after power-on or during startup to actively obtain and store all information of the RAID card, such as... Figure 2 The process of BMC actively polling once.
[0022] Correspondingly, the full information of the disk array card in this step can be all the information that the baseboard management controller needs to obtain from the disk array card, such as the information required by the baseboard management controller to actively poll the disk array card for the first time after powering on in related technologies. The specific content of the full information of the disk array card in this step can be set by the designer according to the practical scenario and user needs. For example, it can use the same or similar content as the information required by the baseboard management controller to actively poll the disk array card in related technologies, such as hard drive information, RAID information, link information, and fault information. This embodiment does not impose any restrictions on this.
[0023] In this step, the specific method by which the baseboard management controller initiates active polling mode after power-on to poll, obtain, and store the full information of the disk array card can be set by the designer according to the practical scenario and user needs. For example, it can be implemented in the same or similar way as the method of active polling of the disk array card by the baseboard management controller in related technologies. This embodiment does not impose any restrictions on this.
[0024] Step 102: Switch from active polling mode to passive triggering mode to receive event information actively pushed by the disk array card; the event information includes alarm event information.
[0025] It should be noted that the passive triggering mode in this embodiment can be a mode where the baseboard management controller waits for the disk array card to actively send event information (such as alarm event information). In this embodiment, the baseboard management controller can actively poll the full information of the RAID card after power-on and then enter the passive triggering mode to wait for the RAID card to actively send event information (such as alarm event information). This embodiment fully utilizes the hardware-level active alarm capability of the RAID card to achieve hardware and software co-adaptation between the BMC and the RAID card, and builds an event-driven management architecture of "RAID active reporting - BMC passive reception" to replace the traditional BMC active polling mode. This achieves lightweight and efficient management link, significantly reduces bus load, avoids RAID card management communication and RAID card service I / O (input / output) competing for bandwidth resources, improves the resource utilization of the BMC and host, and improves the alarm response speed.
[0026] Correspondingly, in this embodiment, the disk array card can actively generate and send event information to the baseboard management controller. This includes core status information that the disk array card can monitor, such as hard drive health status, array status, hardware parameter status (e.g., temperature exceeding limits and battery or supercapacitor status), and / or communication link status. When core status information triggers preset alarm conditions, alarm event information is generated and sent to the baseboard management controller. For example, an alarm detection engine can be set within the disk array card to generate alarm event information based on the monitored core status information and preset alarm conditions. The core status information includes at least one of hard drive health status, array status, hardware parameter status, and communication link status.
[0027] Accordingly, the specific method for receiving event information actively pushed by the RAID card in this step, i.e., the specific method by which the RAID card actively pushes event information to the baseboard management controller, can be set by the designer according to the practical scenario and user needs. For example, when the baseboard management controller and the RAID card are connected via I2C bus, in this step, the baseboard management controller can utilize the slave mode of the integrated circuit bus to receive event information pushed by the RAID card in master mode (enabled by the integrated circuit bus) through event message frames of the Management Component Transport Protocol (MCTP). For example, the alarm detection engine built into the RAID card can monitor its own core status in real time, including hard drive health status, array status, hardware parameters, and communication link anomalies, etc. When a preset alarm condition is triggered, the RAID card automatically switches to I2C master mode and actively pushes alarm event information to the BMC through MCTP event message frames. When the baseboard management controller and the RAID card are connected via PCIe bus, the baseboard management controller can also receive event information actively pushed by the RAID card through the PCIe bus. This embodiment does not impose any limitations on this.
[0028] In this embodiment, the specific content and type of event information actively pushed by the disk array card can be set by the designer according to the practical scenario and user needs. For example, the event information may include alarm event information to realize the active alarm push of the RAID card. The event information may also include update event information to realize the active data update push of the RAID card; correspondingly, when the event information is update event information, the baseboard management controller can update the corresponding information of the stored disk array card according to the update event information, such as... Figure 2 The process of passively receiving updated data in the BMC; for example, update event information may include setting change information to update the settings information of the stored disk array card, such as the working mode.
[0029] Accordingly, in this embodiment, active polling mode and passive triggering mode processing programs can be deployed in the baseboard management controller so that the baseboard management controller can switch the communication mode with the disk array card, i.e., active polling mode and passive triggering mode, by executing different processing programs.
[0030] Furthermore, to ensure the reliability of event information (such as alarm event information) transmission and prevent information loss or tampering, in this embodiment, after receiving the event information actively pushed by the disk array card, the baseboard management controller can perform integrity verification on the event information, such as CRC (Cyclic Redundancy Check), and obtain the verification result. If the verification result indicates that the data is complete, the subsequent processing of the event information is performed, as in step 103; if the verification result indicates that the data is incomplete, the process can be terminated or a retransmission mechanism can be triggered to control the disk array card to resend the event information. For example, the baseboard management controller can perform hardware-level CRC verification on the MCTP message (i.e., event information) actively pushed by the disk array card to obtain the verification result.
[0031] Step 103: If the event information is an alarm event information, then parse the alarm event information and execute the corresponding alarm linkage operation according to the parsed content of the alarm event information.
[0032] Understandably, this step allows for the rapid parsing of alarm content (i.e., parsed content) and execution of subsequent alarm linkage operations when the disk array card actively pushes event information, including alarm event information. For example, the BMC can implement a passive receiving mechanism based on the MCTP protocol stack, eliminating the need for periodic polling commands. It only triggers the interrupt handling process when it receives MCTP messages (i.e., alarm event information) actively reported by the RAID card, quickly parsing the alarm content and executing subsequent linkage operations, such as logging, audible and visual alarms, and remote push notifications.
[0033] Correspondingly, the specific method for executing the corresponding alarm linkage operation based on the parsed alarm event information in this step can be set by the designer. For example, the alarm linkage operation may include at least one of the following: log recording operation, audible and visual alarm operation (such as alarming through indicator lights and buzzers), and remote push alarm operation (such as sending alarm information to remote terminals). The BMC can select the corresponding alarm linkage operation to issue an alarm based on the parsed alarm event information according to the pre-set alarm linkage operations for each type of alarm.
[0034] In other embodiments, after switching from active polling mode to passive triggering mode (i.e., after activating passive triggering mode), the baseboard management controller switches back to active polling mode at preset time intervals to poll for target information of the disk array card. Based on the target information, it updates the corresponding information of the stored disk array card and switches back to passive triggering mode to wait for event information actively pushed by the disk array card. The target information can be full or partial information, such as information other than settings changes, like hard drive capacity information. This ensures the accuracy of the full information of the disk array card stored by the baseboard management controller by switching between active polling mode after activating passive triggering mode. Compared to the traditional BMC active polling mode, this reduces the frequency of active polling; for example, the preset time interval can be greater than 1 minute.
[0035] Verification has shown that the method provided in this embodiment can significantly reduce the bus load between the BMC and the RAID card, increasing the I2C bus idle rate by over 90% and preventing management communication and RAID card service I / O from competing for bandwidth resources. Furthermore, the CPU utilization of the BMC can be significantly reduced, eliminating the need for the RAID card to allocate computing power to handle polling requests, allowing core resources to be concentrated on host-side I / O processing. Alarm response latency can also be significantly shortened, from the traditional active polling cycle level (typically 100ms-5s) to the microsecond level (≤1000μs), providing more time for rapid fault handling. In addition, the deep compatibility between domestically produced RAID cards and domestically produced BMCs ensures compatibility with the OpenBMC (an open-source firmware project) ecosystem, meeting the requirements of domestic self-control and seamless integration into existing server management systems. This fully satisfies the needs of enterprise-level core servers, storage arrays, and domestic computing nodes, providing lightweight and high-efficiency alarm management support for high-reliability storage systems.
[0036] In this embodiment, the present invention switches the active polling mode to a passive triggering mode to receive event information actively pushed by the disk array card. It can utilize the hardware-level active alarm capability of the RAID card to perform hardware and software co-adaptation between the BMC and the RAID card, and build an event-driven management architecture in which the RAID card actively reports to the BMC and passively receives the information. This replaces the traditional BMC active polling mode, realizes the lightweighting and efficiency of the management link, significantly reduces bus communication overhead, and improves the resource utilization and alarm response speed of the BMC.
[0037] Corresponding to the above method embodiments, this invention also provides a disk array card management device. The disk array card management device described below and the disk array card management method described above can be referred to in correspondence.
[0038] Please refer to Figure 3 ,Figure 3 This is a structural block diagram of a disk array card management device provided in an embodiment of the present invention. The device is applied to a baseboard management controller and may include: The polling module 10 is used to start the active polling mode after power-on, and to poll, obtain and store the full information of the disk array card; The passive module 20 is used to switch the active polling mode to the passive triggering mode and receive event information actively pushed by the disk array card; the event information includes alarm event information. The alarm module 30 is used to parse the alarm event information if the event information is alarm event information, and to execute the corresponding alarm linkage operation according to the parsed content of the alarm event information.
[0039] In some embodiments, the disk array card is equipped with an alarm detection engine, which is used to generate alarm event information based on the monitored core status information and preset alarm conditions; the core status information includes at least one of the following: hard disk health status information, array status information, hardware parameter status information, and communication link status information.
[0040] In some embodiments, the event information further includes updated event information; the apparatus may also include: The update module is used to update the corresponding information of the stored disk array card according to the update event information if the event information is update event information.
[0041] In some embodiments, the passive module 20 may include: The receiving submodule is used to receive event information pushed by the disk array card in master mode of the integrated circuit bus through the event message frame of the management component transmission protocol, utilizing the slave mode of the integrated circuit bus.
[0042] In some embodiments, the passive module 20 may further include: The verification submodule is used to perform integrity verification on event information and obtain the verification result. If the verification result indicates that the data is complete, a start signal is sent to the alarm module 30 when the event information is an alarm event.
[0043] In some embodiments, alarm linkage operations include at least one of log recording operations, audible and visual alarm operations, and remote push alarm operations.
[0044] In some embodiments, the device further includes: The switching module is used to switch the passive triggering mode to the active polling mode at preset time intervals to poll and obtain the target information of the disk array card. The switching update module is used to update the corresponding information of the stored disk array card according to the target information and send a start signal to the passive module 20.
[0045] In this embodiment, the present invention switches the active polling mode to the passive triggering mode through the passive module 20, and receives event information actively pushed by the disk array card. It can utilize the hardware-level active alarm capability of the RAID card to perform software and hardware co-adaptation between the BMC and the RAID card, and build an event-driven management architecture in which the RAID card actively reports to the BMC and passively receives the information. This replaces the traditional BMC active polling mode, realizes the lightweight and efficient management link, significantly reduces bus communication overhead, and improves the resource utilization and alarm response speed of the BMC.
[0046] Corresponding to the above method embodiments, this invention also provides a baseboard management controller. The baseboard management controller described below and the disk array card management method described above can be referred to in correspondence.
[0047] Please refer to Figure 4 , Figure 4 This is a schematic diagram of a substrate management controller provided in an embodiment of the present invention. The substrate management controller may include: Memory D1 is used to store computer programs; The processor D2 is used to execute computer programs to implement the steps of the disk array card management method provided in the above method embodiments.
[0048] The baseboard management controller provided in this embodiment can be installed in a server.
[0049] Corresponding to the above method embodiments, this invention also provides a disk array card management system. The disk array card management system described below and the disk array card management method described above can be referred to each other.
[0050] A management system for a disk array card includes: a disk array card and a baseboard management controller as provided in the above embodiments.
[0051] The disk array card can communicate with the baseboard management controller, such as the baseboard management controller can connect to the disk array card via the I2C bus.
[0052] Corresponding to the above method embodiments, this invention also provides a computer program product. The computer program product described below and the disk array card management method described above can be referred to each other.
[0053] A computer program product includes a computer program / instructions that, when executed by a processor, implement the steps of the disk array card management method provided in the above-described method embodiments.
[0054] Corresponding to the above method embodiments, this invention also provides a computer-readable storage medium. The computer-readable storage medium described below and the disk array card management method described above can be referred to in correspondence.
[0055] A computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the disk array card management method provided in the above-described method embodiments.
[0056] The computer-readable storage medium can specifically be a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, or any other readable storage medium capable of storing program code.
[0057] 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 apparatuses, systems, board management controllers, computer program products, and computer-readable storage media disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the descriptions are relatively simple, and relevant details can be found in the method section.
[0058] The foregoing has provided a detailed description of a disk array card management method, apparatus, system, and baseboard management controller provided by the present invention. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of the present invention. It should be noted that those skilled in the art can make various improvements and modifications to the present invention without departing from its principles, and these improvements and modifications also fall within the protection scope of the present invention.
Claims
1. A method for managing a disk array card, characterized in that, Applications to baseboard management controllers include: After powering on, the active polling mode is started to poll, obtain and store all information of the disk array card; Switch the active polling mode to the passive triggering mode to receive event information actively pushed by the disk array card; wherein, the event information includes alarm event information; If the event information is the alarm event information, then the alarm event information is parsed, and the corresponding alarm linkage operation is executed according to the parsed content of the alarm event information.
2. The disk array card management method according to claim 1, characterized in that, The disk array card is equipped with an alarm detection engine, which is used to generate alarm event information based on the monitored core status information and preset alarm conditions; the core status information includes at least one of the following: hard disk health status information, array status information, hardware parameter status information, and communication link status information.
3. The disk array card management method according to claim 1, characterized in that, The event information also includes update event information; after receiving the event information actively pushed by the disk array card, it also includes: If the event information is the update event information, then the corresponding information of the stored disk array card is updated according to the update event information.
4. The disk array card management method according to claim 1, characterized in that, The event information actively pushed by the received disk array card includes: Using the slave device mode of the integrated circuit bus, event information is received from the disk array card that has enabled the master device mode of the integrated circuit bus through the event message frame pushed by the management component transmission protocol.
5. The disk array card management method according to claim 1, characterized in that, After receiving the event information actively pushed by the disk array card, the method further includes: Perform an integrity check on the event information and obtain the check result; If the verification result indicates that the data is complete, then the steps of parsing the alarm event information and performing corresponding alarm linkage operations based on the parsed content of the alarm event information are executed.
6. The disk array card management method according to claim 1, characterized in that, The alarm linkage operation includes at least one of the following: log recording operation, audible and visual alarm operation, and remote push alarm operation.
7. The method for managing a disk array card according to any one of claims 1 to 6, characterized in that, After switching the active polling mode to the passive triggering mode, the method further includes: The passive triggering mode is switched to the active polling mode at preset time intervals to poll and obtain the target information of the disk array card. Based on the target information, update the corresponding information of the stored disk array card, switch the active polling mode to the passive triggering mode, and execute the step of receiving event information actively pushed by the disk array card.
8. A management device for a disk array card, characterized in that, Applications to baseboard management controllers include: The polling module is used to initiate an active polling mode after power-on, polling to obtain and store all information of the disk array card; A passive module is used to switch the active polling mode to a passive triggering mode and receive event information actively pushed by the disk array card; wherein, the event information includes alarm event information; The alarm module is used to parse the alarm event information if the event information is the alarm event information, and to perform corresponding alarm linkage operations according to the parsed content of the alarm event information.
9. A baseboard management controller, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the disk array card management method as described in any one of claims 1 to 7 when executing the computer program.
10. A management system for a disk array card, characterized in that, include: The disk array card and the baseboard management controller as described in claim 9.