Method and apparatus for managing rotational speed of cabinet fan, system, storage medium, and electronic device
By parsing and encapsulating information acquisition requests of different protocols in the chassis management controller (CMC), the problem of users being unable to query the cabinet fan speed in real time is solved, and real-time monitoring through the Rest interface is achieved.
Patent Information
- Application Number
- PCT/CN2025/070338
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-29
- Filing Date
- 2025-01-03
- Publication Date
- 2025-10-02
AI Technical Summary
Users cannot query the fan speed information installed in the cabinet in real time through the chassis management controller (CMC) rest interface.
The chassis management controller (CMC) receives the target device's information acquisition request, parses the fan ID, and encapsulates it into requests of different protocols based on the intelligent platform management interface (IPMI) protocol specification to obtain the fan speed information and feed it back to the target device through the Rest interface.
This allows users to query the fan speed information installed on the cabinet in real time through the Rest interface of the chassis management controller (CMC), solving the problem of being unable to monitor the fan speed in real time in the existing technology.
Smart Images

Figure CN2025070338_02102025_PF_FP_ABST
Abstract
Description
Cabinet fan speed management method, device, system, storage medium and electronic equipment
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on March 29, 2024, with application number 202410375499.8, and application name “Cabinet fan speed management method, device, storage medium and electronic device”, all contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of computer technology, and in particular to a cabinet fan speed management method, device, system, storage medium, and electronic device. Background Art
[0004] As users' demands for server performance increase, the number of server computing nodes they need is also increasing. Compared to traditional servers, rack-mounted servers offer significant advantages in node integration and management. Typically, a single computer room contains many rack-mounted servers that require unified management.
[0005] In related technologies, a cabinet controls the speed of its fans through a chassis management controller (CMC). However, due to limitations in the Representational State Transfer (REST) interface used by the CMC, users cannot intuitively query fan information through the cabinet's web interface.
[0006] Based on this, a cabinet fan speed management method is urgently needed, which enables users to query the speed information of the fans installed on the cabinet in real time through the Rest interface of the chassis management controller CMC. Summary of the Invention
[0007] According to various embodiments disclosed in the present application, a cabinet fan speed management method, device, system, storage medium, and electronic device are provided.
[0008] The present application provides a cabinet fan speed management method, which is applied to a chassis management controller. The method includes: receiving a first information acquisition request sent by a target device, parsing the first information acquisition request, and determining at least one fan identifier indicated by the first information acquisition request; based on the intelligent platform management interface protocol specification, encapsulating the at least one fan identifier into instructions to obtain a second information acquisition request corresponding to the first information acquisition request; and based on the second information acquisition request, acquiring first target information, and feeding back the first target information to the target device through a second information acquisition response; wherein the first information acquisition request is sent by the target device through the representational state transfer interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the representational state transfer interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0009] The present application also provides a cabinet fan speed management device, which is applied to a chassis management controller. The device includes: a data transmission module for receiving a first information acquisition request sent by a target device; a data processing module for parsing the first information acquisition request and determining at least one fan identifier indicated by the first information acquisition request; a request processing module for encapsulating at least one fan identifier into instructions based on the intelligent platform management interface protocol specification to obtain a second information acquisition request corresponding to the first information acquisition request; an information acquisition module for obtaining first target information based on the second information acquisition request; and a data transmission module for feeding back the first target information to the target device through a second information acquisition response; wherein the first information acquisition request is sent by the target device through the representational state transfer interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the representational state transfer interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0010] The present application also provides a cabinet fan speed management system, which includes a chassis management controller, at least one baseboard management controller connected to the chassis management controller via Ethernet communication, and multiple fans installed on the cabinet; the chassis management controller is used to execute the steps of any of the above-mentioned cabinet fan speed management methods.
[0011] The present application also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of any of the above-mentioned cabinet fan speed management methods.
[0012] The present application also provides an electronic device, including a memory, a processor, and computer-readable instructions stored in the memory and executable on the processor. When the processor executes the program, the steps of any of the above-mentioned cabinet fan speed management methods are implemented.
[0013] The present application also provides a non-volatile computer-readable storage medium having computer-readable instructions stored thereon. When the computer-readable instructions are executed by a processor, the steps of any of the above-mentioned cabinet fan speed management methods are implemented.
[0014] The details of one or more embodiments of the present application are set forth in the accompanying drawings and the description below. Other features and advantages of the present application will become apparent from the description, drawings, and claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] In order to more clearly illustrate the technical solutions in the present application or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0016] FIG1 is a structural diagram of a cabinet fan speed management system provided in one or more embodiments of the present application;
[0017] FIG2 is a flow chart of a cabinet fan speed management method according to one or more embodiments of the present application;
[0018] FIG3 is a second flow chart of a cabinet fan speed management method provided in one or more embodiments of the present application;
[0019] FIG4 is a CMC / BMC network topology diagram provided in one or more embodiments of the present application;
[0020] FIG5 is a schematic diagram of the installation of a computing node on a cabinet provided in one or more embodiments of the present application;
[0021] FIG6 is a schematic diagram of installing a fan on a cabinet provided in one or more embodiments of the present application;
[0022] FIG7 is a multi-cabinet network topology diagram provided in one or more embodiments of the present application;
[0023] FIG8 is a third flow chart of a cabinet fan speed management method provided in one or more embodiments of the present application;
[0024] FIG9 is a schematic structural diagram of a cabinet fan speed management device provided in one or more embodiments of the present application;
[0025] FIG10 is a schematic structural diagram of an electronic device provided in one or more embodiments of the present application. DETAILED DESCRIPTION
[0026] To make the objectives, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.
[0027] The terms "first," "second," and the like in the specification and claims of this application are used to distinguish similar objects, and are not used to describe a specific order or precedence. It should be understood that the terms used in this manner are interchangeable where appropriate, so that the embodiments of this application can be implemented in an order other than that illustrated or described herein, and that the objects distinguished by "first," "second," and the like are generally of the same type, and do not limit the number of objects; for example, the first object can be one or more. In addition, the term "and / or" in the specification and claims refers to at least one of the connected objects, and the character " / " generally indicates that the objects connected are in an "or" relationship.
[0028] The following is a detailed description of the professional terms involved in the embodiments of this application:
[0029] Chassis Management Controller (CMC): is a hardware and software solution for monitoring and managing server chassis. It provides a browser-based interface that allows administrators to perform resource inventory, configuration, monitoring tasks, remotely power on and off servers, and supports alerts for server and component events in the chassis.
[0030] Baseboard Management Controller (BMC): It is an important component of server hardware and is responsible for monitoring and managing the server's hardware status and operating system. It is an independent small operating system, a chip integrated on the motherboard, and provides remote management functions through the IPMI (Intelligent Platform Management Interface) protocol. The BMC can still work when the system is shut down, supporting remote management, monitoring, installation, restart and other operations of the server. It is also responsible for recording hardware information and logs to help users monitor the physical health characteristics of the server, such as temperature, voltage, fan working status and power status.
[0031] Intelligent Platform Management Interface (IPMI): An open-standard hardware management interface specification. It allows for remote monitoring and management of server systems, independent of the main operating system. IPMI runs on the server's baseboard management controller (BMC) and can monitor the server's physical health characteristics, such as temperature, voltage, fan status, and power supply status.
[0032] Programmable System-on-Chip (PSoC): A single-chip system that integrates a microcontroller unit (MCU) with configurable analog and digital circuits. PSoC devices allow developers to customize hardware configuration and behavior based on specific application requirements through programming. This allows multiple functions to be implemented on a single chip, reducing the need for external components, simplifying design, and lowering costs.
[0033] Representational State Transfer (REST) is a network architecture style based on the Hypertext Transfer Protocol (HTTP). It defines a set of rules that enable web services to handle resource state transitions using standard HTTP methods (such as GET, POST, PUT, and DELETE). The core concepts of REST include resources (identified by URIs), a uniform interface (HTTP methods), and stateless interactions.
[0034] In response to the technical problem in the related art that users cannot monitor the rotation speed of fans installed on the cabinet in real time through the Rest interface of the chassis management controller CMC, one or more embodiments of the present application provide a system architecture of a cabinet fan speed management system, and a corresponding cabinet fan speed management method. As shown in Figure 1, the system includes: a target device for monitoring the rotation speed of fans installed on the cabinet in real time through the web page of the chassis management controller CMC, the target device being communicated with the chassis management controller CMC through the representational state transfer interface (hereinafter referred to as the Rest interface) of the chassis management controller CMC; and at least one baseboard management controller BMC connected to the chassis management controller CMC through Ethernet communication; and multiple fans installed on the cabinet.
[0035] The cabinet fan speed management method provided by the embodiment of the present application is described in detail below with reference to the accompanying drawings through specific embodiments and their application scenarios.
[0036] As shown in FIG2 , an embodiment of the present application provides a cabinet fan speed management method, which is applied to a chassis management controller and may include the following steps 201 to 203:
[0037] Step 201: Receive a first information acquisition request sent by a target device, parse the first information acquisition request, and determine at least one fan identifier indicated by the first information acquisition request.
[0038] The first information acquisition request is sent by the target device through the Rest interface of the chassis management controller.
[0039] For example, when a user of a target device wishes to query the speed information of one or more fans installed in a cabinet, the target device may send a first information acquisition request to the chassis management controller (CMC). Because the target device and the chassis management controller (CMC) communicate via the CMC's REST interface, the first information acquisition request is a Representational State Transfer Hypertext Transfer Protocol (REST Http Request).
[0040] For example, since the chassis management controller (CMC) communicates with the baseboard management controller (BMC) via an IPMI process created based on the IPMI protocol, which is not compatible with the REST protocol, protocol conversion is required for the first information acquisition request in order to enable the IPMI process to correctly identify the type of information to be queried by the target device.
[0041] Specifically, the above step 201 may further include the following steps 201a1 and 201a2:
[0042] Step 201a1: Receive a Rest Http Request sent by a target device through a Rest interface, and parse the Rest Http Request to obtain target parameter information.
[0043] Step 201a2: Determine at least one fan identifier based on the target parameter information.
[0044] For example, in this embodiment of the present application, the front end of the chassis management controller (CMC) is a REST interface, which does not directly access the underlying hardware data. REST is an open industry standard specification and architecture that uses JavaScript Object Notation (JSON) and the Open Data Protocol (OData) to integrate management solutions into existing tool chains. Management data in REST HTTP requests can be represented using the OData-based JSON format.
[0045] It should be noted that in the embodiments of the present application, fan data can be sent and retrieved using JSON formatted data. For example, taking the JSON array FanInfo:[fan1,pwm1;fan2,pwm2…fan10,pwm10] as an example, it indicates that the speed of fan 1 is pwm1, the speed of fan 2 is pwm2, and so on, the speed of fan 10 is pwm10.
[0046] Step 202: Based on the Intelligent Platform Management Interface (IPMI) protocol specification, encapsulate at least one fan identifier into a command to obtain a second information acquisition request corresponding to the first information acquisition request.
[0047] For example, due to the difference in protocols, it is necessary to convert the first information acquisition request of the HTTP protocol into a second information acquisition request of the IPMI protocol. The second information acquisition request is: Original Equipment Manufacturer Intelligent Platform Management Interface Request OEM IPMI Request.
[0048] Specifically, the above step 202 may include the following steps 202a:
[0049] Step 202a: Based on the Intelligent Platform Management Interface Protocol (hereinafter referred to as IPMI protocol) specification, at least one fan identifier is encapsulated in a command through a first process to obtain an Original Equipment Manufacturer Intelligent Platform Management Interface Request (hereinafter referred to as OEM IPMI Request) corresponding to the first information acquisition request.
[0050] The first process is used to convert an HTTP protocol request into an IPMI protocol request; and the second information acquisition request carries at least one fan identifier.
[0051] For example, in an embodiment of the present application, a first process can be set up in the chassis management controller (CMC) to convert requests of different protocols, so as to convert a first information acquisition request of the HTTP protocol into a second information acquisition request of the IPMI protocol. The IPMI process can then query the fan speed based on the second information acquisition request.
[0052] Step 203: Based on the second information acquisition request, the first target information is acquired, and the first target information is fed back to the target device through a second information acquisition response.
[0053] The second information acquisition response is sent by the chassis management controller to the target device through the Rest interface.
[0054] The first target information includes: a fan speed corresponding to each fan identifier in at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols. The first information acquisition request is a request of the HTTP protocol, and the second information acquisition request is a request of the IPMI protocol.
[0055] Specifically, the step of acquiring the first target information based on the second information acquisition request in the above step 203 may further include the following step 203a:
[0056] Step 203a: forward the second information acquisition request to the second process, and obtain the first target information from the shared storage space based on the second information acquisition request through the second process.
[0057] The shared storage space stores current rotation speed information of multiple fans managed by the chassis management controller; and the second process is an intelligent platform management interface IPMI process.
[0058] Exemplarily, the second information acquisition response is: Original Equipment Manufacturer Intelligent Platform Management Interface Response (OEM IPMI Response). The rotation speed information of the plurality of fans installed on the cabinet is stored in the shared storage space.
[0059] Specifically, in the above step 203, the step of feeding back the first target information to the target device through the second information acquisition response may further include the following steps 203b1 to 203b3:
[0060] Step 203b1: Based on the intelligent platform management interface protocol specification, encapsulate the first target information into instructions to obtain an original equipment manufacturer intelligent platform management interface response (hereinafter referred to as OEM IPMI Response) corresponding to the OEM IPMI Request.
[0061] Step 203b2: Send the OEM IPMI Response to the first process, and convert the OEM IPMI Response into a first information acquisition response through the first process.
[0062] Step 203b3: Send the first information acquisition response to the target device through the Rest interface.
[0063] Exemplarily, the first information acquisition response is a Representational State Transfer Hypertext Transfer Protocol response (hereinafter referred to as a Rest Http Response). After the IPMI process queries the speed information of the fan related to the OEM IPMI Request process, it can feed back the queried speed information to the target device via a Rest Http Response.
[0064] Specifically, in the above step 203b2, the step of converting the OEM IPMI Response into the first information acquisition response through the first process may further include the following step 203b21:
[0065] Step 203b21: Parse the OEM IPMI Response to obtain first target information, and encapsulate the first target information into instructions through the first process based on the REST protocol specification to obtain a Rest Http Response corresponding to the OEM IPMI Response.
[0066] The first process is used to convert the response of the IPMI protocol into a response of the HTTP protocol; and the first information acquisition response carries the first target information.
[0067] Exemplarily, the first process is further configured to convert the second data acquisition response of the IPMI protocol into a first data acquisition response of the HTTP protocol. The chassis management controller (CMC) then sends the first target information to the target device via the first data acquisition response, thereby enabling the target device to query the fan speed information via the REST interface of the chassis management controller (CMC).
[0068] For example, as shown in Figure 3, a detailed flow chart of the cabinet fan speed management method provided by one or more embodiments of the present application is provided. After receiving the Rest Http Request sent by the target device through the Rest interface, the chassis management controller CMC adds the OEM IPMI Request required by the Rest interface according to the IPMI protocol specification through the first process (i.e., the Rest Over IPMI process). Among them, the Request value is the fan identifier, and the Response value is the corresponding speed, which is represented by pulse width modulation (PWM). The chassis management controller CMC generates an OEM IPMI command (i.e., the above-mentioned OEM IPMI Request) that encapsulates the Rest HTTP request based on the Rest process module of IPMI, so that the command complies with both the Rest specification and the IPMI specification. Afterwards, the second process (i.e., the IPMI process) will obtain the OEM IPMI Request and respond to the required data according to the fan identifier, that is, obtain the PSOC fan data from the shared memory module (i.e., the above-mentioned shared storage space).
[0069] Optionally, in one or more embodiments of the present application, in order to obtain the fan speed information required by the user, the chassis management controller CMC can also adjust the speed of the fan installed on the chassis and store the adjusted speed information in a shared storage space so that the user can query the latest speed information.
[0070] For example, before step 203, the cabinet fan speed management method provided by one or more embodiments of the present application may further include the following steps 204 and 205:
[0071] Step 204 : Obtain the required fan speed calculated by each baseboard management controller BMC from at least one baseboard management controller BMC in communication with the chassis management controller through a second process.
[0072] Specifically, the above step 204 may further include the following step 204a:
[0073] Step 204a: Send an IPMI data acquisition request to at least one baseboard management controller (BMC) in sequence through the second process, and receive an IPMI data acquisition response fed back by each baseboard management controller (BMC).
[0074] The IPMI data acquisition response includes the required fan speed calculated by the baseboard management controller BMC.
[0075] For example, as shown in Figure 3, the speed (PWM) of each fan is obtained by the chassis management controller (CMC) by actively polling the IPMI data of all baseboard management controllers (BMCs). The CMC internally establishes an IPMI over LAN session, communicates with each BMC via Ethernet, and obtains BMC node information through IPMI over LAN Request and IPMI over LAN Response.
[0076] Step 205: Determine the maximum fan speed as the speed of each fan among the multiple fans installed in the cabinet.
[0077] The maximum fan speed is: the maximum required fan speed among multiple required fan speeds calculated by at least one baseboard management controller BMC; the number of fans installed in the cabinet is greater than or equal to the preset minimum number of fans.
[0078] Step 206 : Based on the rotation speed of each fan among the multiple fans, control the rotation speed of each fan through a programmable system on a chip (PSOC), and store the rotation speed information of each fan in a shared storage space.
[0079] Based on Figure 3, as shown in Figure 4, a CMC / BMC network topology diagram is provided for one or more embodiments of the present application. The chassis management controller is connected to multiple baseboard management controllers (BMCs) via a local area network (LAN). The baseboard management controller (BMC) calculates the fan speed (PWM) required by the current baseboard management controller (BMC) through sensors based on the cooling strategy. The chassis management controller (CMC) aggregates the PWMs transmitted by all baseboard management controllers (BMCs), calculates the required PWM for each fan based on the fan and node presence, stores the data in a shared memory module (data communication methods are not limited to shared memory, pipelines, etc.), and simultaneously controls the actual fan speed through the PSOC. For the overall implementation of a single cabinet itself: the baseboard management controller (BMC) updates its own PWM in real time, and the chassis management controller (CMC) updates the PWM corresponding to the fans of the entire cabinet in real time and stores it in shared memory. When the user opens the WebUI to monitor fan information, the fan information is completely and accurately obtained through the process of web->rest->rest over ipmi->cmc ipmi->bmc ipmi.
[0080] In one possible implementation, compute nodes on the cabinet can be installed as shown in Figure 5 to achieve optimal heat dissipation. As shown in Figure 5, the cabinet supports a mixed insertion of full-width and half-width compute nodes. The principle of mixed insertion is to insert full-width nodes first, then half-width nodes, bottom first, then top, and left first, then right. That is, if there are full-width nodes, the full-width nodes must be placed at the bottom; if there are half-width nodes, the left half must be filled first, then the right half. If all full-width nodes are placed, a total of 8 nodes can be placed. If all half-width nodes are placed, a total of 16 nodes can be placed.
[0081] The chassis' midplane has a General Purpose Input / Output (GPIO) signal corresponding to the slot space. Normally, this signal is high. When a node is inserted into a slot, the GPIO signal goes low. The Chassis Management Controller (CMC) determines whether the node is present. If so, the node's color changes to a different color on the web interface, and "View Details" appears when you hover your mouse over it. The CMC communicates with the Baseboard Management Controller (BMC) via the IPMI protocol to monitor each node. Node type information is stored in the BMC, and the CMC obtains the node type from the BMC on the node.
[0082] As shown in Figure 6, the cabinet in one or more embodiments of the present application can support 10 fans, with the fans arranged from left to right and from bottom to top. In-position information is also monitored by GPIO signals. The chassis management controller (CMC) monitors fan speed information through the PSOC and displays real-time fan information on the CMC's web interface.
[0083] Exemplarily, the number of fans installed in the cabinet is greater than or equal to the preset minimum number of fans; the cabinet includes multiple full-width node mounting positions; one full-width node mounting position can install one full-width computing node, or two half-width computing nodes; the installation rules of computing nodes in the cabinet include: first bottom then top, first left then right, and when there are half-width computing nodes, install the full-width computing nodes first and then the half-width computing nodes; when the number of nodes installed in the cabinet is less than or equal to the preset number of nodes, the number of fans installed in the cabinet is equal to the preset minimum number of fans; when the number of nodes installed in the cabinet is greater than the preset number of nodes, the number of fans installed in the cabinet is positively correlated with the number of installed nodes.
[0084] Specifically, there is a correspondence between computing nodes and fans as shown in Table 1 below. When a node is inserted into the corresponding position, the corresponding fan must be inserted, and the local CMC will control the fan to execute according to the subsequent cooling strategy. Cooling strategy: There are at least 6 fans. No matter which of the first 1-5 nodes requires a higher speed, the corresponding 6 fans must have the highest speed; when the 6th node is inserted, 8 fans are inserted, and the overall fan speed is the highest among 1-6; when 7-8 nodes are inserted, a total of 10 fans are inserted, and the overall fan speed is the highest among all. This strategy does not require the insertion of all fans, which is beneficial to saving power consumption and reducing fan noise without affecting the performance of the entire chassis.
[0085] Table 1
[0086] In the fan mapping relationship, as long as there is a half-width node, calculation is performed using the full-width strategy.
[0087] In this way, reasonable layout can be used to reduce the number of fans installed and maximize heat dissipation efficiency.
[0088] Optionally, in one or more embodiments of the present application, for multiple cabinets in a computer room, in order to facilitate users to query fan speed information on other cabinets on any cabinet, the multiple cabinets can be networked.
[0089] For example, the cabinet fan speed management method provided in one or more embodiments of the present application may further include the following steps 207 and 208:
[0090] Step 207: Receive the third information acquisition request sent by the target device, and convert the third information acquisition request into a fourth information acquisition request through the first process.
[0091] Step 208: Based on the controller identifier carried in the third information acquisition request, send a fourth information acquisition request to a target controller corresponding to the controller identifier.
[0092] The third information acquisition request is a Rest Http Request; the fourth information acquisition request is an OEM IPMI Request; and the target controller is a chassis management controller on another chassis that is communicatively connected to the chassis management controller.
[0093] For example, after obtaining the fan speed information of the cabinet that the user wants to query, the cabinet fan speed management method provided by one or more embodiments of the present application may further include the following steps 209 and 210:
[0094] Step 209: Receive a fourth information acquisition response including the second target information fed back by the target controller, and convert the fourth information acquisition response into a third information acquisition response through the first process.
[0095] Step 210: Send a third information acquisition response including the second target information to the target device.
[0096] The second target information includes: rotation speed information of multiple fans managed by the target controller.
[0097] For example, as shown in FIG7 , a multi-cabinet network topology diagram is provided for one or more embodiments of the present application. When the network is normal and the baseboard management controller BMC is monitoring normally, the CMC IP addresses of other cabinets that you want to monitor can be added to the chassis management controller CMC of any cabinet. After the configuration is completed, the chassis management controller CMC will broadcast the IP addresses of all associated CMCs to other chassis management controllers CMC. That is, if the chassis management controller CMC is configured only in any one cabinet, the information of all chassis management controllers CMC added to the local area network can be seen in the chassis modules of other chassis management controllers CMC. Therefore, you only need to log in to a certain machine each time, and you can see the fan speed information of other chassis management controllers CMC without switching the CMC IP.
[0098] Based on the network topology shown in Figure 7, a new REST Over IPMI fan monitoring process module is required between each CMC. The web-based process between any two CMCs is shown in Figure 8. Select a CMC as the master CMC, CMC0, and add the remaining cabinets to be monitored to the LAN (subsequently named CMCs CMC1, CMC2, and CMCn). The master CMC can then send and retrieve fan data between CMCs via a JSON file over the web. The format of the JSON file transmitted by the first process (i.e., the REST Over IPMI process) is [CMCn, FanInfo], where n is the desired CMC, or local fan information when n=0. FanInfo is the array mentioned in the example above. According to the IPMI specification, the OEM IPMI required for the REST interface between CMCs is added. The Request value is the CMC ID, and the Response value is the corresponding fan ID and PWM. The above steps can be used to implement fan control across cabinets. You only need to log in to the web page of the main CMC. Based on the selected ID, you can query and control the fan information of different CMC cabinets.
[0099] The cabinet fan speed management method provided by the embodiment of the present application first receives a first information acquisition request sent by a target device, parses the first information acquisition request, and determines at least one fan identifier indicated by the first information acquisition request; then, based on the Intelligent Platform Management Interface (IPMI) protocol specification, encapsulates the at least one fan identifier into a command to obtain a second information acquisition request corresponding to the first information acquisition request; finally, based on the second information acquisition request, obtains first target information and feeds the first target information back to the target device via a second information acquisition response; wherein the first information acquisition request is sent by the target device via the REST interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device via the REST interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols. In this way, a user can query the speed information of the fans installed on the cabinet in real time via the REST interface of the chassis management controller (CMC).
[0100] It should be noted that the cabinet fan speed management method provided in the embodiments of the present application can be executed by a cabinet fan speed management device, or a control module in the cabinet fan speed management device for executing the cabinet fan speed management method. In the embodiments of the present application, the cabinet fan speed management device provided in the embodiments of the present application is described by taking the cabinet fan speed management device executing the cabinet fan speed management method as an example.
[0101] It should be noted that in the embodiments of the present application, the cabinet fan speed management method shown in the above-mentioned figures is described by way of example in conjunction with one figure in the embodiments of the present application. In specific implementation, the cabinet fan speed management method shown in the above-mentioned figures can also be implemented in conjunction with any other combinable figures shown in the above-mentioned embodiments, and will not be further described here.
[0102] The cabinet fan speed management device provided in the present application is described below. The cabinet fan speed management method described below and the cabinet fan speed management method described above can be referenced to each other.
[0103] FIG9 is a schematic diagram of the structure of a cabinet fan speed management device provided in an embodiment of the present application, as shown in FIG9 , specifically comprising:
[0104] The data transmission module 901 is used to receive a first information acquisition request sent by a target device; the data processing module 902 is used to parse the first information acquisition request and determine at least one fan identifier indicated by the first information acquisition request; the request processing module 903 is used to encapsulate the at least one fan identifier into instructions based on the intelligent platform management interface IPMI protocol specification to obtain a second information acquisition request corresponding to the first information acquisition request; the information acquisition module 904 is used to obtain the first target information based on the second information acquisition request; the data transmission module 901 is also used to feed back the first target information to the target device through the second information acquisition response; wherein, the first information acquisition request is sent by the target device through the Rest interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the Rest interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0105] Optionally, the first information acquisition request is: a Representational State Transfer Hypertext Transfer Protocol request Rest Http Request; a data transmission module 901 is specifically used to receive a Rest Http Request sent by a target device through a Rest interface; a data processing module 902 is specifically used to parse the Rest Http Request, obtain target parameter information, and determine at least one fan identifier based on the target parameter information.
[0106] Optionally, the second information acquisition request is: original equipment manufacturer intelligent platform management interface request OEM IPMI Request; the request processing module 903 is specifically used to encapsulate at least one fan identifier into instructions through the first process based on the intelligent platform management interface IPMI protocol specification, and obtain the OEM IPMI Request corresponding to the first information acquisition request; wherein the first process is used to convert the HTTP protocol request into the IPMI protocol request; the second information acquisition request carries at least one fan identifier.
[0107] Optionally, the information acquisition module 904 is specifically used to forward the second information acquisition request to the second process, and obtain the first target information from the shared storage space based on the second information acquisition request through the second process; wherein the shared storage space stores the current speed information of multiple fans managed by the chassis management controller; the second process is the intelligent platform management interface IPMI process.
[0108] Optionally, the second information acquisition response is: original equipment manufacturer intelligent platform management interface response OEM IPMI Response; the request processing module 903 is also used to encapsulate the first target information into instructions based on the intelligent platform management interface IPMI protocol specification to obtain an OEM IPMI Response corresponding to the OEM IPMI Request; the request processing module 903 is also used to send the OEM IPMI Response to the first process, and convert the OEM IPMI Response into a first information acquisition response through the first process; the data transmission module 901 is specifically used to send the first information acquisition response to the target device through the Rest interface.
[0109] Optionally, the first information acquisition response is: a Representational State Transfer Hypertext Transfer Protocol response Rest Http Response; the request processing module 903 is specifically used to parse the OEM IPMI Response to obtain the first target information, and based on the Rest protocol specification, encapsulate the first target information through the first process to obtain a Rest Http Response corresponding to the OEM IPMI Response; wherein the first process is used to convert the IPMI protocol response into an HTTP protocol response; the first information acquisition response carries the first target information.
[0110] Optionally, the device also includes: a calculation module; a data transmission module 901, which is also used to obtain the required fan speed calculated by each baseboard management controller BMC from at least one baseboard management controller BMC that is communicatively connected to the chassis management controller through a second process; a calculation module, which is used to determine the maximum fan speed as the speed of each fan among the multiple fans installed in the cabinet; wherein the maximum fan speed is: the maximum required fan speed among the multiple required fan speeds calculated by at least one baseboard management controller BMC; the number of fans installed in the cabinet is greater than or equal to the preset minimum number of fans.
[0111] Optionally, the data transmission module 901 is specifically used to send an IPMI data acquisition request to at least one baseboard management controller BMC in sequence through a second process, and receive an IPMI data acquisition response fed back by each baseboard management controller BMC; wherein the IPMI data acquisition response includes the required fan speed calculated by the baseboard management controller BMC.
[0112] Optionally, the data processing module 902 is further configured to control the rotation speed of each fan through a programmable system on a chip (PSOC) based on the rotation speed of each fan among the multiple fans, and store the rotation speed information of each fan in a shared storage space.
[0113] Optionally, the number of fans installed in the cabinet is greater than or equal to a preset minimum number of fans; the cabinet includes multiple full-width node installation positions; one full-width node installation position can install one full-width computing node, or two half-width computing nodes; the installation rules of computing nodes in the cabinet include: bottom first, top later, left first, right later, and when there are half-width computing nodes, full-width computing nodes are installed first, and half-width computing nodes are installed later; when the number of nodes installed in the cabinet is less than or equal to the preset number of nodes, the number of fans installed in the cabinet is equal to the preset minimum number of fans; when the number of nodes installed in the cabinet is greater than the preset number of nodes, the number of fans installed in the cabinet is positively correlated with the number of installed nodes.
[0114] Optionally, the data transmission module 901 is further used to receive a third information acquisition request sent by the target device; the request processing module 903 is further used to convert the third information acquisition request into a fourth information acquisition request through the first process; the data transmission module 901 is further used to send the fourth information acquisition request to the target controller corresponding to the controller identifier based on the controller identifier carried in the third information acquisition request; wherein, the third information acquisition request is: Rest Http Request; the fourth information acquisition request is OEM IPMI Request; the target controller is a chassis management controller on another chassis that is communicatively connected to the chassis management controller.
[0115] Optionally, the data transmission module 901 is also used to receive a fourth information acquisition response containing the second target information fed back by the target controller, and convert the fourth information acquisition response into a third information acquisition response through the first process; the data transmission module 901 is also used to send the third information acquisition response containing the second target information to the target device; wherein the second target information includes: the speed information of multiple fans managed by the target controller.
[0116] The specific limitations of the cabinet fan speed management device can be found in the limitations of the cabinet fan speed management method described above and will not be further elaborated here. Each module in the aforementioned cabinet fan speed management device can be implemented in whole or in part through software, hardware, or a combination thereof. Each of the aforementioned modules can be embedded in or independent of a processor in an electronic device in hardware form, or can be stored in a memory in the electronic device in software form, so that the processor can call and execute the corresponding operations of each of the aforementioned modules.
[0117] Figure 10 illustrates a schematic diagram of the physical structure of an electronic device. As shown in Figure 10, the electronic device may include: a processor (processor) 1010, a communication interface (Communications Interface) 1020, a memory (memory) 1030 and a communication bus 1040, wherein the processor 1010, the communication interface 1020, and the memory 1030 communicate with each other through the communication bus 1040. The processor 1010 can call the logic instructions in the memory 1030 to execute the cabinet fan speed management method, which includes: receiving a first information acquisition request sent by the target device, and parsing the first information acquisition request to determine at least one fan identifier indicated by the first information acquisition request; based on the intelligent platform management interface IPMI protocol specification, encapsulating the at least one fan identifier into instructions to obtain a second information acquisition request corresponding to the first information acquisition request; based on the second information acquisition request, obtaining the first target information, and feeding back the first target information to the target device through the second information acquisition response; wherein, the first information acquisition request is sent by the target device through the Rest interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the Rest interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0118] In addition, the logic instructions in the above-mentioned memory 1030 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0119] On the other hand, the present application also provides a computer program product, which includes a computer program stored on a computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the cabinet fan speed management method provided by the above methods, the method including: receiving a first information acquisition request sent by a target device, parsing the first information acquisition request, and determining at least one fan identifier indicated by the first information acquisition request; based on the intelligent platform management interface IPMI protocol specification, encapsulating the at least one fan identifier into instructions to obtain a second information acquisition request corresponding to the first information acquisition request; based on the second information acquisition request, obtaining first target information, and feeding back the first target information to the target device through the second information acquisition response; wherein the first information acquisition request is sent by the target device through the Rest interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the Rest interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0120] On the other hand, the present application also provides a non-volatile computer-readable storage medium having computer-readable instructions stored thereon, which, when executed by a processor, are implemented to execute the above-mentioned cabinet fan speed management methods, the method comprising: receiving a first information acquisition request sent by a target device, parsing the first information acquisition request, and determining at least one fan identifier indicated by the first information acquisition request; based on the intelligent platform management interface IPMI protocol specification, encapsulating the at least one fan identifier into instructions to obtain a second information acquisition request corresponding to the first information acquisition request; based on the second information acquisition request, obtaining first target information, and feeding back the first target information to the target device through a second information acquisition response; wherein, the first information acquisition request is sent by the target device through the Rest interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the Rest interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
[0121] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units. That is, they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.
[0122] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus the necessary general hardware platform, or of course, by hardware. Based on this understanding, the essence of the above technical solution or the part that contributes to the existing technology can be embodied in the form of a software product. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods of each embodiment or certain parts of the embodiment.
[0123] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A cabinet fan speed management method, characterized in that: Applied to a chassis management controller, the method includes: receiving a first information acquisition request sent by a target device, parsing the first information acquisition request, and determining at least one fan identifier indicated by the first information acquisition request; Based on the intelligent platform management interface protocol specification, encapsulate the at least one fan identifier into a command to obtain a second information acquisition request corresponding to the first information acquisition request; and acquiring first target information based on the second information acquisition request, and feeding back the first target information to the target device through a second information acquisition response; Among them, the first information acquisition request is sent by the target device through the representational state transfer interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the representational state transfer interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
2. The method according to claim 1, characterized in that The first information acquisition request is a Hypertext Transfer Protocol request, and the second information acquisition request is a Intelligent Platform Management Interface Protocol request.
3. The method according to claim 1, characterized in that The first information acquisition request is: a representational state transfer hypertext transfer protocol request; The receiving a first information acquisition request sent by a target device, parsing the first information acquisition request, and determining at least one fan identifier indicated by the first information acquisition request includes: receiving a representational state transfer hypertext transfer protocol request sent by the target device through the representational state transfer interface, and parsing the representational state transfer hypertext transfer protocol request to obtain target parameter information; and The at least one fan identifier is determined based on the target parameter information.
4. The method according to claim 3, characterized in that The second information acquisition request is: an original equipment manufacturer intelligent platform management interface request; The step of encapsulating the at least one fan identifier into a command based on the intelligent platform management interface protocol specification to obtain a second information acquisition request corresponding to the first information acquisition request includes: Based on the intelligent platform management interface protocol specification, the at least one fan identifier is encapsulated into an instruction by a first process to obtain an original equipment manufacturer intelligent platform management interface request corresponding to the first information acquisition request; The first process is used to convert a Hypertext Transfer Protocol request into an Intelligent Platform Management Interface Protocol request; and the second information acquisition request carries the at least one fan identifier.
5. The method according to claim 4, characterized in that The acquiring of the first target information based on the second information acquisition request includes: forwarding the second information acquisition request to a second process, and obtaining the first target information from a shared storage space through the second process based on the second information acquisition request; The shared storage space stores current rotation speed information of a plurality of fans managed by the chassis management controller; and the second process is an intelligent platform management interface process.
6. The method according to claim 5, characterized in that The second information acquisition response is: an original equipment manufacturer intelligent platform management interface response; an original equipment manufacturer intelligent platform management interface response; Feeding back the first target information to the target device through a second information acquisition response includes: Based on an intelligent platform management interface (IPMI) protocol specification, encapsulating the first target information into instructions to obtain an OEM IPMI response corresponding to the OEM IPMI request; and Sending the OEM intelligent platform management interface response to the first process, and converting the OEM intelligent platform management interface response into a first information acquisition response through the first process; The first information acquisition response is sent to the target device through the representational state transfer interface.
7. The method according to claim 6, characterized in that The first information acquisition response is: a Representational State Transfer Hypertext Transfer Protocol response; The converting the OEM intelligent platform management interface response into a first information acquisition response through the first process includes: Parsing the OEM intelligent platform management interface response to obtain the first target information, and encapsulating the first target information into instructions through a first process based on a representational state transfer interface protocol specification to obtain a representational state transfer hypertext transfer protocol response corresponding to the OEM intelligent platform management interface response; The first process is used to convert the response of the intelligent platform management interface protocol into a response of the hypertext transfer protocol; and the first information acquisition response carries the first target information.
8. The method according to claim 5, characterized in that Before forwarding the second information acquisition request to the second process and obtaining the first target information from the shared storage space based on the second information acquisition request by the second process, the method further includes: Obtaining, by the second process, from at least one baseboard management controller communicatively connected to the chassis management controller, the required fan speed calculated by each baseboard management controller; and Determining the maximum fan speed as the speed of each fan among the plurality of fans installed in the cabinet; The maximum fan speed is: the maximum required fan speed among multiple required fan speeds calculated by the at least one baseboard management controller; and the number of fans installed in the cabinet is greater than or equal to a preset minimum number of fans.
9. The method according to claim 8, characterized in that The step of obtaining the required fan speed calculated by each baseboard management controller from at least one baseboard management controller in communication with the chassis management controller through the second process includes: Sending an intelligent platform management interface data acquisition request to the at least one baseboard management controller in sequence through the second process, and receiving an intelligent platform management interface data acquisition response fed back by each baseboard management controller; The intelligent platform management interface data acquisition response includes the required fan speed calculated by the baseboard management controller.
10. The method according to claim 8, characterized in that After determining the maximum fan speed as the speed of each fan among the plurality of fans installed in the cabinet, the method further includes: Based on the rotation speed of each fan among the plurality of fans, the rotation speed of each fan is controlled by a programmable system on a chip, and the rotation speed information of each fan is stored in the shared storage space.
11. The method according to claim 8, characterized in that The baseboard management controller calculates the required fan speed through a sensor according to a heat dissipation strategy.
12. The method according to claim 9, characterized in that The number of fans installed in the cabinet is greater than or equal to a preset minimum number of fans; the cabinet includes a plurality of full-width node installation positions; A full-width node installation position can install one full-width computing node, or two half-width computing nodes; the installation rules of computing nodes in the cabinet include: bottom first, then top, left first, then right, and when there are half-width computing nodes, the full-width computing nodes are installed first, and then the half-width computing nodes are installed; when the number of nodes installed in the cabinet is less than or equal to the preset number of nodes, the number of fans installed in the cabinet is equal to the preset minimum number of fans; when the number of nodes installed in the cabinet is greater than the preset number of nodes, the number of fans installed in the cabinet is positively correlated with the number of installed nodes.
13. The method according to claim 12, characterized in that For a cabinet that includes 8 full-width node mounting positions and can support 10 fans, the preset number of nodes is 5, and the preset minimum number of fans is 6.
14. The method according to claim 4, characterized in that The method further comprises: receiving a third information acquisition request sent by the target device, and converting the third information acquisition request into a fourth information acquisition request through the first process; and Based on the controller identifier carried in the third information acquisition request, sending the fourth information acquisition request to a target controller corresponding to the controller identifier; Among them, the third information acquisition request is: a representational state transfer hypertext transfer protocol request; the fourth information acquisition request is an original equipment manufacturer intelligent platform management interface request; the target controller is a chassis management controller on another chassis that is communicatively connected to the chassis management controller.
15. The method according to claim 14, characterized in that After sending the fourth information acquisition request to the target controller, the method further includes: receiving a fourth information acquisition response including second target information fed back by the target controller, and converting the fourth information acquisition response into a third information acquisition response through the first process; and sending the third information acquisition response including the second target information to the target device; The second target information includes: rotation speed information of multiple fans managed by the target controller.
16. A cabinet fan speed management device, characterized in that: Applied to a chassis management controller, the device comprises: A data transmission module, configured to receive a first information acquisition request sent by a target device; a data processing module, configured to parse the first information acquisition request and determine at least one fan identifier indicated by the first information acquisition request; a request processing module, configured to encapsulate the at least one fan identifier into a command based on an intelligent platform management interface protocol specification to obtain a second information acquisition request corresponding to the first information acquisition request; an information acquisition module, configured to acquire first target information based on the second information acquisition request; and The data transmission module is further configured to feed back the first target information to the target device via a second information acquisition response; Among them, the first information acquisition request is sent by the target device through the representational state transfer interface of the chassis management controller; the second information acquisition response is sent by the chassis management controller to the target device through the representational state transfer interface; the first target information includes: the fan speed corresponding to each fan identifier in the at least one fan identifier; the first information acquisition request and the second information acquisition request are requests of different protocols.
17. A cabinet fan speed management system, characterized in that: The system includes a chassis management controller, at least one baseboard management controller connected to the chassis management controller via Ethernet communication, and multiple fans installed on the cabinet; the chassis management controller is used to execute the steps of the cabinet fan speed management method as described in any one of claims 1 to 15.
18. The system according to claim 17, wherein: The system architecture also includes a target device for real-time monitoring of the rotational speed of fans installed on the cabinet through the chassis management controller's web page. The target device is communicatively connected to the chassis management controller through the chassis management controller's representational state transfer interface.
19. An electronic device, characterized in that: It includes a memory and one or more processors, the memory stores computer-readable instructions that can be run on the processor, and when the processor executes the computer-readable instructions, it implements the steps of the cabinet fan speed management method as described in any one of claims 1 to 15.
20. A non-volatile computer-readable storage medium, characterized in that Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor, the steps of the cabinet fan speed management method according to any one of claims 1 to 15 are implemented.
Citation Information
Patent Citations
Complete machine monitoring management method, system and device for RACK 3.0 cabinet
CN110543399A
Cabinet fan rotating speed management method and device, storage medium and electronic equipment
CN117992314A
Peripheral device firmware update using rest over IPMI interface firmware update module
US10409584B1
Peripheral device firmware update using rest over IPMI interface firmware shell utility
US10416988B1
Firmware update using rest over IPMI interface
US10572242B1