Interface management method and device and related equipment

Through the external management interface of the management chip, the management chip obtains management requests and determines relevant management modules, the problem of difficulty in customizing the BMC interface is solved, and the interface is flexible expansion and customization is realized, reducing management and maintenance costs.

CN119440935APending Publication Date: 2025-02-14HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310962375.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-31
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

The existing BMC interface is difficult to customize, which is difficult to meet the needs of different whole machine manufacturers, resulting in high management and maintenance costs.

Method used

The management request is obtained through the external management interface of the management chip, and the management module associated with the device is determined based on the management request and the mapping relationship between the external management interface and the management module, thereby realizing the status monitoring and management of the device. Users can achieve flexible expansion of interfaces by modifying mapping relationships without modifying the interface layer and management module code.

Benefits of technology

It realizes flexible expansion and customization of BMC interfaces, reduces product management and maintenance costs, and meets the usage needs of different whole machine manufacturers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119440935A_ABST
    Figure CN119440935A_ABST
Patent Text Reader

Abstract

The invention discloses an interface management method and device and related equipment, is applied to a server comprising a management chip, and relates to the field of servers. According to the method, a mapping relation between an external management interface and a management module input by a user and configuration information of the interface by the user are acquired, so that when the external management interface of a management chip acquires a management request, the external management interface can be managed according to the management request and the mapping relation between the external management interface and the management module; according to the method, a management module associated with a device is determined, the management module is used for monitoring and managing the state of the device, and then monitoring data of the device is acquired from the management module, so that when a user needs to modify parameters of an external management interface and adaptively modify parameters, sources, names and attribute values of the monitoring module corresponding to the external management interface, the monitoring data of the device can be acquired; and the mapping relationship and configuration information between the external management interface and the management module are input without modifying the code of the external management interface and the code of the management module, so that the purpose of flexibly expanding the interface is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of servers, and in particular to an interface management method, device and related equipment. Background Art

[0002] The baseboard management controller (BMC) chip is a dedicated microcontroller embedded in the server motherboard. The software running on the BMC chip is an independent system that does not rely on other hardware on the server (such as CPU, memory, etc.). It is used to monitor, control, and manage the components in the server through out-of-band monitoring. For example, it monitors the status of the server, including temperature, voltage, and device information such as fans and power supplies in the server. The BMC software can provide query and control functions to other servers through the external management interface, so that remote users can also implement server control management, monitoring, and other functions through the BMC software.

[0003] However, the existing out-of-band monitoring methods follow no unified standard specifications, mainly including Redfish, command-line interface (CLI), Simple Network Management Protocol (SNMP), etc. In addition, different whole machine manufacturers have customization requirements based on the same or different standard interface specifications, such as the need to modify the external management interface parameters, and adapt and modify the parameters and sources, names and attribute values ​​of the monitoring modules corresponding to the external management interface. On the other hand, with the continuous changes in the types and quantities of devices, the types of monitoring devices in the same server and the monitoring requirements of each device may continue to change. Then, when configuring the interface according to the user's customized requirements, it is necessary not only to modify the interface layer code of the external management interface, but also to modify the code of the management module corresponding to the external management interface at the same time, which greatly increases the product management and maintenance costs, making it difficult to customize the BMC interface and difficult to meet the usage requirements of different whole machine manufacturers. Summary of the invention

[0004] The present application provides an interface management method, apparatus and related equipment to solve the problem that BMC interface customization is difficult and it is difficult to meet the usage requirements of different machine manufacturers.

[0005] In a first aspect, an interface management method is provided, which is applied to a server including a management chip. The method obtains a management request through an external management interface of the management chip, the management request is used to obtain monitoring data of a device in the server, and a management module associated with the device is determined based on the management request and a mapping relationship between the external management interface and a management module. The management module associated with the device is used to implement status monitoring and management of the device, and the monitoring data of the device is obtained from the management module associated with the device.

[0006] Among them, the external management interface is the external interface provided by the management chip, and the user can control and manage the server by calling the external management interface. Optionally, the management chip includes a BMC chip, and the external management interface includes one or more of a redfish interface, a simple network management protocol (SNMP) interface, and a command line interface (CLI) interface. In order to make this application better understood, the following unified example is taken as an example that the management chip is a BMC.

[0007] When implementing the method described in the first aspect, when a user requests to obtain monitoring data of a device in a server, the management chip can first obtain the management request through the external management interface, and then determine the management module associated with the device based on the management request and the mapping relationship between the external management interface and the management module, and then obtain the monitoring data of the device from the management module. In this way, when a user customizes the external management interface, it can be achieved by modifying the mapping relationship between the external management interface and the management module, without modifying the code of the external management interface and the code of the management module, thereby achieving the purpose of flexible expansion of the BMC interface.

[0008] In a possible implementation, the management request is also used to request a device in the control server, and the method further includes the following steps: controlling the device through a management module associated with the device.

[0009] In the above implementation method, when a user requests to control a device in the server, the management chip can first obtain the management request through the external management interface, and then determine the management module associated with the device based on the management request and the mapping relationship between the external management interface and the management module, and then control the device through the management module, so that the external management interface configured by the user can take effect, and the management request sent by the user calling the customized external management interface can be responded to. The user can obtain the monitoring data of the device and control the device requested to be controlled. The entire configuration process does not require modification of the interface layer and the management module code, thereby solving the problem of difficult BMC interface customization.

[0010] In a possible implementation, the BMC may store the mapping relationship between the external management interface and the management module in a mapping configuration file. Optionally, the mapping configuration file also includes configuration information of the external management interface, which may include configuration information of standard fields and may also include configuration information of custom fields, wherein standard fields refer to common fields defined by the protocol, which are usually defined in relevant standards or specifications and are widely accepted and used. Custom fields are non-standard fields defined according to user needs, which include but are not limited to attribute names, manufacturer names, attribute value sources, actions, etc., which are not specifically limited in this application. In a specific implementation, the above configuration information may include a variety of interface attributes, such as interface name, interface description, request parameters, interface method, interface path, interface return value, etc., wherein the interface name is used to uniquely identify the interface; the interface description is used to describe the function, purpose and usage of the interface to help users understand the role and usage of the interface; the request parameters are used to describe the information that needs to be passed when calling the interface, including data type, parameter description, parameter name, etc.; the interface method is used to indicate the request method of the interface, including get, post, put, delete, etc.; the interface path is used to indicate the uniform resource locator (URL) path of the interface, which is used to identify the specific interface resource; the interface return value is used to describe the data format and content returned after the interface call is successful. It should be understood that the above examples are for illustration, and the information of the external management interface may also include more content, which is not illustrated here one by one.

[0011] Optionally, the mapping configuration file may also include verification information, such as the length range of custom fields, the value range of interface types, etc. This verification information can be used to verify the mapping configuration file input by the user to avoid the configuration from failing to take effect. This application does not make specific limitations.

[0012] Optionally, the user can modify or create a new mapping configuration file by sending a configuration request. In a specific implementation, before obtaining the management request through the external management interface of the management chip, the configuration request input by the user is obtained, and the configuration request includes the mapping relationship between the external management interface and the management module. It should be understood that the configuration request may include the content that can be stored in the mapping configuration file, including but not limited to the mapping relationship, configuration information, verification information, etc. described above, which is not specifically limited in this application.

[0013] The above implementation method stores the user's configuration requirements for the external management interface in a mapping configuration file. Both standard fields and custom fields can be stored in the mapping configuration file. When the user sends a management request through the external management interface, the BMC can determine the management module associated with the device based on the management request and the mapping configuration file, and then process the management requirement through the management module, so that the user's configuration requirements for the external management interface can take effect. The entire configuration process does not require modification of the interface layer and the management module code, and can achieve flexible configuration of the external management interface, solving the problem of difficult BMC interface customization.

[0014] In one possible implementation, there is a mapping relationship between the external management interface and one or more management modules, and the configuration request also includes access information of the management module. When determining the management module associated with the device based on the management request and the mapping relationship between the external management interface and the management module, the access information of one or more management modules corresponding to the external management interface is obtained, and the access information in the management request is matched with the one or more access information to determine the management module corresponding to the external management interface.

[0015] In a specific implementation, a mapping configuration file corresponds to an external management interface. A mapping configuration file may include one or more mapping relationships. Different mapping relationships record the mapping relationship between the same external management interface and different management modules. The same management module may also be mapped to different external management interfaces. In other words, the same management module may also appear in multiple mapping configuration files. In some implementations, a mapping configuration file may also record the mapping relationship of multiple external management interfaces. A configuration file library may be established according to actual business needs, and this application does not make specific limitations.

[0016] Optionally, the configuration file library can be grouped and classified according to usage requirements. For example, the configuration file library may include multiple groups of mapping configuration files, where one external management interface can correspond to one group of mapping configuration files, such as the interface of the redfish protocol corresponds to one group of mapping configuration files, and the interface of the SNMP protocol corresponds to one group of mapping configuration files; each group of mapping configuration files can be classified according to the functions of the management module it records, and split into different folders and files. In addition, one management module can correspond to multiple mapping configuration files of external management interfaces, that is, the processing logic of a management module may need to use some attributes of multiple external management interfaces. The above examples are for illustration purposes only. The configuration file library can be established according to actual business needs, and this application does not make specific limitations.

[0017] Optionally, the mapping configuration file may also include access information of the management module, and the access information may include but is not limited to one or more of access parameters, interface information, request body, response body, and authentication information. When a user requests to access the management module, the access can only be performed through the external management interface. Therefore, the access information of the management module can be carried in the management request, so that after the BMC receives the management request, it matches the access information with the mapping configuration file, and can obtain the management module corresponding to the management request according to the external management interface, and forward the management request to the management module. It should be understood that the access information may also include more content, which is not illustrated here one by one. In one possible implementation, the access information may be part of the configuration information.

[0018] In the above implementation, the mapping configuration files are grouped according to the external management interface, and different interface protocols and standards have different mapping configuration files, so that each protocol can process the management request through the mapping configuration file. At the same time, by recording the access information of multiple management modules corresponding to the same external management interface in the mapping configuration file, the access information of different management modules is different. In this way, after receiving the management request sent by the user through the same external management interface, the management module corresponding to the management request can also be determined according to the access information carried in the management request and the access information recorded in the mapping configuration file, so that the interface customization and expansion of the BMC only requires the user to send configuration information to adjust the mapping configuration file to realize the configuration of the management module, without changing the code of the external management interface and the management module, so that the solution is highly flexible and scalable, and the user experience is improved.

[0019] In a possible implementation, the BMC includes a resource tree, which is an interface management system. The mapping configuration file can be associated with the resource tree, wherein each management module can perform interface registration in the resource tree, and the management module recorded in the mapping configuration file is the management module registered in the resource tree. The resource tree provides a unified registration channel for multiple managements to perform unified management, so that when the BMC receives a management request from a user, it can obtain the management module corresponding to the management request according to the mapping configuration file. The management module is registered on the resource tree, and routing forwarding of the management request can be implemented in combination with the resource tree.

[0020] Optionally, the resource tree can be combined with a data management structure to implement interface management of registered management modules, such as a tree structure. It should be understood that the tree structure can organize and manage various resources in the system in the form of a tree structure. The tree structure can not only clearly show the hierarchical relationship between resources, facilitate the positioning and access to resources, and simplify the resource access path, but also the tree structure is easy to expand, making resource management more flexible.

[0021] In the above implementation method, there are a large number of management modules. The present application registers the management modules uniformly on the resource tree, and then associates the mapping configuration file with the resource tree. In this way, after the user modifies the mapping configuration file, the configuration can be made effective according to the associated resource tree, so that the customization and expansion process of the external management interface does not need to modify the code of the external management interface and the code of the back-end management application, thereby improving the user experience.

[0022] In one possible implementation, the BMC may provide a general function library (library, lib), which includes multiple processing functions for processing mapping configuration files corresponding to different external management interfaces. Different groups of mapping configuration files are parsed using different processing functions. In other words, mapping configuration files of different protocols are parsed using processing functions of corresponding protocols.

[0023] Optionally, the processing function can also be used to implement attribute range verification, where the attribute range can be a range set to the user, such as the user's configuration request can carry the attribute range; the attribute range can also be a preset range, which is not specifically limited in this application. The processing function can verify the attribute range of the interface attributes in the mapping configuration file according to the attribute range, to avoid the problem of interface configuration failure caused by the attribute in the mapping configuration file exceeding the range.

[0024] Optionally, the processing function can also be used to implement route matching. The route matching means that after the user sends a management request through the external management interface, the processing function parses the mapping configuration file corresponding to the external management interface, matches the access information carried in the management request with the access information in the mapping configuration file, determines the routing information of the request, that is, the management module that the management request needs to access, and then implements the routing forwarding of the management request based on the information of the registered management modules recorded in the resource tree.

[0025] Optionally, the protocol parsing module corresponding to the external management interface can be connected to the above-mentioned function library, so that after the user request is sent to the external management interface, the protocol parsing module corresponding to the external management interface can perform protocol parsing on the request, and then send the parsing result to the function library for further route matching and attribute range verification. The parsing result may include but is not limited to the request method, request header, request body, access parameters, etc., which may vary according to different protocols and actual request contents, and will not be described here one by one.

[0026] The above implementation method realizes the parsing of the mapping configuration file by establishing a function library, so that management requests for calling different types of external management interfaces can be processed by the processing functions of the corresponding protocol types, so that each protocol can be processed, making the solution highly flexible and scalable, and improving the user experience.

[0027] In one possible implementation, if a user needs to add a new management module to the BMC, and the mapping configuration file does not have relevant records of the newly added management module, and the user needs to configure the newly added management module, then the newly added management module can be registered on the resource tree first, and then the user's configuration request can be obtained through the external management interface. A new mapping configuration file is created according to the information in the configuration request, or the content of the newly added management module is appended to the old version of the mapping configuration file, which may specifically include the mapping relationship between the newly added management module and the external management interface, as well as the access information, verification information, etc. of the newly added management module, which is not specifically limited in this application.

[0028] The above implementation method achieves the purpose of adding a new management module by registering the new management module on the resource tree and then recording the mapping relationship between the new management module and the external management interface in the mapping configuration file. Users can flexibly customize the management module according to their business needs, and the customization process does not require modifying the interface layer code. The configuration process is simple and efficient.

[0029] In a second aspect, a management device is provided, which is applied to a server including a management chip, and the device includes: an acquisition unit, used to acquire a management request through an external management interface of the management chip, the management request is used to acquire monitoring data of a device in the server, a determination unit, used to determine a management module associated with the device based on the management request and a mapping relationship between the external management interface and the management module, the management module associated with the device is used to implement status monitoring and management of the device, and a processing unit, used to acquire the monitoring data of the device from the management module associated with the device.

[0030] Implement the management device described on the second side. When a user requests to obtain monitoring data of a device in the server, the management device can first obtain the management request through the external management interface, and then determine the management module associated with the device based on the management request and the mapping relationship between the external management interface and the management module, and then obtain the monitoring data of the device from the management module. In this way, when the user customizes the external management interface, it can be achieved by modifying the mapping relationship between the external management interface and the management module, without modifying the code of the external management interface and the code of the management module, thereby achieving the purpose of flexible expansion of the BMC interface.

[0031] In a possible implementation, the management request is also used to request a device in the control server, and the processing unit is used to control the device through a management module associated with the device.

[0032] In a possible implementation, the acquisition unit is used to acquire a configuration request input by a user before acquiring a management request through an external management interface of the management chip, wherein the configuration request includes a mapping relationship between the external management interface and the management module.

[0033] In one possible implementation, the configuration request includes configuration information of the external management interface, the configuration information includes standard configuration information and custom configuration information, the standard configuration information includes information of standard fields of the protocol corresponding to the external management interface, the custom configuration information includes information of non-standard fields defined by user needs, and the custom configuration information includes one or more of attribute name, manufacturer name, attribute value source, and action.

[0034] In one possible implementation, there is a mapping relationship between the external management interface and one or more management modules, the configuration request also includes access information of the management module, a determination unit is used to obtain one or more access information of one or more management modules corresponding to the external management interface, and the determination unit is used to match the access information in the management request with one or more access information to determine the management module corresponding to the external management interface.

[0035] In a possible implementation, the management chip includes a mainboard management controller BMC chip, and the external management interface includes one or more of a Redfish interface, a Simple Network Management Protocol SNMP interface, and a Command Line Interface CLI interface.

[0036] In a third aspect, a chip is provided, which includes a logic circuit and a power supply circuit, the power supply circuit is used to supply power to the logic circuit, and the logic circuit is used to implement the functions implemented by the management chip in the method described in the first aspect.

[0037] In a fourth aspect, a server is provided, which includes a management chip, a processor and components, the processor is used to run instructions to implement the business functions of the server, the management chip is used to implement the method described in the first aspect, and the components include at least one of the following: a computing component, a storage component, an input and output IO component, an acceleration component, a memory component and a heat dissipation component.

[0038] In a fifth aspect, a computer-readable storage medium is provided, the storage medium comprising instructions, which, when executed on a server, enable the server to implement the method described in the first aspect.

[0039] Based on the implementations provided in the above aspects, this application can also be further combined to provide more implementations. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 It is an architecture diagram of an interface management system provided by this application;

[0041] Figure 2 It is a structural diagram of a BMC provided by this application;

[0042] Figure 3 It is a step flow diagram of an interface management method provided by this application;

[0043] Figure 4 This is a schematic diagram of the steps of an interface management method provided by the present application in an application scenario;

[0044] Figure 5 It is a schematic diagram of the steps of an interface management method provided by the present application in another application scenario;

[0045] Figure 6 It is a flowchart of the steps for processing a management request in an interface management method provided by the present application;

[0046] Figure 7 It is a step flow diagram provided by the present application in combination with the internal structure of the BMC;

[0047] Figure 8 It is a structural diagram of an interface management device provided by the present application;

[0048] Fig. 9 It is a schematic diagram of the structure of a chip provided in this application. DETAILED DESCRIPTION

[0049] In order to solve the above-mentioned problems of BMC interface customization difficulty, high management and maintenance costs, and difficulty in meeting user needs, the present application provides an interface management solution, in which a function of configuring the mapping relationship between the external management interface and the management module is provided for the user, allowing the user to customize the corresponding relationship between the external management interface and the management module. Then, in the process of monitoring data query, by obtaining the mapping relationship between the external management interface and the management module input by the user and the user's configuration information of the interface, when the external management interface of the management chip obtains a management request, the management module associated with the device can be determined according to the management request and the mapping relationship between the external management interface and the management module. The management module is used to realize the status monitoring and management of the device, and then the monitoring data of the device is obtained from the management module. In this way, when the user wants to modify the external management interface parameters, and adapt and modify the parameters and sources, names and attribute values ​​of the monitoring module corresponding to the external management interface, it only needs to enter the mapping relationship and configuration information between the external management interface and the management module, so as to achieve the purpose of flexible expansion of the interface, without modifying the code of the external management interface and the code of the management module, and the configuration method is simple, flexible and efficient.

[0050] The technical solution for which protection is requested in this application is described in detail below with reference to the accompanying drawings.

[0051] Figure 1 This is an architecture diagram of an interface management system provided by this application, such as Figure 1 As shown, the architecture includes a client 100 and a server 200. The interface management system provided in the present application can be deployed in the server 200, wherein the number of clients 100 and servers 200 can be one or more, for example, one client 100 establishes a communication connection with multiple servers 200, or one server 200 establishes a communication connection with multiple clients 100, and the above communication connection can be a wired connection or a wireless connection, and can be a direct connection or an indirect connection, which is not specifically limited in the present application.

[0052] Among them, the server 200 includes a management chip 210 and a component 220, wherein the management chip 210 can be a BMC chip, or other microcontroller unit (MCU) in the server, and the microcontroller unit needs to provide query and control functions to other servers through an external management interface, so that remote users can also implement server control management, monitoring and other functions through the BMC software. It should be understood that for some chips whose internal application interfaces cannot be exposed to users and users can only communicate with them through external management interfaces, the technical solutions provided by this application can be used to customize and expand the interface. In order to make this application better understood, the following will uniformly take the management chip 210 as a BMC chip as an example for illustration.

[0053] The client 100 can be deployed on a terminal device, and the terminal device includes a personal computer, a smart phone, a wearable device, a handheld processing device, a tablet computer, a mobile notebook, an augmented reality (AR) device, a virtual reality (VR) device, an integrated handheld device, a wearable device, a vehicle-mounted device, a smart conference device, a smart advertising device, a smart home appliance, etc., which is not specifically limited here.

[0054] In a specific implementation, the above-mentioned client 100 can be software or an application running on a terminal device or a computing device controlled by a user, such as a personal computer (PC) client, or a web client accessed based on a browser, or an application (APP) client running on a mobile terminal, and this application does not make any specific limitations.

[0055] Optionally, the client 100 may be a BMC client for remotely or locally controlling the BMC 210. The user may customize the interface, modify interface parameters, add or delete interface information, etc. through the client 100, and may also implement various management functions of the BMC through the client 100, such as controlling the power on and off of the server, querying the voltage, temperature, fan working condition, etc. of the server, which will not be described one by one here.

[0056] Optionally, the client 100 may also be a built-in plug-in of the BMC client, and the built-in plug-in is used to provide interface customization services. When using the BMC software, the user can realize the interface customization requirements through the built-in plug-in.

[0057] Optionally, the client 100 may also be a console of the cloud platform, which, as a BMC management service in the cloud platform or a sub-service in the BMC management service in the cloud platform, provides the user with an interface customization function, and the user may use the interface management method provided in this application by purchasing the cloud service. The console may be a web-based client or an application programming interface (API), which is not specifically limited in this application.

[0058] Optionally, the user using the client 100 may include any one of a partner, a supplier, and a network management maintenance personnel, wherein it is assumed that the server is provided by manufacturer A, the supplier is an enterprise or individual that supplies various resources to manufacturer A, the partner is a server manufacturer other than manufacturer A, and the network management is a person in charge of network operation and management in an enterprise or user that purchases a server from manufacturer A. It should be noted that the client types used by different users vary, and the specific type can be determined according to the actual application scenario.

[0059] Server 200 can be a bare metal server (BMS) or an edge computing device. BMS refers to a general physical server, such as an ARM server or an X86 server; edge computing devices refer to devices that are closer to data sources and end users and have low latency and high bandwidth characteristics, such as smart routers, edge servers, etc.

[0060] Optionally, the client 100 can be deployed in the server 200 to implement local monitoring, control, management and other functions of the server 200, such as monitoring the status of the server 200, including temperature, voltage, fan, power supply and other information.

[0061] Optionally, the client 100 can be deployed on other servers except the server 200, and is used to implement remote monitoring, control, management and other functions of the server 200, such as monitoring the status of the server 200, including information such as temperature, voltage, fan, power supply, etc. For example, the client 100 can be deployed on the management node of the server cluster where the server 200 is located, and is used to implement remote monitoring, control, management and other functions of the server cluster including the server 200.

[0062] Furthermore, the server 200 may include a management chip 210 and a plurality of components 220. Figure 1 The component 220 includes a computing component 220A, an input / output (IO) component 220B, a storage component 220C, and a heat dissipation component 220D. It should be understood that Figure 1 This is an exemplary division method. Component 220 may also include more or fewer types, which is not specifically limited in this application. In some embodiments, server 200 may also include an extension unit (EXU), on which the above-mentioned BMC 210 may be deployed; in other embodiments, server 200 may also include a basic computing unit (BCU), on which computing component 220A may be deployed, which is not illustrated here. Among them, there is a communication connection between BMC210 and multiple components 220, which may be a direct connection or an indirect connection. Figure 1 This is an example of a connection method, and the present application does not make any specific limitation.

[0063] In this architecture, the BMC 210 and the multiple components 220 can establish communication connections through high-speed buses such as high-speed serial computer expansion bus standards (peripheral component interconnect express, PCIE), memory interconnect (Compute ExpressLink, CXL), or unified bus (UB or Ubus). In specific implementations, the connection methods of the above communication connections include: a soft connection method of realizing the above connection with a cable, or a hard connection method of realizing the above connection with a connector, which is not specifically limited in this application.

[0064] BMC 210 is a microcontroller unit or microcontroller (MCU) deployed on a single board of server 200 with independent power supply and independent I / O interface. It does not rely on the processor, basic input output system (BIOS) or operating system of server 200 to work. It is an agentless management subsystem running alone in server 200. As the management center of the entire server 200, it provides management functions such as hardware status monitoring, deployment, energy saving, and security. Among them, the BMC chip can also be called a motherboard management controller.

[0065] The component 220 is a general term for a class of devices or equipment. The component 220 can be divided into various types of components according to their functions, including storage components (storage unit, STU), IO components, acceleration components (acceleration unit, ACU), memory expansion components (memory expansion unit, MEU), heat dissipation components, computing components, management components, etc.

[0066] Among them, storage components include hard disk backplane, expansion board (expander), PCIE switch (switch), etc., which are used to expand system storage and support multiple media and forms such as hard disk drive (HDD) / solid-state drive (SSD) / non-volatile memory express (NVMe) / storage class memory (SCM).

[0067] IO components include Riser and other components to expand the system IO and support PCIE standard cards and open compute project (OCP) cards.

[0068] Acceleration components include risers, carrier boards, accelerator card interconnection switches, etc., providing system acceleration component expansion and interconnection functions.

[0069] Memory expansion components include carrier boards, memory expansion chips, dual in-line memory modules (DIMMs), SCM media, etc., which provide the system with the function of expanding memory bandwidth and content capacity.

[0070] The heat dissipation component is used to dissipate heat from a computing device or hardware in the computing device, including a combination of several heat dissipation methods such as air cooling, liquid cooling, or a combination of the two. It should be understood that the structure, type, and number of the heat dissipation components do not constitute a limitation on the technical solution to be protected by this application.

[0071] Computing components, such as CPU and memory, provide general computing capabilities.

[0072] Management components, baseboard management controllers, etc. provide device management devices.

[0073] It should be understood that Figure 1 The computing component 220A, IO component 220B, storage component 220C, and heat dissipation component 220D are drawn as an example. In a specific implementation, the server 200 can adjust the number of components in the server 200 according to the specific business scenario, and this application does not make any specific limitation.

[0074] Combine the following Figure 2 right Figure 1 The BMC210 in is further explained.

[0075] Figure 2 2 is a schematic diagram of the structure of a BMC provided in the present application. The BMC 210 may include an interface layer 211 , a conversion layer 212 and a management module layer 213 .

[0076] The interface layer 211 is used to provide multiple external management interfaces. Among them, an external management interface can correspond to a protocol, standard or specification, such as a redfish interface, which is used to implement server configuration, hardware status monitoring, power control and other operations; such as a simple network management protocol (SNMP) interface, which is used to remotely monitor the operating status, configuration parameters, error logs, etc. of the device, so as to perform network troubleshooting, performance optimization and resource management; such as a command line interface (CLI) interface, which is used for users to use commands to configure, manage and monitor devices, view device status, configuration parameters, run diagnostic commands, export logs, etc.; such as an intelligent platform management interface (IPMI) interface, which is used to manage, monitor and control computer system hardware, and remote management operations can be performed through this interface, such as remote restart, monitoring hardware health status, remote login, etc.; such as an API interface, which is used to achieve integration and interaction with other systems, such as automated management, monitoring warning integration, batch operations, etc. can be performed through the API interface. It should be understood that the above examples are used for illustration, and different BMCs may support different interfaces, and this application does not make specific limitations.

[0077] In this application, the user can send a management request to the BMC 210 by calling the interface layer 211. The management request is used to obtain monitoring data of the device in the server and also to request to control the device in the server. Figure 1 Each component 220 in the example may include multiple devices. For example, the computing component includes a CPU, memory, and other devices that provide general computing capabilities. The management request may be to obtain monitoring data of the memory, such as memory usage, remaining memory, cache capacity, etc., which is not specifically limited in this application.

[0078] The conversion layer 212 is used to parse the management request sent by the user to the interface layer 211, and forward the management request to the management module associated with the device for processing. The device here is the device corresponding to the monitoring data requested by the management request, or the device requested to be controlled by the management request.

[0079] Optionally, the conversion layer 212 may store multiple mapping configuration files, which include a mapping relationship between an external management interface and a management module, wherein the external management interface is a plurality of external management interfaces provided by the interface layer 211, and the management module is used to implement status monitoring and management of the device, such as a management module for monitoring CPU temperature, a management module for controlling server power on and off, and so on.

[0080] The mapping configuration file may also include configuration information of the external management interface, and the configuration information may include the user's interface customization requirements for the external management interface. Specifically, the configuration information may include configuration information of standard fields, and may also include configuration information of custom fields, wherein standard fields refer to common fields defined by the protocol, and such fields are usually defined in relevant standards or specifications, and are widely accepted and used. Custom fields are non-standard fields defined according to user needs, and the custom fields include but are not limited to attribute names, manufacturer names, attribute value sources, actions, etc., which are not specifically limited in this application. In a specific implementation, different external management interfaces correspond to different interface protocols, and each mapping configuration file may correspond to a different external management interface, or a group of mapping configuration files corresponds to one external management interface, and different groups of mapping configuration files correspond to different external management interfaces, which are not specifically limited in this application.

[0081] Optionally, the conversion layer 212 may include a function library (library, lib), which includes multiple processing functions, each processing function is used to process mapping configuration files corresponding to different interface protocols, that is, different mapping configuration files may correspond to different processing functions, or different groups of mapping configuration files may correspond to different processing functions. In a specific implementation, the processing function can be used to parse the management request sent by the user through the external management interface, and then obtain the mapping relationship between the external management interface and the management module according to the mapping configuration file corresponding to the external management interface, determine the management module associated with the device, and forward the management request to the management module. If the management request is used to obtain the monitoring data of the device, then the monitoring data of the device can be obtained from the management module. If the management request is used to control the device, then the control of the device can be achieved through the management module.

[0082] The management module layer 213 is used to receive the management request sent by the conversion layer 212, process the user's management request, obtain the monitoring data of the device, or implement the management control of the device. For example, a module for monitoring the temperature of the server, a module for monitoring the voltage, a module for controlling the power on and off of the server, etc., which are not specifically limited in this application.

[0083] It is worth mentioning that Figure 2 The hierarchical structure of the BMC shown is only an example and does not constitute a limitation on the technical solution to be protected by the application. In specific implementation, a finer or coarser logical division hierarchy can also be adopted, and each hierarchy includes more or fewer modules. The corresponding interfaces, files, function libraries and modules are used to implement similar functions.

[0084] Optionally, the management module layer 213 may include multiple management modules, each of which is used to implement status monitoring and management control of components in the server, such as a management module for monitoring CPU temperature, a management module for controlling server power on and off, etc., which is not specifically limited in this application. In specific implementation, the management module can be implemented in the form of an application (APP) or in other forms, such as a database interface, through which users can query monitoring data, and this application does not limit the implementation of the management module.

[0085] based on Figure 2 As shown in the structure, when the user expands the external management interface, the user configures the mapping configuration file corresponding to the external management interface through a configuration request, such as configuring the custom fields of the interface, customizing the manufacturer name, attribute values, etc., thereby realizing interface customization; when the user adds a new management module, the user adds a mapping relationship between the external management interface and the newly added management module in the mapping configuration file through a configuration request, thereby realizing flexible expansion of the interface.

[0086] When a user sends a management request through the external management interface, the interface layer 211 can obtain the mapping configuration file corresponding to the external management interface by calling the processing function corresponding to the external management interface, determine the management module corresponding to the management request according to the mapping relationship recorded in the mapping configuration file, and forward it to the management module that can process the management request, thereby realizing the routing forwarding of the management request and making the mapping configuration file configured by the user take effect.

[0087] It should be understood that the present application records the user's interface customization requirements through the conversion layer 212 and records them in the mapping configuration file. The interface layer 211 provides the user with an external management interface to receive the user's management request. The conversion layer 212 implements routing forwarding of the management request according to the management request and the mapping configuration file, forwards the management request to the corresponding management module, and then implements the processing of the management request through the management module layer 213, so that the external management interface can be flexibly extended and customized by the user, and the extended and customized external management interface can be effective. In other words, the management request sent by the user calling the customized external management interface can be responded to, the user can obtain the monitoring data of the device, and can also control the device requested to be controlled. The entire configuration process does not need to modify the code of the interface layer and the management module, solving the problem of difficult BMC interface customization.

[0088] Combination of the above Figure 1 and Figure 2 , describes in detail the structure of the interface management system provided by this application, and the following is combined with Figures 3 to 7 , the interface management method provided by this application is explained, wherein, Figures 3 to 7 The described interface management method can be applied to Figure 1 and Figure 2 In the interface management system shown, BMC manufacturers can add management modules for different hardware monitoring functions or expand the functions of management modules. When using BMC, different machine manufacturers can configure the mapping relationship between external management interfaces and management modules through BMC external interfaces according to their respective business needs. For BMC manufacturers, through standardized definition of management modules, the decoupling of external management interfaces and management modules is achieved. There is no need to develop code for the business needs of each machine manufacturer to adapt the external management interface and management module, thus solving the problem of difficult BMC interface customization. Specifically, Figure 3 , Figure 4 and Figure 5 Describes the processing steps when the interface management system receives a configuration request from a user. Figure 6 and Figure 7 This describes the steps when the interface management system receives a user's management request. Figures 3 to 7 The steps of the method shown are explained.

[0089] Figure 3 This is a flow chart of the steps of an interface management method provided by the present application. The method can be applied to Figure 1 In the interface management system, Figure 3 The method shown is a step flow for processing a configuration request. Specifically, the method may include the following steps:

[0090] S210: The client sends a configuration request input by the user to the BMC. This step can be performed by Figure 1 The client 100 in the embodiment is implemented.

[0091] refer to Figure 2 As can be seen from the embodiment, the conversion layer 212 of the BMC 210 includes a plurality of mapping configuration files, and the configuration request of step S210 can be used to update the mapping configuration file. Therefore, the information carried by the configuration request may include any information that can be recorded in the mapping configuration file. The content included in the mapping configuration file is explained below, and the content may also be the content that the configuration request may carry.

[0092] Optionally, the mapping configuration file includes a mapping relationship between an external management interface and a management module, wherein the external management interface may be Figure 2 In the embodiment, the interface layer 211 provides an external management interface, and the management module can be Figure 2 In the embodiment, the management module provided by the management module layer 213, the description of the external management interface and the management module can be referred to Figure 2 The embodiments are not described in detail here.

[0093] Optionally, the mapping configuration file may also include configuration information of the external management interface, which may include configuration information of standard fields and configuration information of custom fields, wherein standard fields refer to common fields defined by the protocol, which are usually defined in relevant standards or specifications and are widely accepted and used. Custom fields are non-standard fields defined according to user needs, which include but are not limited to attribute names, manufacturer names, attribute value sources, actions, etc., which are not specifically limited in this application. In a specific implementation, the above configuration information may include multiple interface attributes, such as interface name, interface description, request parameters, interface method, interface path, interface return value, etc., wherein the interface name is used to uniquely identify the interface; the interface description is used to describe the function, purpose and usage of the interface to help users understand the role and usage of the interface; the request parameters are used to describe the information that needs to be passed when calling the interface, including data type, parameter description, parameter name, etc.; the interface method is used to indicate the request method of the interface, including get, post, put, delete, etc.; the interface path is used to indicate the uniform resource locator (URL) path of the interface, which is used to identify the specific interface resource; the interface return value is used to describe the data format and content returned after the interface call is successful. It should be understood that the above examples are for illustration, and the information of the external management interface may also include more content, which is not illustrated one by one here.

[0094] Optionally, the mapping configuration file may also include verification information, such as the length range of custom fields, the value range of interface types, etc. This verification information can be used to verify the mapping configuration file input by the user to avoid the configuration from failing to take effect. This application does not make specific limitations.

[0095] Optionally, the above external management interface can be a standard interface or a customized interface, such as an OEM interface. Among them, the standard interface refers to the public interface specification customized by the relevant technical standard organization or manufacturer. These specifications define the communication method and protocol between devices or systems. The standard interface is usually universal and can be followed by multiple manufacturers. The customized interface refers to the interface customized by the original equipment manufacturer according to the specific needs of its products. It may be an extended or modified version of the standard interface to achieve additional functions or meet special needs.

[0096] Optionally, the mapping configuration file may be a file content written directly by the user, or the client 100 provides the user with multiple configuration options, which may be the content required to be filled in the mapping configuration file. After the user fills in or selects the configuration option, the client generates a corresponding mapping configuration file and sends it to the BMC. This application is not limited to this.

[0097] Referring to the above content, it can be known that the BMC chip is deployed with BMC management system software. Since the mapping configuration file cannot be received before the software is started, the mapping configuration file can be installed into the management system software in the form of software packaging before the software is started. After the software is run, the configuration can take effect.

[0098] After the software is running, multiple external management interfaces can be provided to the user through the client 100, so that the user can obtain information about the external management interfaces that can be called, and then the user can send configuration requests based on this information and write mapping configuration files to achieve the purpose of flexible customization and expansion of interfaces.

[0099] S220: BMC updates the configuration file library.

[0100] In the specific implementation, the configuration file library can be deployed in Figure 2 In the conversion layer 212 of the embodiment, the configuration file library includes at least one mapping configuration file, and the configuration file library can be updated according to the configuration request obtained in S210. If the configuration file library has stored an old version file of the mapping configuration file corresponding to the configuration request, then the old version file can be updated according to the configuration request, which usually occurs in the scenario where the user modifies the interface configuration; if the configuration file library does not store the mapping configuration file corresponding to the configuration request, then the newly added mapping configuration file can be stored in the configuration file library, which usually occurs in the scenario where the user adds a new interface.

[0101] In a specific implementation, each mapping configuration file may include a mapping relationship between at least one management module and at least one external management interface, and the number of such mapping relationships may be one or more. A management module may be mapped to at least one external management interface, and an external management interface may also be mapped to at least one management module. Each mapping configuration file may include information of multiple management modules and multiple external management interfaces, and a management module or an external management interface may also appear in one or more mapping configuration files. A configuration file library may be established according to actual business needs, and this application does not make specific limitations.

[0102] Optionally, the configuration file library can be grouped and classified according to usage requirements. For example, the configuration file library may include multiple groups of mapping configuration files, where one external management interface can correspond to one group of mapping configuration files, such as the interface of the redfish protocol corresponds to one group of mapping configuration files, and the interface of the SNMP protocol corresponds to one group of mapping configuration files; each group of mapping configuration files can be classified according to the functions of the management module it records, and split into different folders and files. In addition, one management module can correspond to multiple mapping configuration files of external management interfaces, that is, the processing logic of a management module may need to use some attributes of multiple external management interfaces. The above examples are for illustration purposes only. The configuration file library can be established according to actual business needs, and this application does not make specific limitations.

[0103] It should be understood that a mapping configuration file may include multiple groups of mapping relationships, each group of mapping relationships is used to describe the mapping relationship between an external management interface and a management module. The configuration information and mapping relationship of the newly added management module can also be directly appended to the existing mapping configuration file. This application does not make specific limitations.

[0104] Optionally, the mapping configuration file may also include access information of the management module, and the access information may include but is not limited to one or more of access parameters, interface information, request body, response body, and authentication information. When a user requests to access the management module, the access can only be performed through the external management interface. Therefore, the access information of the management module can be carried in the management request, so that after the BMC receives the management request, it matches the access information with the mapping configuration file, and can obtain the management module corresponding to the management request according to the external management interface, and forward the management request to the management module. It should be understood that the access information may also include more content, which is not illustrated here one by one. In one possible implementation, the access information may be part of the configuration information.

[0105] It should be noted that the mapping configuration file may include access information of multiple management modules corresponding to the external management interface. The access information of different management modules is different. Therefore, after receiving a management request sent by the user through the external management interface, the management module corresponding to the management request can be determined based on the access information carried in the management request.

[0106] For example, the mapping configuration file X includes a mapping relationship 1 between the external management interface A and the management module B1, an access parameter Y1 of the management module B1, a mapping relationship 2 between the external management interface B and the management module B1, and a request body Y2 of the management module B2. Then, when the BMC receives a management request sent by the user calling the external management interface A, the BMC can determine that the management module that needs to be accessed by the management request is B1 based on the access parameter Y1 carried in the management request, and then send the management request to the management module B1. It should be understood that the above examples are for illustration only and are not specifically limited in this application.

[0107] Optionally, a template for each group of mapping configuration files can be determined based on a framework of a protocol, standard or specification, and each mapping configuration file can be determined based on the template in combination with actual business needs. For example, the interface protocol corresponding to the redfish interface is the redfish standard protocol. Then, the schema file of the corresponding version of redfish of the interface can be downloaded to obtain the interface protocol template corresponding to the redfish interface, and then a group of mapping configuration files corresponding to the redfish interface can be generated based on the interface protocol template. All mapping configuration files that use the external management interface can be divided into this group. It should be understood that the above examples are for illustration purposes only, and of course, the mapping configuration files can also be written directly, and this application does not make specific limitations.

[0108] It should be understood that mapping configuration files are grouped according to the external management interface. Different external management interfaces correspond to different protocols, specifications and standards. That is, different protocols, standards and specifications have different mapping configuration files. In this way, each protocol can process management requests through the mapping configuration file. Users only need to send configuration information to adjust the mapping configuration file to implement the configuration of the management module without changing the external management interface and the code of the management module, making the solution highly flexible and scalable, and improving the user experience.

[0109] In a possible implementation, the BMC includes a resource tree, which is an interface management system. The mapping configuration file can be associated with the resource tree, wherein each management module can perform interface registration in the resource tree, and the management module recorded in the mapping configuration file is the management module registered in the resource tree. The resource tree provides a unified registration channel for multiple managements to perform unified management, so that when the BMC receives a management request from a user, it can obtain the management module corresponding to the management request according to the mapping configuration file. The management module is registered on the resource tree, and routing forwarding of the management request can be implemented in combination with the resource tree.

[0110] Optionally, the resource tree can be combined with a data management structure to implement interface management of registered management modules, such as a tree structure. It should be understood that the tree structure can organize and manage various resources in the system in the form of a tree structure. The tree structure can not only clearly show the hierarchical relationship between resources, facilitate the positioning and access to resources, and simplify the resource access path, but also the tree structure is easy to expand, making resource management more flexible.

[0111] It is understandable that there are a large number of management modules. The present application registers the management modules uniformly on the resource tree, and then associates the mapping configuration file with the resource tree. In this way, after the user modifies the mapping configuration file, the configuration can be made effective according to the associated resource tree. When customizing and expanding the interface, the user only needs to modify the mapping configuration file, and there is no need to modify the code of the external management interface and the code of the back-end management application, thereby improving the user experience.

[0112] In one possible implementation, the BMC may provide a general function library (library, lib), which includes multiple processing functions for processing mapping configuration files corresponding to different external management interfaces. Different groups of mapping configuration files are parsed using different processing functions. In other words, mapping configuration files of different protocols are parsed using processing functions of corresponding protocols.

[0113] Optionally, the processing function can also be used to implement attribute range verification, where the attribute range can be a range obtained from the user, such as when obtaining the configuration information of the external management interface in S220, the attribute range is obtained from the user; the attribute range can also be a preset range, which is not specifically limited in this application. The processing function can verify the attribute range of the interface attribute in the mapping configuration file according to the attribute range, so as to avoid the problem of interface configuration failure caused by the attribute in the mapping configuration file exceeding the range.

[0114] Optionally, the processing function can also be used to implement route matching. The route matching means that after the user sends a management request through the external management interface, the processing function parses the mapping configuration file corresponding to the external management interface, matches the access information carried in the management request with the access information in the mapping configuration file, determines the routing information of the request, that is, the management module that the management request needs to access, and then implements the routing forwarding of the management request based on the information of the registered management modules recorded in the resource tree.

[0115] Optionally, the protocol parsing module corresponding to the external management interface can be connected to the above-mentioned function library, so that after the user request is sent to the external management interface, the protocol parsing module corresponding to the external management interface can perform protocol parsing on the request, and then send the parsing result to the function library for further route matching and attribute range verification. The parsing result may include but is not limited to the request method, request header, request body, access parameters, etc., which may vary according to different protocols and actual request contents, and will not be described here one by one.

[0116] S230: Return a configuration success message to the client.

[0117] Optionally, after returning a message of successful configuration to the client, if the user needs an interface document, the interface document required by the user can be generated based on the mapping configuration file. It should be understood that if the user implements interface customization and interface extension by modifying the interface layer code of the external management interface or modifying the code of the management module, then the interface document needs to be written manually. When using the method of this application to perform interface customization and interface extension, due to the existence of the mapping configuration file, the interface document can be generated based on the mapping configuration file simply by format conversion, thereby improving the user experience.

[0118] In order to make this application better understood, Figure 4 The above-mentioned S210 to S230 are explained. Figure 4 This is a schematic diagram of the steps of an interface management method provided by the present application in an application scenario. Figure 4 As shown, this application scenario is a scenario where a user modifies or customizes an external management interface. Figure 4 based on Figure 2 Structure of the embodiment Figure 3 For further explanation of the steps shown, refer to Figure 2 As can be seen from the embodiment, the BMC 210 includes an interface layer 211, a conversion layer 212, and a management module layer 213. Figure 4 As shown, the interface layer 211 may include multiple external management interfaces ( Figure 4 Taking three external management interfaces as an example, the conversion layer 212 may include a protocol parsing module 320, a function library 330, a configuration file library 340 and a resource tree 350, and the management module layer 213 may include multiple management modules ( Figure 4 An example is given with three management modules as an example). It should be understood that Figure 4 The internal unit modules of the BMC are divided exemplarily, and the BMC 210 may also include more or fewer units, which is not specifically limited in the present application.

[0119] In a specific implementation, the BMC may first obtain a configuration request from the user through S210, the configuration request including a mapping relationship between the management module 1 and the external management interface 1, the external management interface 1 being a redfish interface, and then the BMC may execute S220 to update a mapping configuration file corresponding to the redfish interface according to the configuration request, the mapping relationship between the external management interface 1 and the management module 2 recorded in the old version of the mapping configuration file, and after the configuration file library is updated, the mapping relationship is modified to a mapping relationship between the external management interface 1 and the management module 1. Finally, the configuration success information is fed back to the client 100 through S230.

[0120] It should be understood that Figure 4 For example, in a specific implementation, the external management interface may include more types, and the number of mapping configuration files corresponding to the same protocol may be one or more. Figure 4 Only one redfish mapping configuration file is drawn as an example. In a specific implementation, the configuration file library 340 may include more mapping configuration files, and the number of applications may also be more, which will not be illustrated one by one here.

[0121] It should be noted that the protocol parsing module 320 is used to parse the management requests received by different external management interfaces to obtain the access information carried in the management requests, and the function library 330 is used to read the mapping configuration file, perform route matching based on the access information and the mapping configuration file, and thus obtain the destination management module of the management request. It should be understood that after the BMC updates the configuration file library, the user-configured interface can take effect. When the user sends a management request through the external management interface, the BMC can implement the parsing, route matching and forwarding process of the management request based on the mapping configuration file in the configuration file library in combination with the above-mentioned protocol parsing module, function library and resource tree.

[0122] It should be understood that through Figure 4 The structure shown allows the user to configure the interface without modifying the code of the interface layer or the code of the management module. The user only needs to input a configuration request carrying the interface customization requirements, or directly modify the mapping configuration file to complete the configuration. In addition, combined with the protocol parsing module 320, the function library 330, the configuration file library 340 and the resource tree 350 in the conversion layer 212, the configuration can be made effective, and the management request sent by the user calling the customized external management interface can be responded to. The user can obtain the monitoring data of the device and can also control the device requested to be controlled. The entire configuration process does not require modification of the code of the interface layer and the management module, thereby solving the problem of difficult BMC interface customization.

[0123] Need to explain, Figure 4The application scenario shown is a scenario in which the user modifies the mapping relationship. In other scenarios, the user can also send a configuration request to modify the configuration information or access information, such as modifying the custom fields of the external management interface, modifying the access body or access parameters of module interface 1, etc., to achieve flexible expansion of the external management interface. Examples are not repeated here.

[0124] Further, Figure 4 The example shown is a process in which a user modifies an existing interface configuration. If the user has a new hardware monitoring requirement, a new BMC management module needs to be added, and the configuration of the new management module in the mapping configuration file needs to be added. Specifically, the new management module can be registered on the resource tree 350 first, and then steps S210 to S230 are executed to complete the configuration of the new management module. Exemplary, Figure 5 is a flowchart of the steps of an interface management method provided by the present application in another application scenario, such as Figure 5 As shown, this application scenario is a schematic diagram of dynamically adding a management module 4. Figure 5 As shown, the steps in this application scenario may be as follows.

[0125] Step 1. Register the interface of the management module 4 on the resource tree.

[0126] Optionally, BMC210 can receive an interface registration request from the user and forward the request to the resource tree 350 to complete the interface registration of the management module 4. The interface registration request may include interface information of the management module 4, including but not limited to one or more of the interface name, interface description, request parameters, interface method, interface path, and interface return value, which are not specifically limited in this application.

[0127] In a specific implementation, the resource tree may provide users with a variety of registration methods based on actual application scenarios. For example, an application programming interface (API) management tool may be provided to users, and users may create and register detailed information of the interface through the API, or the resource tree may provide a registration center, and users may register the interface to the resource tree through the registration center. This application does not make specific limitations.

[0128] Step 2: Send a configuration request to the management module 4.

[0129] Optionally, Figure 5 In the application scenario shown, the user sends a configuration request to the management module 4 by calling the external management interface 1. The configuration request may include a mapping relationship between the external management interface 1 and the management module 4, that is, Figure 5In some embodiments, the configuration request may also include access information of the management module 4, that is, Figure 4 As for the "Access Information 2" in the figure, referring to the above content, it can be known that the mapping configuration file can record multiple sets of mapping relationships, each set of mapping relationships records the correspondence between the same external management interface and a management module. In order to further determine the management module corresponding to the management request, the access information in the management request can be matched with the access information recorded in the mapping configuration file to determine the management module corresponding to the management request.

[0130] For example, Figure 5 In other embodiments, the mapping configuration file may also include more content, such as the configuration information and verification information described in the foregoing content, which will not be repeated here. It should be understood that the detailed description of this step can be referred to Figure 3 and Figure 4 Step S210 in the embodiment is not repeated here.

[0131] Step 3. Update the configuration file library. For this step, refer to Figure 3 and Figure 4 Step S220 in the embodiment is not repeated here.

[0132] Step 4. Return the message of successful configuration. For this step, please refer to Figure 3 and Figure 4 Step S230 in the embodiment is not repeated here.

[0133] It should be understood that through Figure 5 The structure shown enables the user to add a new management module without modifying the code of the interface layer or the code of the management module, thereby solving the problem of difficulty in customizing the BMC interface.

[0134] Above Figures 3 to 5 Describes the interface configuration process in detail, including adding new management modules, modifying or expanding the configuration of external management interfaces, etc. Figure 6 , the step flow of the interface management method provided in this application upon receiving a management request from a user is explained.

[0135] Figure 6 This is a flowchart of the steps of processing a management request in an interface management method provided by the present application. The method can be applied to Figure 1 The interface management system shown and Figure 2 , Figure 4 as well as Figure 5 In the BMC210 shown, it is necessary to explain that Figure 6 The steps shown take place in Figure 2 and Figure 3 S210 to S230 shown and Figure 5 After steps 1 to 4 shown in the figure, that is, after BMC210 updates the configuration file library according to the configuration request input by the user. Figure 6 As shown, the method may include the following steps:

[0136] S410: The BMC 210 obtains a management request sent by a user by calling an external management interface.

[0137] Optionally, the management request is used to obtain monitoring data of a device in the server 200, and is also used to request control of a device in the server, where the device may be Figure 1 and Figure 2 For details of the devices in any component 220 in the embodiment, please refer to the description of the component 220 and the devices in the aforementioned content, which will not be repeated here.

[0138] In a specific implementation, the above management request may be a management request sent by a user calling an external management interface, such as calling a redfish interface to request power on and off of a server, or calling a CLI interface to request account information, or calling an SNMP interface to request CPU temperature, etc. It should be understood that the above examples are for illustration only and are not specifically limited in this application.

[0139] Optionally, the management request may also include access information. Different management requests may determine access information based on their access content. For example, if a request to start a server is sent to a power management application, the management request requests access to a management module for power management. Therefore, the management request may carry access information of the management module. Similarly, if the management request requests access to a management module for account management, the management request may carry access information of the management module. It should be noted that the access information may correspond to the access information of the management module recorded in the mapping configuration file, so that the conversion layer 212 can implement routing forwarding of the management request through the mapping configuration file.

[0140] S420: Perform protocol analysis on the management request to obtain access information.

[0141] In a specific implementation, S420 can be implemented through the protocol parsing module 320. Management requests sent by calling different external management interfaces can correspond to different types of protocol parsing modules. For example, a management request calling a redfish interface can be parsed and processed by a redfish protocol parsing module, and a management request calling an SNMP interface can be processed by an SNMP protocol parsing module. This application does not make specific limitations. In S420, the BMC can obtain the protocol parsing module corresponding to the external management interface called in the management request, perform protocol parsing on the management request, and obtain a processing result. In a specific implementation, the processing result may include information carried in the management request, such as access information, and may also include more content, which will not be illustrated one by one here.

[0142] S430: Obtain a first processing function corresponding to the protocol of the external management interface.

[0143] In a specific implementation, the BMC function library 330 may include multiple processing functions, and different processing functions are used to process mapping configuration files of different protocol types. For example, the mapping configuration file of the redfish protocol can be implemented by the processing function of the redfish protocol, and the mapping configuration file of the SNMP protocol can be implemented by the processing function of the SNMP protocol. Examples are not given here one by one. Among them, the processing function can be used to implement route matching, and can also be used to implement attribute range verification. Other capabilities can also be given to the processing function according to actual business needs. Examples are not given here one by one. Among them, the description of route matching and attribute range verification can be referred to. Figure 2 and Figure 3 The relevant descriptions in the embodiments are not repeated here.

[0144] S440: Calling the first processing function to match the access information with a mapping configuration file corresponding to the external management interface, and determining a management module corresponding to the external management interface.

[0145] In a specific implementation, the first processing function can also be used to implement the verification of the attribute range, wherein the attribute range can be a range obtained from the user, such as carried in the configuration request input by the user at S210; the attribute range can also be a preset range, such as an attribute range set according to a standard protocol or an empirical value, which is not specifically limited in this application. The first processing function can verify the attribute range of the attribute parameters in the mapping configuration file according to the attribute range, so as to avoid the problem of interface configuration failure caused by the attribute in the mapping configuration file exceeding the range.

[0146] S450: forwarding the management request to the management module corresponding to the external management interface. This step can be implemented by calling the first processing function.

[0147] In one possible implementation, the BMC includes a resource tree, and the mapping configuration file can be associated with the resource tree. Referring to the foregoing content, it can be known that the resource tree is an interface management system, and each management module can register an interface in the resource tree. By associating the mapping configuration file with the resource tree, the management request sent by the user calling the external management interface can be forwarded to the corresponding management module according to the associated mapping configuration file, so that the interface configuration can take effect.

[0148] Optionally, the resource tree can be combined with a data management structure to implement the management of registered management modules, such as a tree structure, which can organize and manage various resources in the system in the form of a tree structure. The tree structure can not only clearly show the hierarchical relationship between resources, facilitate the positioning and access to resources, and simplify the resource access path, but also the tree structure is easy to expand, making resource management more flexible.

[0149] It can be understood that under such a forwarding mechanism, when the user modifies the interface configuration, whether it is modifying, adding or deleting a custom configuration, a standard configuration, or expanding an OEM interface or a standard interface, the user can directly write the information that needs to be modified into the mapping configuration file. Through S410 to S460, the BMC can implement routing forwarding of management requests based on the mapping configuration file in combination with the resource tree, function library, and protocol parsing module, so that the user's configuration can take effect, thereby solving the problem of difficult BMC interface customization and improving the user experience.

[0150] S460: Return the processing result of the management request to the user.

[0151] Optionally, if the management request is used to obtain monitoring data of a device in the server, then step S460 can obtain the monitoring data of the device from the management module associated with the device, and then return the monitoring data to the client 100. For example, if a user requests to query account information, then the account management module can respond to the management request, obtain the account information, and return the account information to the client 100; if the management request is used to request control of a device in the server, then step S460 can control the device through the management module associated with the device, implement the function required by the management request, and then feedback a message of control success or failure to the user. For example, if a user requests to control the server to power on or off, then the power management module can respond to the management request, implement the power on or off of the server, and then feedback a message to the user that the server has been turned on or off. It should be understood that the above examples are for illustration only and are not specifically limited in this application.

[0152] In order to make this application better understood, Figure 7 The above S410 to S460 are described by way of example. It should be understood that Figure 7is a step flow diagram provided by the present application in combination with the internal structure of the BMC, and, Figure 7 The BMC structure shown is similar to Figure 4 and Figure 5 The BMC structure shown is the same, Figure 4 and Figure 5 The application scenario shown is the application scenario of customizing external management interfaces and adding new management modules. Figure 7 The application scenario shown is an application scenario for processing user management requests. Figure 7 The above S410 to S460 are described with examples.

[0153] Execute S410, the user calls the external management interface (such as external management interface 1) to send a management request. Figure 7 An example is given in which a management request carries access information 1.

[0154] Execute S420, use the protocol parsing module of the protocol corresponding to the management module to parse the management request to obtain a protocol parsing result, which at least includes access information, that is, Figure 7 In the access information 1 of the example, the protocol parsing module is connected to the function library, so the access information obtained by parsing can be sent to the function library.

[0155] Execute S430 to call the function library to obtain the first processing function of the protocol corresponding to the external management interface 1, that is, the processing function corresponding to the redfish protocol.

[0156] Execute S440, first obtain the mapping configuration file corresponding to the external management interface 1, that is, the mapping configuration file corresponding to the redfish protocol, and then match the access information 1 with the mapping configuration file. Although there may be multiple mapping configuration files, and each mapping configuration file may record the mapping relationship between the management module and multiple management modules, the management module that the management request needs to access can be accurately located according to the access information 1, that is, Figure 7 The management module 1 is shown.

[0157] Optionally, the first processing function may also perform attribute range verification, for details, please refer to the relevant description of the aforementioned content, which will not be repeated here.

[0158] Execute S450, the first processing function combines with the resource tree 350, obtains the module interface 1 corresponding to the management module 1, and sends the management request to the management module 1 through the module interface 1 for processing.

[0159] Execute S460, the management module 1 responds to the management request and returns the request result to the client.

[0160] It should be understood that the present application records the mapping relationship between the management module requested to be configured by the user and the external management interface, as well as the configuration information of the management module through a mapping configuration file, and then validates the mapping configuration file through a processing function, so that the user only needs to modify the mapping configuration file to complete the configuration, modification, addition, deletion, and extension of the interface. Not only can custom fields be expanded, but also OEM interfaces can be directly expanded. The configuration method is simple, flexible, and efficient, which makes the solution more universal and improves the user experience.

[0161] In summary, the present application provides an interface management method, which obtains the mapping relationship between the external management interface and the management module input by the user and the user's configuration information on the interface, so that when the external management interface of the management chip obtains a management request, it can determine the management module associated with the device according to the management request and the mapping relationship between the external management interface and the management module. The management module is used to realize status monitoring and management of the device, and then obtain the monitoring data of the device from the management module. In this way, when the user wants to modify the external management interface parameters, and adapt and modify the parameters and source, name and attribute values ​​of the monitoring module corresponding to the external management interface, it only needs to input the mapping relationship and configuration information between the external management interface and the management module, thereby achieving the purpose of flexible expansion of the interface, without modifying the code of the external management interface and the code of the management module, and the configuration method is simple, flexible and efficient.

[0162] Combined with the above Figures 3 to 7 , describes in detail the interface management method provided by this application, and will be combined with Figure 8 Describe the interface management device provided by this application, such as Figure 8 As shown, the present application provides an interface management device 800, which can be deployed in the management chip in the above content, specifically can be Figure 1 to Figure 7 BMC 210 described in the embodiment.

[0163] like Figure 8 As shown, the interface management device 800 may include an acquisition unit 810 , a determination unit 820 , and a processing unit 830 .

[0164] The acquisition unit 810 is used to acquire a management request through the external management interface of the management chip, and the management request is used to acquire monitoring data of the device in the server. Figure 6 and Figure 7 S410 and its optional steps in the embodiment.

[0165] The determination unit 820 is used to determine the management module associated with the device according to the management request and the mapping relationship between the external management interface and the management module. The management module associated with the device is used to implement status monitoring and management of the device. Figure 6 and Figure 7 S420 to S450 and optional steps in the embodiment.

[0166] The processing unit 830 is used to obtain the monitoring data of the device from the management module associated with the device. Figure 6 and Figure 7 Step S460 and its optional steps in the embodiment.

[0167] In a possible implementation, the management request is also used to request a device in the control server, and the processing unit 830 is used to control the device through a management module associated with the device. Figure 6 and Figure 7 Step S460 and its optional steps in the embodiment.

[0168] In a possible implementation, the acquisition unit 810 is used to acquire a configuration request input by a user before acquiring a management request through the external management interface of the management chip, wherein the configuration request includes a mapping relationship between the external management interface and the management module. Figure 3 and Figure 4 Step S210 in the embodiment, Figure 5 Step 2 and optional steps thereof in the embodiment.

[0169] In one possible implementation, the configuration request includes configuration information of the external management interface, the configuration information includes standard configuration information and custom configuration information, the standard configuration information includes information of standard fields of the protocol corresponding to the external management interface, the custom configuration information includes information of non-standard fields defined by user needs, and the custom configuration information includes one or more of attribute name, manufacturer name, attribute value source, and action.

[0170] In a possible implementation, there is a mapping relationship between the external management interface and one or more management modules, the configuration request also includes access information of the management module, the determination unit 820 is used to obtain one or more access information of one or more management modules corresponding to the external management interface, and the determination unit 820 is used to match the access information in the management request with the one or more access information to determine the management module corresponding to the external management interface. Figure 6 and Figure 7 S420 to S450 and optional steps in the embodiment.

[0171] In a possible implementation, the management chip includes a mainboard management controller BMC chip, and the external management interface includes one or more of a Redfish interface, a Simple Network Management Protocol SNMP interface, and a Command Line Interface CLI interface.

[0172] In summary, the present application provides an interface management device, which is applied to the management chip of the server, such as the BMC chip. The device updates the corresponding mapping configuration file by obtaining the user input configuration request, so that the configuration takes effect. The mapping configuration file includes the mapping relationship between the external management interface and the management module and the configuration information of the external management interface. In this way, when the user calls the external management interface to send a management request, the interface management device can forward the management request to the corresponding management module according to the mapping configuration file, so that the user can remotely control the BMC to achieve the purpose of monitoring and management of the server. The device allows users to flexibly expand the BMC interface, and the expansion process does not require modification of the interface layer and management module layer code. Only the mapping configuration file needs to be modified to complete the configuration, modification, addition, deletion, and expansion of the interface, thereby achieving the purpose of flexible expansion of the interface. Not only can custom fields be expanded, but also OEM interfaces can be directly expanded. The configuration method is simple, flexible, and efficient.

[0173] Combined with the above Figure 8 , describes in detail the interface management device provided by the present application, and will be combined with Fig. 9 Describe the chip provided by this application.

[0174] Fig. 9 It is a structural schematic diagram of a chip provided in the present application. The chip may be the management chip mentioned above, such as BMC210. ​​Further, the chip 900 may include a power supply circuit 910 and a logic circuit 920, wherein the power supply circuit 910 and the logic circuit 920 may be connected via wires, cables or other types of electrical connections, which are not specifically limited in the present application.

[0175] The chip 900 is implemented by ASIC, CPLD or FPGA. In a specific implementation, the power supply circuit 910 is used to supply power to the logic circuit 920 so that the logic circuit 920 can implement the following Figures 1 to 7 The function of the management chip (such as BMC210) in the embodiment. It should be noted that the chip 900 can be an integrated circuit chip with signal processing capabilities. In the implementation process, the various steps of the management chip in the above method embodiment can be completed by the hardware integrated logic circuit of the chip 900 or the instructions in the form of software. The steps of the method disclosed in the present application can be directly embodied as being executed by a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor, and this application does not make specific limitations.

[0176] Optionally, the chip 900 may also include a memory for storing a mapping configuration file. The memory may be the internal storage of the chip 700 or the external storage of the chip 900, which is not specifically limited in this application. In a specific implementation, the memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory is a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory is a random access memory (RAM), which is used as an external cache. The above examples are for illustration only and are not specifically limited in this application.

[0177] Need to explain, Fig. 9 This is only one possible implementation of the present application. In actual applications, the chip 900 may include more or fewer components, which is not limited here. Figure 1-Figure 8 The relevant explanations in the embodiments will not be repeated here.

[0178] The present application provides a computing device, which includes a management chip, a CPU and components. The CPU is used to run instructions to implement the business functions of the computing device, and the management chip is used to implement Figures 1 to 8 The interface management method implemented by the management chip described in the embodiment comprises at least one of the following components: a computing component, a storage component, an input / output IO component, an acceleration component, a memory component, and a heat dissipation component. For details, please refer to the description of the aforementioned content management component 220, which will not be repeated here.

[0179] The present application provides a computer-readable storage medium, including: the computer-readable storage medium stores computer instructions; when the computer instructions are executed on a server, the server executes the interface management method described in the above method embodiment.

[0180] The above embodiments may be implemented in whole or in part by software, hardware, firmware or any other combination thereof. When implemented using software, the above embodiments may be implemented in whole or in part in the form of a computer program product. The computer program product includes a plurality of computer instructions. When the computer program instructions are loaded or executed on a computer, the process or function according to the embodiment of the present invention is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium.

[0181] The above are only specific embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent repairs or replacements within the technical scope disclosed by the present invention, and these repairs or replacements should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A management method, characterized in that: The method is applied to a server including a management chip, and the method includes: Obtaining a management request through an external management interface of a management chip, wherein the management request is used to obtain monitoring data of a device in the server; Determine, according to the management request and the mapping relationship between the external management interface and the management module, a management module associated with the device, wherein the management module associated with the device is used to implement status monitoring and management of the device; The monitoring data of the device is obtained from a management module associated with the device.

2. The method according to claim 1, characterized in that The management request is also used to request control of a device in the server, and the method further includes: The device is controlled by a management module associated with the device.

3. The method according to claim 1 or 2, characterized in that: Before obtaining the management request through the external management interface of the management chip, the method further includes: A configuration request input by a user is obtained, wherein the configuration request includes a mapping relationship between the external management interface and the management module.

4. The method according to claim 3, characterized in that The configuration request includes configuration information of the external management interface, the configuration information includes standard configuration information and custom configuration information, the standard configuration information includes information of standard fields of the protocol corresponding to the external management interface, the custom configuration information includes information of non-standard fields defined by user needs, and the custom configuration information includes one or more of attribute name, manufacturer name, attribute value source, and action.

5. The method according to claim 3 or 4, characterized in that: There is a mapping relationship between the external management interface and one or more management modules, and the configuration request also includes access information of the management module; Determining the management module associated with the device according to the management request and the mapping relationship between the external management interface and the management module includes: Obtaining one or more access information of one or more management modules corresponding to the external management interface; The access information in the management request is matched with the one or more access information to determine the management module corresponding to the external management interface.

6. The method according to any one of claims 1 to 5, characterized in that: The management chip includes a mainboard management controller BMC chip; The external management interface includes one or more of a redfish interface, a simple network management protocol SNMP interface, and a command line interface CLI interface.

7. A management device, characterized in that: The device is applied to a server including a management chip, and the device includes: An acquisition unit, used to acquire a management request through an external management interface of a management chip, wherein the management request is used to acquire monitoring data of a device in the server; a determining unit, configured to determine a management module associated with the device according to the management request and a mapping relationship between the external management interface and the management module, wherein the management module associated with the device is used to implement status monitoring and management of the device; A processing unit is used to obtain monitoring data of the device from a management module associated with the device.

8. The device according to claim 7, characterized in that The management request is also used to request control of a device in the server, and the processing unit is used to control the device through a management module associated with the device.

9. A chip, characterized in that: The chip comprises a logic circuit and a power supply circuit, wherein the power supply circuit is used to supply power to the logic circuit, and the logic circuit is used to implement the method for managing chip implementation as claimed in any one of claims 1 to 6.

10. A computing device, characterized in that The computing device includes a management chip, a processor and components, the processor is used to run instructions to implement the business functions of the computing device, the management chip is used to implement the method implemented by the management chip as claimed in any one of claims 1 to 6, and the components include at least one of the following: a computing component, a storage component, an input and output IO component, an acceleration component, a memory component and a heat dissipation component.