Component management system and method
By introducing logic controllers into public boards, the problems of strong dependence between multiple server nodes, limited information acquisition and poor timeliness are solved, and the reliability and timeliness of component management are improved.
Patent Information
- Application Number
- CN202410992943.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-23
- Publication Date
- 2024-12-17
AI Technical Summary
In the prior art, when managing public components, multiple server nodes have problems such as strong inter-node dependence, limited information acquisition, and poor timeliness, resulting in poor component management reliability.
By introducing a logical controller into the public board, establishing connections between all server nodes and components, each server node can independently generate component management requests, and centralized processing through the logical controller to eliminate dependence on a single master node, and realize Decoupling between nodes improves the timeliness and reliability of information acquisition.
Decoupling between server nodes is achieved, dependence between nodes is reduced, timeliness and reliability of component information acquisition is improved, and flexibility and reliability of component management is enhanced.
Smart Images

Figure CN119149455A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a component management system and method. Background Art
[0002] In order to achieve higher energy efficiency, easy management and maintenance, and convenient expansion, multiple server nodes generally have a public board as a transfer board for public components. How each server node can efficiently and conveniently manage public components is an important issue that needs to be urgently resolved in the industry.
[0003] At present, each server node usually controls common components such as power supply unit (PSU), temperature sensor, power consumption monitoring chip, etc. through the highly universal integrated circuit bus (Inter-Integrated Circuit, I2C). In this hardware circuit, only one server node can access the common components at the same time, which leads to the distinction between master nodes and slave nodes. In the component management process, only the master node can directly access the common components to obtain component data. For other slave nodes, they can only rely on the master node to obtain component data of the common components. The nodes are highly dependent, information acquisition is limited, and timeliness is poor, which leads to poor reliability of component management. Summary of the invention
[0004] The present invention provides a component management system and method, which are used to solve the defects in the prior art that the nodes are strongly dependent, information acquisition is limited, and timeliness is poor, which leads to poor reliability of component management. The method realizes decoupling between server nodes, reduces the dependence between nodes, improves the flexibility and timeliness of information acquisition, and thus improves the reliability of component management.
[0005] The present invention provides a component management system, comprising: a plurality of server nodes and a logic controller, wherein the logic controller comprises a plurality of register modules; The logic controller is connected to each of the server nodes and each component respectively; For each server node, the server node is used to generate a component management request of the component to be controlled according to the management information corresponding to the component to be controlled among the plurality of components, and send the component management request to the logic controller; The logic controller is used to obtain component information and management requirements of the component to be controlled according to the component management request, determine a target register in the multiple register modules according to the component information and the management requirements, and call the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0006] According to a component management system provided by the present invention, the logic controller is further used for: According to the component information, obtaining a candidate register module corresponding to the component to be controlled from the plurality of register modules; Determining the management type of the component to be controlled according to the management requirement; According to the management type, the target register is obtained in the candidate register module.
[0007] According to a component management system provided by the present invention, the logic controller is further used for: When it is determined according to the management requirement that the management type of the component to be controlled is a write operation type, obtaining a write register in the candidate register module and using the write register as the target register; Acquire write operation information of the component to be controlled according to the management requirement and the component information; Generate target write information according to the write operation information and the node information of the target server node that sends the component management request; Writing the target write information into the write register; Acquire the current management status of the component to be controlled; According to the current management state, determining whether the write operation of the component to be controlled is occupied; In the case where it is determined that the write operation of the component to be controlled is occupied, returning to the step of obtaining the current management state of the component to be controlled until it is determined that the write operation of the component to be controlled is not occupied; The target write information in the write register is written into the component to be controlled, so that the component to be controlled performs a management operation corresponding to the write operation information.
[0008] According to a component management system provided by the present invention, the logic controller is further used for: When it is determined that the target write information is successfully written into the component to be controlled, the target write information in the write register is synchronized to an address corresponding to the read register in the candidate register module.
[0009] According to a component management system provided by the present invention, the logic controller is further used for: According to the storage address corresponding to the component to be controlled, polling and reading the component information of the component to be controlled in the read register and the write register of the component to be controlled; When it is determined according to the current management state of the component to be controlled that the write operation of the component to be controlled is not occupied, the read component information is updated to the address corresponding to the read register in the candidate register module.
[0010] According to a component management system provided by the present invention, the logic controller is further used for: When it is determined according to the management requirement that the management type of the component to be controlled is a read operation type, obtaining a read register in the candidate register module and using the read register as the target register; According to the management requirement and the component information, obtaining read operation information of the component to be controlled; According to the read operation information, the read register is called to read the target information of the component to be controlled, and the target information is sent to a target server node, where the target server node is a server node that sends the component management request.
[0011] According to a component management system provided by the present invention, the logic controller is further used for: According to the read operation information, read the component information and / or write information of the component to be controlled in the read register to obtain first information; According to the first information, determining whether the read task corresponding to the read operation information is completed; In the case where it is determined that the read task is not completed, calling the read register, and reading second information from the read register and the write register of the component to be controlled according to the read operation information and the storage address corresponding to the component to be controlled; The target information is acquired according to the first information and the second information.
[0012] The present invention also provides a component management method, which is applied to any of the component management systems described above, and the method comprises: According to the component management request sent by the target server node, the component information and management requirements of the component to be controlled are obtained; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled; Determining a target register among a plurality of register modules of a logic controller according to the component information and the management requirement; According to the component information and the management requirements, as well as the current management state of the component to be controlled, the target register is called to perform management operations on the component to be controlled.
[0013] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, any of the component management methods described above is implemented.
[0014] The present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the component management method described in any one of the above is implemented.
[0015] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the component management method described above is implemented.
[0016] The component management system and method provided by the present invention establish connections between all server nodes and components through a logic controller, so that each server node can generate a component management request based on the management information of the component to be controlled and send it to the logic controller. The logic controller obtains the component information and management requirements of the component to be controlled based on these requests, and determines the target register in multiple register modules to call the target register to perform management operations on different components. During the entire management process, the logic controller centrally processes the management operation requests of all server nodes for the components, eliminating the dependence on a single master node, and realizing decoupling between server nodes, reducing the dependence between server nodes, so that each server node can independently request to manage components, thereby improving the timeliness, reliability, and flexibility of component information acquisition, thereby effectively improving the reliability of component management. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] In order to more clearly illustrate the technical solutions in the present invention 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 invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0018] Figure 1 It is a structural diagram of a component management system of a multi-node server provided by related technology.
[0019] Figure 2 It is a structural diagram of the component management system provided by the present invention.
[0020] Figure 3 It is a flowchart of the read operation management provided by the present invention.
[0021] Figure 4 It is a flowchart of the read operation management provided by the present invention.
[0022] Figure 5 It is a flowchart of the component management method provided by the present invention.
[0023] Figure 6 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0024] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0025] With the rapid development of cloud computing applications, informatization and intelligence have gradually covered various fields. People's daily work and life are increasingly dependent on the Internet for communication, resulting in an explosive growth in the amount of network data. Servers, as core equipment for data processing and storage, are in increasing demand year by year, and the requirements for performance and stability are also becoming increasingly stringent.
[0026] Servers, as a special type of computer, run faster, have a stronger load capacity, and are relatively more expensive than ordinary computers. In a network environment, servers play the role of providing computing or application services to other clients. They have high-speed central processing unit (CPU) computing power, powerful input / output (I / O) external data throughput, and better scalability.
[0027] As the core component of the server, the CPU has achieved rapid performance improvement with the advancement of semiconductor technology, optimization of architecture, and the continuous increase in the number of cores, which has also brought new changes to the architectural design of servers. For a single CPU with hundreds of cores, in computing-intensive application scenarios, the server often does not need to be equipped with 2, 4 or even 8 CPUs like traditional servers, but instead turns to a single-channel multi-node server architecture to achieve higher energy efficiency and efficiency.
[0028] In order to achieve higher energy efficiency, easy management and maintenance, and convenient expansion, multiple server nodes generally have a public board as a transfer board for public components. How each server node can efficiently and conveniently manage public components is an important issue that needs to be urgently resolved in the industry.
[0029] To achieve this function, it usually brings additional cost and other limitations. For example, in the current common multi-server nodes, the public board is used as a bridge between the server node and the public components. Figure 1 As shown in the figure, each server node usually controls common components such as power supply unit (PSU), temperature sensor, power consumption monitoring chip, etc. through the highly universal integrated circuit bus (Inter-Integrated Circuit, I2C). Fans are generally controlled by sending instructions to CPLD (Complex Programmable Logic Device), which directly outputs pulse width modulation (PWM) signals to control fan speed, reducing the number of IOs used by the baseboard management controller (BMC) of each server node to directly output PWM signals.
[0030] In order to ensure that the BMC of each server node can access the public components through I2C, it is necessary to connect the I2C of the BMC and the I2C of the public components. In order to prevent access conflicts, it is necessary to use a multiplexer (MUX) chip or a switch chip to isolate the I2C signal of the BMC, such as Figure 1 The MUXn in the figure only indicates the logic function, and more chips may be needed to realize the function. As a result, in this hardware circuit, only one server node can access the public components at the same time, which leads to the distinction between master nodes and slave nodes. Only the master node can access the public components, and the public components are invisible to other slave server nodes, which means that the information of the public components cannot be used to update the behavior of the server in real time, such as adjusting the cooling strategy through real-time temperature and power consumption information.
[0031] In order to solve the above problems, there are generally two solutions: the first is that the BMC of the master node synchronizes data to the BMC of the slave node, and the information of the common components is obtained through data interaction between the BMCs; the second is that the master node updates the common component data to the register of the CPLD, and other slave nodes access the CPLD to read the register to obtain the information of the common components.
[0032] From the above description, it can be seen that the first method of synchronizing data between the BMCs of each node requires additional hardware or software support, which is more complicated to implement, and the slave node can only read and write public components through the master node BMC, which has poor timeliness; the second method is that the master node BMC writes the information of the public components into the register of the CPLD, which solves the problem of low timeliness, but the slave node can only read the data written by the master node to the register, and the data not written by the master node cannot be obtained, and the slave node cannot directly write data to the public components to update and maintain the components.
[0033] Therefore, in the current two design schemes, although it is possible to obtain some information about common components, both define the distinction between master nodes and slave nodes. The server nodes are not decoupled and are dependent on each other. In addition, the definition of master nodes and the handling of master node damage are also relatively complicated. Information acquisition is limited and timeliness is poor, which leads to poor reliability of component management.
[0034] To solve the above technical problems, this embodiment provides a component management system, which connects all the signals output by the server nodes to the logic controller, and the downstream part is connected to the public components by the logic controller. The logic controller is used as a bridge between the server nodes and the public components to transfer data, so that each server node can obtain public component information without conflict or interference with each other. In the most commonly used scenario of obtaining public component information, multiple server nodes can access public components at the same time; the server nodes are designed to be decoupled and do not need to rely on each other. There is no distinction between master nodes and slave nodes between the nodes, and they have consistent permissions; each server node can implement operations such as updating and maintaining public components, thereby solving the problems of strong dependence between nodes, limited information acquisition, and poor timeliness, and effectively improving the poor reliability of component management.
[0035] Figure 2 is a schematic diagram of the structure of the component management system provided by the present invention; Figure 2 As shown, the system includes a plurality of server nodes 210 and a logic controller 220. The logic controller 220 includes a plurality of register modules. The logic controller 220 is connected to each of the server nodes 210 and each of the components 230, respectively.
[0036] The components here refer to common components shared or used by multiple server nodes, including but not limited to power supplies, temperature sensors, power consumption monitors, fans, etc., which are not specifically limited in this embodiment.
[0037] The logic controller 220 is a controller configured in the public board for executing the read and write logic between the server node 210 and each component 230. The logic controller can be a CPLD, a microcontroller unit (MCU), etc. This embodiment does not specifically limit this. The following takes the logic controller as a CPLD as an example to explain the component management system provided in this embodiment.
[0038] The logic controller is internally configured with a corresponding register module for each component, for example, the logic controller includes other register modules such as a power register module, a temperature sensor register module, a power consumption monitor register module, and a fan register module. Each register module includes at least a read register for reading stored data and a write register for writing data, so as to implement the read and write logic between the server node 210 and each component 230.
[0039] Each server node communicates with the logic controller via a set of interface signals, and a register module corresponding to each component in the logic controller is connected to each component accordingly.
[0040] Therefore, from the perspective of hardware connection, in order to ensure that there is no conflict when the server node accesses many public components through I2C, the server node needs to output multiple I2C connections to the public components. At the same time, multiple nodes need to be isolated by MUX chips to prevent more than two nodes from accessing components at the same time and causing conflicts and errors. This will result in a large number of interconnection signals between the server node and the public board, and the public board itself needs to be equipped with many MUX chips, which will complicate the hardware design and control logic.
[0041] In the component management system provided by this embodiment, each server node only needs at least one set of signals to be interconnected with the common board logic controller, which reduces the number of interface signals. The signal type can be configured by the logic controller, which can be I2C, or other buses such as the Serial General Purpose Input Output (SGPIO) bus and the Serial Peripheral Interface (SPI) bus to improve the efficiency of data transmission. In the design of the public board, the actual physical MUX chip is removed, and the logic controller directly performs the read and write operations with the public components. One or more sets of I2C buses can be output according to actual needs to connect with standard public components, and for components such as fans that are not directly controlled by I2C, the CPLD outputs corresponding signals according to actual applications.
[0042] From the perspective of software implementation, CPLD defines the corresponding registers internally according to the actual public components, and the registers are divided into two parts: read and write. The read register definition is that CPLD reads all the registers of a certain component and saves them in it. When a server node needs to access the public component to obtain information, CPLD directly returns the data saved in the internal register without the need for the server to interact directly with the component. In this way, each server node can obtain information from CPLD at the same time without conflict. The write register is the operation of the server node forwarded by CPLD. For example, if a server node wants to update and maintain a public component, when writing data, the data is first written to the CPLD register, and then the CPLD monitors the current management status of the public component, and selects the corresponding method to write the data into the public component according to the current management status of the monitored public component.
[0043] In summary, from the perspective of hardware implementation and software implementation, the component management system provided in this embodiment is a new interconnection method between multiple server nodes and public components, which effectively realizes the decoupling design between each server node, does not need to rely on each other, and there is no distinction between master nodes and slave nodes between nodes. They have consistent permissions and can flexibly manage public components. Each server node does not need to perform special processing to complete flexible and high-real-time read and write operations on public components, and there is no conflict or interference between each other. In the most commonly used scenario of obtaining public component information, multiple server nodes can access public components at the same time, thereby achieving the reliability of public component management and effectively solving many problems in related technologies: multi-node servers must be divided into master nodes and slave nodes, only master nodes can operate public components, while slave nodes cannot operate public components; multi-node servers access public components through MUX chips, and only one node can access public components at the same time; multi-node server public component data requires synchronization or special processing between BMCs.
[0044] For each server node, the server node is used to generate a component management request of the component to be controlled according to the management information corresponding to the component to be controlled among the multiple components, and send the component management request to the logic controller.
[0045] Optionally, during the component management process, the server node is responsible for generating component management requests and sending them to the logic controller, so that the logic controller performs corresponding management operations on the components to be managed and controlled according to these requests, which is specifically implemented by the server node executing the following steps: When at least one server node needs to control a component, the server node first collects management information of the components to be controlled among the multiple components it manages. The management information includes but is not limited to the identification, type, status, configuration requirements, etc. of the component, which is not specifically limited in this embodiment.
[0046] The server node generates a component management request for the component to be controlled based on the acquired management information. The component management request is used to request a management operation of the component to be controlled. The server node sends the generated component management request to the logic controller for further processing.
[0047] The logic controller is used to obtain component information and management requirements of the component to be controlled according to the component management request, determine a target register in the multiple register modules according to the component information and the management requirements, and call the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0048] Optionally, after obtaining the component management request sent by at least one server node, the logic controller may perform corresponding management operations on the component to be controlled according to these requests, which is specifically implemented by the logic controller executing the following steps: After receiving the component management request from at least one server node, the logic controller parses the component management request to extract the component information and management requirements of the component to be controlled. In addition, based on the extracted component information and management requirements, a target register that can realize the corresponding management requirements for the component to be controlled is determined from multiple register modules inside the logic controller.
[0049] Here, the method of determining the target register includes, implementing it based on multiple logical judgments, or implementing it based on pre-trained recognition model recognition; for example, for multiple logical judgments, it can be that based on the component information, the register module corresponding to the component to be controlled is first obtained, and then based on the management requirements, the register that can meet the management requirements is obtained in the register module corresponding to the component to be controlled as the target register; for example, for recognition model recognition implementation, it can be that a large number of component information and management requirements corresponding to sample components, as well as management register labels corresponding to the sample components are collected, and the component information and management requirements corresponding to the sample components are used as samples, and the management register labels corresponding to the sample components are used as labels, and the neural network model is iteratively trained to obtain an recognition model of the management register that can output component management based on the component information and management requirements corresponding to the component; then, the component information and management requirements of the component to be controlled are input into the recognition model to obtain the target register that can implement the management of the component to be controlled.
[0050] It should be noted that when selecting a method for determining the target register, it can be adaptively selected based on the amount of computing resources of the management system and the number of historical register selection records, the target register can be determined based on multiple logical judgments, or the target register can be determined based on pre-trained recognition model recognition, so as to improve the performance, stability and intelligence level of the management system while reducing maintenance costs.
[0051] In some embodiments, the logic controller is further configured to: According to the component information, obtaining a candidate register module corresponding to the component to be controlled from the plurality of register modules; Determining the management type of the component to be controlled according to the management requirement; According to the management type, the target register is obtained in the candidate register module.
[0052] Optionally, the logic controller maintains a mapping relationship table between component information and register modules, and a mapping relationship table between management requirements and registers; therefore, the logic controller can determine the target register based on multiple logic judgments, and specifically perform the following steps to achieve: Based on the input component information, the logic controller searches for the register module corresponding to the component information in the mapping relationship table between the component information and the register module to obtain the candidate register module; then, the logic controller determines the management type required for component management based on the management requirements, and the management type includes a read operation type or a write operation type, and checks the registers in the candidate register module that support the required management type as the target register based on the mapping relationship table between the management requirements and the registers, as well as the management type. For example, if the component information includes a power supply identifier for uniquely marking the power supply, the corresponding candidate register module is the register module corresponding to the power supply, that is, the power supply register module; if the management type is a read operation type, the corresponding target register is the read register in the power supply register module.
[0053] In the system provided by this embodiment, the logic controller not only improves the search efficiency through multi-layer logic judgment, but also enhances the flexibility, maintainability and stability of the system, and optimizes resource utilization, thereby improving the performance of component management.
[0054] Optionally, after determining the target register that can realize the management requirements of the component to be controlled, the logic controller may determine the management strategy of the component to be controlled by combining the component information, management requirements and the current management status of the component to be controlled, and call the target register to perform corresponding management operations on the component to be controlled according to the corresponding management strategy. The so-called management operations include but are not limited to reading component status, writing and modifying configuration parameters, writing and executing control commands, etc.
[0055] After the management operation is completed, the logic controller can feed back the operation result to the server node so that the server node can understand whether the management operation is successful or not and perform subsequent processing accordingly.
[0056] The system provided in this embodiment establishes connections between all server nodes and components through a logic controller, so that each server node can generate a component management request based on the management information of the component to be controlled and send it to the logic controller. The logic controller obtains the component information and management requirements of the component to be controlled based on these requests, and determines the target register in multiple register modules to call the target register to perform management operations on different components. During the entire management process, the logic controller centrally handles the management operation requests of all server nodes for components, eliminating the dependence on a single master node, achieving decoupling between server nodes, reducing the dependence between server nodes, so that each server node can independently request to manage components, improving the timeliness, reliability, and flexibility of component information acquisition, and thereby effectively improving the reliability of component management.
[0057] In some embodiments, the logic controller is further configured to: When it is determined according to the management requirement that the management type of the component to be controlled is a write operation type, obtaining a write register in the candidate register module and using the write register as the target register; Acquire write operation information of the component to be controlled according to the management requirement and the component information; Generate target write information according to the write operation information and the node information of the target server node that sends the component management request; Writing the target write information into the write register; Acquire the current management status of the component to be controlled; According to the current management state, determining whether the write operation of the component to be controlled is occupied; In the case where it is determined that the write operation of the component to be controlled is occupied, returning to the step of obtaining the current management state of the component to be controlled until it is determined that the write operation of the component to be controlled is not occupied; The target write information in the write register is written into the component to be controlled, so that the component to be controlled performs a management operation corresponding to the write operation information.
[0058] Figure 3 It is a flowchart of the write operation management provided by the present invention.
[0059] It should be noted that the write register is used by the logic controller to forward the write operation information of the server node. For example, when a server node needs to update and maintain a certain common component, it can be implemented through the corresponding write register. Figure 3 As shown, when the management type of the component to be controlled is a write operation type, the logic controller can perform the following interactive steps with the server node and the component to implement component management: The server node initiates a write operation request to the component to be controlled, and sends it to the logic controller via the BMC or CPLD inside the server node.
[0060] When the logic controller receives a write operation request and determines that the management type of the component to be controlled is a write operation type based on the management requirements obtained from the write operation request, it selects a write register from the candidate register module as a target register.
[0061] Subsequently, the logic controller will obtain specific write operation information of the component to be controlled according to the management requirements and component information. The so-called write operation information may include the data content to be written and related operation instructions, etc., which is not specifically limited in this embodiment.
[0062] Subsequently, the logic controller generates target write information based on the write operation information and the node information of the target server node that sends the component management request, so that when the component or server node reads the write information, it can determine and record which server node wrote the write information.
[0063] The logic controller will then write the target write information first into the previously selected write register.
[0064] After writing data to the write register, the logic controller will obtain the current management status of the component to be controlled to determine whether the write operation of the component to be controlled is occupied, that is, whether the component to be controlled is performing other write operations. If the component to be controlled is performing other write operations, the logic controller will wait until the write operation of the component is not occupied, that is, until the previous write operation instruction is completed.
[0065] Once the write operation of the component to be controlled is not occupied, the logic controller will write the target write information in the write register into the component to be controlled, so that the component to be controlled can perform the write operation of the corresponding data content to be written according to the write operation information.
[0066] In addition, in the entire component management process, the logic controller is a key device for completing component management. In order to adapt to the application scenarios of component control of multiple service nodes, the logic controller can also optimize the data storage format of the register; for example, in the write register, it can only record the write information of the most recent write of a server node to ensure the timeliness and accuracy of the data in the write register, as well as to ensure the resource optimization of the write register; for example, in the write register, the write information can be saved in a specific format to ensure data structuring, improve data processing efficiency, enhance data consistency and facilitate data exchange and sharing.
[0067] The system provided in this embodiment uniformly and adaptively writes component information through optimized interconnection between multiple server nodes and the logic controller of the public board, which not only reduces the number of interface signals, which can reduce the design complexity and cost to a certain extent, but also realizes the decoupling of multiple server nodes in writing information of public components, does not distinguish between master and slave nodes, simplifies the server node firmware design, and effectively avoids the problem of conflicts when multiple node servers access public components, thereby effectively improving the component management performance.
[0068] In some embodiments, the logic controller is further configured to: When it is determined that the target write information is successfully written into the component to be controlled, the target write information in the write register is synchronized to an address corresponding to the read register in the candidate register module.
[0069] Optionally, when the logic controller determines that the target write information is successfully written to the component to be controlled, the target write information in the write register may be synchronously updated to the address corresponding to the read register in the candidate register module; accordingly, the data format of the read register may be defined as the value of the current register and the value written by each node server, so that each server node can determine and record which server node finally modified the current read register after reading the read register back.
[0070] The system provided in this embodiment uses a logic controller to synchronize the write information written in the write register to the read register in real time, which can reduce the frequency of component access, reduce the reading delay of the write information, and ensure the accuracy and consistency of the data. This not only improves the efficiency of data writing, but also enhances the reliability and stability of the component management system.
[0071] In some embodiments, the logic controller is further configured to: According to the storage address corresponding to the component to be controlled, polling and reading the component information of the component to be controlled in the read register and the write register of the component to be controlled; When it is determined according to the current management state of the component to be controlled that the write operation of the component to be controlled is not occupied, the read component information is updated to the address corresponding to the read register in the candidate register module.
[0072] Optionally, the logic controller can also update the data in the read register corresponding to the component in real time by polling the read register and write register of the component to ensure that the component data information obtained by each server node is the latest and accurate value, which can be implemented by executing the following steps: The logic controller of the public board regularly polls and reads the component information of the component to be controlled in the read register and write register of the component to be controlled according to the storage address corresponding to the component to be controlled, and judges whether the write operation of the component to be controlled is occupied in real time according to the current management status of the component to be controlled. If there is no write operation occupied, the read component information is updated in real time to the address corresponding to the read register in the candidate register module to ensure that the component data information obtained by each server node is the latest and accurate value.
[0073] In some embodiments, the logic controller is further configured to: When it is determined according to the management requirement that the management type of the component to be controlled is a read operation type, obtaining a read register in the candidate register module and using the read register as the target register; According to the management requirement and the component information, obtaining read operation information of the component to be controlled; According to the read operation information, the read register is called to read the target information of the component to be controlled, and the target information is sent to the component to be controlled.
[0074] Figure 4 It is a flowchart of the read operation management provided by the present invention.
[0075] It should be noted that the read register is a process where the logic controller reads out all the component information stored in the register inside a component and stores it therein. When a server node needs to access a public component to obtain information, the logic controller directly returns the data stored in its internal read register without the need for the server node to interact directly with the component, so that each server node can obtain information from the logic controller at the same time without conflict, ensuring the flexibility and timeliness of information acquisition, thereby improving the reliability of component management. Figure 4 As shown, when the management type of the component to be controlled is a read operation type, the logic controller can perform the following interactive steps with the server node and the component to implement component management: The server node initiates a read operation request for the component to be controlled and sends it to the logic controller via the BMC or CPLD inside the server node.
[0076] When the logic controller receives the read operation request and determines that the management type of the component to be controlled is a read operation type according to the management requirements obtained by the read operation request, it will select a read register from the candidate register module as the target register. Subsequently, the logic controller will obtain specific read operation information of the component to be controlled according to the management requirements and component information. The so-called read operation information may include a read operation instruction, the content of the data to be read, etc., which is not specifically limited in this embodiment.
[0077] Subsequently, the logic controller directly reads data from the local storage of the read register according to the read operation information, and / or calls the read register to read in real time from the register of the component to be controlled, and then reads data from the local storage of the read register to obtain the target information of the component to be controlled that needs to be read, and sends the target information to the target server node that sends the component management request, so that the target server node can further manage the component to be controlled based on the target information.
[0078] The system provided in this embodiment uniformly and adaptively reads component information through optimized interconnection between multiple server nodes and the logic controller of a public board. There is no need for server nodes to directly interact with components, so that each server node can obtain information from the logic controller at the same time without conflict. This not only reduces the number of interface signals, which can reduce design complexity and costs to a certain extent, but also realizes a decoupled reading method for multiple server nodes to read information of public components, does not distinguish between master and slave nodes, simplifies the server node firmware design, and effectively avoids the problem of conflicts when multiple node servers access public components, thereby effectively improving component management performance.
[0079] In some embodiments, the logic controller is further configured to: According to the read operation information, read the component information and / or write information of the component to be controlled in the read register to obtain first information; According to the first information, determining whether the read task corresponding to the read operation information is completed; In the case where it is determined that the read task is not completed, calling the read register, and reading second information from the read register and the write register of the component to be controlled according to the read operation information and the storage address corresponding to the component to be controlled; The target information is acquired according to the first information and the second information.
[0080] Optionally, in order to ensure the integrity and quality of data reading, the logic controller may first read data from the local storage of the read register according to the read operation information. If the read task is not completed, the read register is continued to be called to read data from the register of the component to be controlled in real time, and then read data from the local storage of the read register. The specific implementation steps are as follows: The logic controller first reads the first information of the component to be controlled directly from the component information updated by periodic polling and / or the write information updated by writing synchronization in the read register according to the read operation information; Subsequently, based on the first information, it is determined whether the read task corresponding to the read operation information is completed; the so-called determination includes detecting the information integrity of the first information (such as whether the length meets the expected length of the data to be read of the read operation information), and detecting the consistency of the first information (such as checking whether the content of the first information is consistent with the content of the data to be read of the read operation information), so as to determine whether the data to be read of the read operation information is completely read out.
[0081] When it is determined that the data to be read according to the obtained read operation information is completely read out, it is determined that the read task is completed. At this time, the first information is directly used as the target information and returned to the target server node.
[0082] When it is determined that the data to be read according to the read operation information has not been completely read out, it is determined that the read task is not completed. At this time, the logic controller can identify the storage address corresponding to the component to be controlled to call the read register, and read the second information from the read register and the write register of the component to be controlled according to the read operation information and the storage address corresponding to the component to be controlled, and integrate the first information and the second information to obtain the complete target information that the target server node needs to read.
[0083] The system provided in this embodiment performs unified reading of information at multiple levels and angles through a logic controller, which not only ensures the integrity and correctness of information reading, but also realizes unified adaptive reading of component information. There is no need for server nodes to interact directly with components, so that each server node can obtain information from the logic controller at the same time without conflict. This not only reduces the number of interface signals, which can reduce design complexity and cost to a certain extent, but also realizes a method of decoupling multiple server nodes to read information of common components, does not distinguish between master and slave nodes, simplifies the server node firmware design, and effectively avoids the problem of conflicts when multiple node servers access common components, thereby effectively improving component management performance.
[0084] The component management method provided by the present invention is described below. The component management method described below and the component management system described above can be referenced to each other.
[0085] Figure 5is a flow chart of the component management method provided by the present invention; Figure 5 As shown, the method is implemented by the component management system provided by the above embodiment, and the method includes step 510, step 520 and step 530.
[0086] Step 510, obtaining component information and management requirements of the component to be controlled according to the component management request sent by the target server node; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled.
[0087] Step 520 , determining a target register in a plurality of register modules of a logic controller according to the component information and the management requirement.
[0088] Step 530: Call the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0089] Optionally, during the component management process, the server node is responsible for generating component management requests and sending them to the logic controller, so that the logic controller performs corresponding management operations on the components to be managed and controlled according to these requests, which is specifically implemented by the server node executing the following steps: When at least one server node needs to perform component control, the server node first collects management information of the components to be controlled that need to be managed and controlled among the multiple components managed by the server node.
[0090] The server node generates a component management request for the component to be controlled based on the acquired management information. The component management request is used to request a management operation of the component to be controlled. The server node sends the generated component management request to the logic controller for further processing.
[0091] Optionally, after obtaining the component management request sent by at least one server node, the logic controller may perform corresponding management operations on the component to be controlled according to these requests, which is specifically implemented by the logic controller executing the following steps: After receiving the component management request from at least one server node, the logic controller parses the component management request to extract the component information and management requirements of the component to be controlled. In addition, based on the extracted component information and management requirements, a target register that can realize the corresponding management requirements for the component to be controlled is determined from multiple register modules inside the logic controller.
[0092] After determining the target register that can realize the management requirements of the component to be controlled, the logic controller can determine the management strategy of the component to be controlled by combining the component information, management requirements and the current management status of the component to be controlled, and call the target register to perform the corresponding management operation on the component to be controlled according to the corresponding management strategy. After completing the management operation, the logic controller can feed back the operation result to the server node so that the server node can understand the success or failure of the management operation and perform subsequent processing accordingly.
[0093] The method provided in this embodiment establishes connections between all server nodes and components through a logic controller, so that each server node can generate a component management request based on the management information of the component to be controlled and send it to the logic controller. The logic controller obtains the component information and management requirements of the component to be controlled based on these requests, and determines the target register in multiple register modules to call the target register to perform management operations on different components. During the entire management process, the logic controller centrally processes the management operation requests of all server nodes for the components, eliminating the dependence on a single master node, and realizing decoupling between server nodes, reducing the dependence between server nodes, so that each server node can independently request to manage components, thereby improving the timeliness, reliability, and flexibility of component information acquisition, thereby effectively improving the reliability of component management.
[0094] The method provided by the present invention is executed based on the systems provided in the above embodiments. Please refer to the above embodiments for the specific process and detailed contents, which will not be repeated here.
[0095] Figure 6 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 6 As shown, the electronic device may include: a processor 610, a communication interface 620, a memory 630 and a communication bus 640, wherein the processor 610, the communication interface 620 and the memory 630 communicate with each other through the communication bus 640. The processor 610 may call the logic instructions in the memory 630 to execute the component management method, which includes: obtaining component information and management requirements of the component to be controlled according to the component management request sent by the target server node; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled; determining the target register in multiple register modules of the logic controller according to the component information and the management requirements; calling the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0096] In addition, the logic instructions in the above-mentioned memory 630 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, 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 a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.
[0097] On the other hand, the present invention also provides a computer program product, which includes a computer program, and the computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the component management method provided by the above-mentioned methods, and the method includes: obtaining component information and management requirements of the component to be controlled according to a component management request sent by a target server node; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled; determining a target register in multiple register modules of a logic controller according to the component information and the management requirements; calling the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0098] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to execute the component management method provided by the above-mentioned methods, the method comprising: obtaining component information and management requirements of the component to be controlled according to a component management request sent by a target server node; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled; determining a target register in multiple register modules of a logic controller according to the component information and the management requirements; calling the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
[0099] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0100] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0101] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention 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 invention.
Claims
1. A component management system, characterized in that: include: A plurality of server nodes and a logic controller, wherein the logic controller includes a plurality of register modules; The logic controller is connected to each of the server nodes and each component respectively; For each server node, the server node is used to generate a component management request of the component to be controlled according to the management information corresponding to the component to be controlled among the plurality of components, and send the component management request to the logic controller; The logic controller is used to obtain component information and management requirements of the component to be controlled according to the component management request, determine a target register in the multiple register modules according to the component information and the management requirements, and call the target register to perform management operations on the component to be controlled according to the component information and the management requirements, as well as the current management status of the component to be controlled.
2. The parts management system according to claim 1, characterized in that: The logic controller is further used for: According to the component information, obtaining a candidate register module corresponding to the component to be controlled from the plurality of register modules; Determining the management type of the component to be controlled according to the management requirement; According to the management type, the target register is obtained in the candidate register module.
3. The parts management system according to claim 2, characterized in that: The logic controller is further used for: When it is determined according to the management requirement that the management type of the component to be controlled is a write operation type, obtaining a write register in the candidate register module and using the write register as the target register; Acquire write operation information of the component to be controlled according to the management requirement and the component information; Generate target write information according to the write operation information and the node information of the target server node that sends the component management request; Writing the target write information into the write register; Acquire the current management status of the component to be controlled; According to the current management state, determining whether the write operation of the component to be controlled is occupied; In the case where it is determined that the write operation of the component to be controlled is occupied, returning to the step of obtaining the current management state of the component to be controlled until it is determined that the write operation of the component to be controlled is not occupied; The target write information in the write register is written into the component to be controlled, so that the component to be controlled performs a management operation corresponding to the write operation information.
4. The parts management system according to claim 3, characterized in that: The logic controller is further used for: When it is determined that the target write information is successfully written into the component to be controlled, the target write information in the write register is synchronized to an address corresponding to the read register in the candidate register module.
5. The parts management system according to claim 2, characterized in that: The logic controller is further used for: According to the storage address corresponding to the component to be controlled, polling and reading the component information of the component to be controlled in the read register and the write register of the component to be controlled; When it is determined according to the current management state of the component to be controlled that the write operation of the component to be controlled is not occupied, the read component information is updated to the address corresponding to the read register in the candidate register module.
6. The component management system according to any one of claims 2 to 5, characterized in that: The logic controller is further used for: When it is determined according to the management requirement that the management type of the component to be controlled is a read operation type, obtaining a read register in the candidate register module and using the read register as the target register; According to the management requirement and the component information, obtaining read operation information of the component to be controlled; According to the read operation information, the read register is called to read the target information of the component to be controlled, and the target information is sent to a target server node, where the target server node is a server node that sends the component management request.
7. The parts management system according to claim 6, characterized in that: The logic controller is further used for: According to the read operation information, read the component information and / or write information of the component to be controlled in the read register to obtain first information; According to the first information, determining whether the read task corresponding to the read operation information is completed; In the case where it is determined that the read task is not completed, calling the read register, and reading second information from the read register and the write register of the component to be controlled according to the read operation information and the storage address corresponding to the component to be controlled; The target information is acquired according to the first information and the second information.
8. A component management method, characterized in that: Applied to the component management system according to any one of claims 1 to 7, the method comprises: According to the component management request sent by the target server node, the component information and management requirements of the component to be controlled are obtained; the component management request is generated by the target server node according to the management information corresponding to the component to be controlled; Determining a target register among a plurality of register modules of a logic controller according to the component information and the management requirement; According to the component information and the management requirements, as well as the current management state of the component to be controlled, the target register is called to perform management operations on the component to be controlled.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the component management method according to claim 8 is implemented.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the component management method according to claim 8 is implemented.
Citation Information
Patent Citations
Server, node equipment information acquisition method and device thereof, equipment and medium
CN113872796A
Computing device and data acquisition method
CN115905055A
Remote virtual system, host server and computer system
CN116360866A
Server structure with decoupling design
CN116450562A
Hardware resource management method, device and equipment and machine readable storage medium
CN118193163A
Cited By
Management system and method of multi-node server
CN121530939A
