Hardware management method

Through the server and the bastion machine, the external network management files are obtained to identify and manage new hardware, which solves the management difficulties caused by mismatch in BMC software versions, and realizes the rapid identification and management of new hardware, which improves the management capabilities and maintenance efficiency of BMC.

CN120353544APending Publication Date: 2025-07-22HENAN KUNLUN TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510221155.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-26
Publication Date
2025-07-22

AI Technical Summary

Technical Problem

When server hardware updates and BMC software versions do not match, BMC cannot quickly manage new hardware, resulting in management difficulties and potential business process disruptions.

Method used

Connecting with the bastion machine through the server, the bastion machine uses it to obtain management files related to the new hardware from the external network, assisting the BMC in identifying and managing new hardware, including obtaining basic information and management information of the target hardware, and managing it according to the indicator type and rules.

Benefits of technology

In the case where the BMC software version does not match, quickly identify and manage new hardware, improve BMC's system management capabilities and maintenance efficiency, and ensure the stable operation of the server.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120353544A_ABST
    Figure CN120353544A_ABST
Patent Text Reader

Abstract

The invention provides a hardware management method, which is applied to a baseboard management controller included in a server, the server is connected with an external network through a bastion host, and the method comprises the following steps: in response to target hardware detected by the server, identifying the target hardware according to a local management file; if the identification corresponding to the local management file fails, acquiring the management file downloaded from the external network from the bastion host; the management file is related to target hardware; and identifying the target hardware according to the management file, and managing the target hardware. Therefore, when the hardware update of the server is not matched with the software version of the baseboard management controller, the baseboard management controller can quickly have the capability of managing new hardware, so that the management capability and the maintenance efficiency of the baseboard management controller on the system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of server management, and particularly to a hardware management method. Background Art

[0002] A baseboard management controller (BMC) is a dedicated microcontroller embedded on the server motherboard, responsible for monitoring and managing the server hardware status, including but not limited to key parameters such as power supply, temperature, and fan speed. It provides a method independent of the server operating system to manage the server hardware, ensuring the continuity of hardware management when the operating system fails or is inaccessible.

[0003] In some application scenarios, such as server bidding or proof-of-concept phases, it is necessary to quickly and frequently update the server hardware, which requires the BMC to have strong adaptation capabilities to implement the management tasks of the new hardware. However, there may be a mismatch between the server hardware update and the BMC software version. For example, some servers are equipped with a lower version of the BMC software, which causes the BMC to be unable to manage the updated new hardware. However, developing a BMC software version adapted to the new hardware takes a certain amount of time and cannot quickly meet the needs of new hardware management. This situation may affect the stable operation and maintenance efficiency of the server, and even lead to management difficulties and potential interruption of business processes.

[0004] Therefore, how to enable the BMC to quickly have the ability to manage new hardware when the server hardware update and the BMC software version do not match has become an urgent problem to be solved. Summary of the Invention

[0005] The embodiments of this application provide a hardware management method and a computing device, enabling the BMC to quickly have the ability to manage new hardware when the server hardware update and the BMC software version do not match.

[0006] In a first aspect, the embodiments of this application provide a hardware management method applied to a baseboard management controller included in a server. The server is connected to the external network through a bastion host. The method includes: in response to the server detecting a target hardware, identifying the target hardware according to a local management file; if the identification corresponding to the local management file fails, obtaining from the bastion host a management file downloaded by it from the external network; the management file is related to the target hardware; identifying the target hardware according to the management file, and managing the target hardware.

[0007] Thus, when the server hardware update and the BMC software version do not match, the BMC can be quickly enabled to have the ability to manage new hardware, thereby improving the BMC's management ability and maintenance efficiency for the system.

[0008] In a possible implementation, the management file includes the basic information of the target hardware, the types of metrics to be managed, and the corresponding metric rules; identifying the target hardware according to the management file and managing the target hardware, including: identifying the target hardware according to the basic information; obtaining the metric information of the target hardware from the server; updating the metric values of each type under the metric type according to the metric information; obtaining the metric status of the target hardware according to the metric rules and the metric values.

[0009] Thus, the BMC can identify and manage the target hardware according to the management file.

[0010] In a possible implementation, in response to the server detecting the target hardware, identifying the target hardware according to the local management file, including: in response to the server detecting the target hardware, obtaining the target hardware identifier of the target hardware from the server; querying the basic information of the target hardware from the local management file according to the target hardware identifier; identifying the target hardware according to the basic information.

[0011] In a possible implementation, if the identification corresponding to the local management file fails, obtaining the management file downloaded from the external network by the bastion host, including: if the identification corresponding to the local management file fails, displaying the target hardware identifier so that the user can determine the local directory on the bastion host; the local directory is related to the target hardware identifier and is used to store the management file downloaded from the external network by the bastion host; in response to the user initiating a file transfer operation on the baseboard controller or the bastion host, obtaining the management file from the local directory.

[0012] In a possible implementation, in response to the user initiating a file transfer operation on the baseboard controller or the bastion host, obtaining the management file from the local directory, including: in response to the user initiating a connection operation on the baseboard controller or the bastion host, establishing a communication link with the bastion host; in response to the user initiating a file transfer operation using the communication link on the baseboard controller or the bastion host, obtaining the management file from the local directory.

[0013] In a possible implementation, the bastion host manages at least one target server of the server, and the target server is connected to the bastion host through a network switching device; in response to the user initiating a connection operation on the baseboard controller or the bastion host, establishing a communication link with the bastion host, including: in response to the user initiating a connection operation through the network switching device on the baseboard controller or the bastion host, establishing a communication link with the bastion host.

[0014] In a possible implementation, if the identification corresponding to the local management file fails, displaying the target hardware identifier, including: if the identification corresponding to the local management file fails, checking the status of the cooperation switch; if the cooperation switch is turned on, displaying the target hardware identifier.

[0015] In a possible implementation, the local directory is used to store the management files downloaded by the bastion host from the external network, including: the local directory is used to store the management files pre-downloaded by the bastion host from the external network, or the local directory is used to store the management files downloaded by the bastion host from the external network according to the user's download operation, and the management files are related to the target hardware identifier.

[0016] Thus, when the hardware update of the server does not match the BMC software version, the BMC can obtain the management files related to the target hardware in the external network by collaborating with the bastion host.

[0017] In a possible implementation, the method further includes: if the recognition corresponding to the management file fails, record the recognition result in the event log.

[0018] Thus, record the recognition result in the event log for subsequent in-depth analysis and problem troubleshooting.

[0019] In a second aspect, an embodiment of the present application provides a computing device, including:

[0020] At least one memory for storing programs;

[0021] At least one processor for executing the programs stored in the memory. When the programs stored in the memory are executed, the processor is used to execute the method described in the first aspect or any possible implementation of the first aspect.

[0022] In a third aspect, an embodiment of the present application provides a computer storage medium, in which instructions are stored. When the instructions run on a computer, the computer is caused to execute the method described in the first aspect or any possible implementation of the first aspect.

[0023] In a fourth aspect, an embodiment of the present application provides a computer program product containing instructions. When the instructions run on a computer, the computer is caused to execute the method described in the first aspect or any possible implementation of the first aspect.

[0024] It can be understood that the beneficial effects of the above second aspect to the fourth aspect can refer to the relevant descriptions in the above first aspect, and will not be elaborated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0026] Figure 1An architecture diagram of a hardware management system provided by an embodiment of the present application;

[0027] Figure 2 A flowchart of a hardware management method provided by an embodiment of the present application;

[0028] Figure 3 A schematic diagram of hardware management message interaction provided by an embodiment of the present application;

[0029] Figure 4 A schematic diagram of a hardware management process provided by an embodiment of the present application;

[0030] Figure 5 A schematic diagram of the structure of a computing device provided by an embodiment of the present application. Detailed implementation manners

[0031] In order to make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.

[0032] In the description of the embodiments of the present application, any embodiment or design solution with "exemplary", "for example", or "for illustration" should not be understood as being more preferred or having more advantages than other embodiments or design solutions. Specifically, the use of words such as "exemplary", "for example", or "for illustration" is intended to present relevant concepts in a specific manner.

[0033] In addition, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the technical features indicated. Thus, the features defined with "first" and "second" may explicitly or implicitly include one or more of such features. The terms "include", "comprise", "have" and their variants all mean "including but not limited to", unless otherwise specifically emphasized in other ways. "At least one" may be one or more, where multiple means two or more.

[0034] The BMC is responsible for managing the server hardware status. Taking the hardware connected to the server motherboard through the peripheral component interconnect (PCI) bus as an example, the existing management process can be summarized into the following steps:

[0035] First, the BMC obtains bus hardware function (bus, device, function, BDF) information from the server's basic input / output system (BIOS). The BIOS is the first software program loaded after the server starts up, responsible for initializing the hardware and providing the basic interaction between the server operating system and the hardware. When the server restarts or the PCI hardware is first detected through hot plugging, the BIOS assigns a BDF to the PCI hardware. The BDF information is used to uniquely identify the hardware on the system PCI bus.

[0036] Secondly, the BMC uses the BDF information to initiate a query request to the server's management engine (ME) to obtain the hardware vendor ID (VID) and device ID (DID) information that the ME obtains by accessing the configuration space of the PCI hardware.

[0037] Next, the BMC uses the VID and DID information to query the compatibility specification Extensible Markup Language (XML) file related to the PCI hardware from the current software version. The XML file includes information to ensure that the BMC can correctly identify, configure, and manage the server hardware.

[0038] Furthermore, the BMC can identify the hardware through the basic hardware information (such as model, manufacturer, function, etc.) included in the XML file to determine the existence of the hardware. After identifying the hardware, the BMC also configures the identified hardware through the hardware configuration information (such as operating parameters, memory management resources, I / O port management resources) included in the XML file to implement remote control management.

[0039] Even further, after the hardware is correctly identified and configured, the BMC monitors the hardware status and provides management functions such as remote control and hardware metric management.

[0040] The above process ensures the manageability of the server hardware. However, in some application scenarios, when the lower version of the BMC software cannot identify the newly updated hardware of the server, it takes a certain amount of time to develop a BMC software version that adapts to the new hardware, and it cannot quickly meet the needs of managing the new hardware.

[0041] Based on this, in the embodiment of the present application, based on the networking structure in which the server is connected to the external network through a bastion host, when the BMC cannot identify the newly connected hardware of the server according to the local management file, the BMC and the bastion host cooperate to enable the BMC to obtain the management file related to the new hardware in the external network.

[0042] Furthermore, the BMC identifies the hardware according to the basic hardware information included in the management file, and manages the hardware metrics of the hardware in combination with the hardware metric information monitored by the server according to the management information such as the metric type and metric rules included in the management file. Thereby, the BMC can quickly identify the server hardware and implement management including at least hardware metrics for the hardware, so as to quickly meet the needs of new hardware management and improve the management ability and maintenance efficiency of the BMC for the system.

[0043] Exemplarily, Figure 1 FIG. shows an architecture diagram of a hardware management system provided by an embodiment of the present application.

[0044] As Figure 1 shown, the hardware management system includes multiple servers, a bastion host, a network switching device connecting the servers and the bastion host, and switching and routing devices for connecting the bastion host to the external network. Among them, the multiple servers are respectively connected to the external network through the bastion host. The servers can be connected to the bastion host through the network switching device. For example, servers A1 to An included in subnet A in the internal network, or can be directly connected to the bastion host. For example, server B included in subnet B in the internal network. The internal network is a computer network within an organization that is not directly connected to the Internet and has relatively high security. The external network refers to the Internet, which connects devices and networks around the world and has relatively low security.

[0045] The bastion host is located at the boundary between the internal network and the external network. It is a special server used to provide a secure access entry point to manage and monitor the access of external network users to the servers. For example, by providing functions such as user management, resource management, permission management, and system settings, the bastion host can reduce the risk of servers being threatened by the outside.

[0046] The server includes a host HOST and a baseboard management system. The HOST includes core components such as the central processing unit (CPU), memory (RAM), storage device (such as a hard disk or a solid-state drive), and motherboard of the server, and is responsible for data processing and running application programs. The baseboard management system is independent of the server's operating system and takes the BMC as the core, and is responsible for monitoring and managing the physical health and security of the server, such as temperature, voltage, fan speed, etc. The HOST and the BMC work together to ensure the stable operation and manageability of the server. Communication can be carried out between the HOST and the BMC through multiple interfaces, such as the intelligent platform management interface (IPMI), etc.

[0047] The hardware management system can implement management of the server hardware in response to an operation performed by a user (such as Figure 1 the actions 1(1) to 1(2) shown).

[0048] Specifically, first, when the server detects the target hardware, the BMC queries the information related to the target hardware based on the local management files (such as the compatibility xml file) included in the current software version to identify and manage the target hardware. If the target hardware cannot be identified because the BMC software version is too low, the BMC prompts the user to perform action 1 (1) according to the user interaction interface provided by the bastion host: determine the local directory on the bastion host. The local directory is related to the target hardware and is used to store the management files (such as the compatibility xml file) downloaded by the bastion host from the external network. The user can be the server operation and maintenance personnel or R&D and testing personnel, and they can operate the BMC or bastion host through the user interaction interface provided by the BMC or bastion host.

[0049] Secondly, the user performs action 1 (2a) according to the user interaction interface provided by the BMC: initiate a file transfer operation from the BMC, so that the BMC actively establishes a communication link with the bastion host according to the intranet Internet protocol address (IP) of the bastion host, and uses the communication link to obtain the management file stored in the bastion host.

[0050] In application scenarios involving a large number of servers, users can also use the bastion host to perform action 1 (2b): initiate a file transfer operation from the bastion host, so that the bastion host actively establishes communication links with multiple BMCs in the target network segment, and uses each communication link to send management files in batches, so that multiple BMCs obtain management files stored in the bastion host, thereby improving the management efficiency of complex systems. It can be understood that the target network segment is the intranet segment where the BMC of the target server managed by the bastion host is located, and the target server is the server in the managed server to which the target hardware needs to be added.

[0051] Next, the BMC queries the management file to obtain the basic information and management information of the target hardware, identifies the hardware based on the basic information, and implements management of the hardware including at least hardware indicators based on at least the indicator information and indicator rules included in the management information and the hardware indicator information monitored by the server, so as to quickly meet the needs of new hardware management.

[0052] As a result, the BMC in the hardware management system can quickly identify server hardware and manage the hardware including at least hardware indicators, so as to quickly meet the needs of new hardware management and improve the BMC's management capabilities and maintenance efficiency for the system.

[0053] Based on the above content, a hardware management method proposed in this application is introduced in detail.

[0054] For example, Figure 2The figure shows a flowchart of a hardware management method provided by an embodiment of the present application. This method is applied to Figure 1 In the system architecture shown, the BMC included in the server is used to manage the hardware connected to the server motherboard. Specifically, the BMC is used to manage the hardware connected to the server motherboard, and the server is connected to the external network through a bastion host. The execution of this method mainly includes the following steps:

[0055] Step S201, in response to the server detecting the target hardware, identify the target hardware according to the local management file.

[0056] Exemplarily, the target hardware is a newly added hardware device on the server. These devices can communicate and exchange data with the server through interfaces such as PCI, I2C, and USB of the motherboard, or through virtualization management, or network mounting, etc.

[0057] Taking the device connected to the server through interfaces such as PCI, I2C, and USB provided by the server motherboard as an example, when the server restarts, the motherboard will detect the target hardware for the first time during the startup process. If the target hardware supports the hot-plug function, the server motherboard can immediately detect the addition of the target hardware even when the server is running.

[0058] In response to the server detecting the target hardware, the BMC obtains the target hardware identifier of the target hardware from the host included in the server, queries the basic information and management information of the target hardware from the local management file according to the target hardware identifier, identifies the target hardware according to the basic information, and manages the target hardware according to the management information.

[0059] The local management file is a file provided by the current version software of the BMC for identifying, configuring, and managing server hardware, such as a compatibility XML file of server hardware. The basic information related to the target hardware includes hardware model, manufacturer, function, etc. The management information related to the target hardware at least includes the types of metrics for which the target hardware is managed and the corresponding metric rules.

[0060] The metric type is the type of hardware metric for managing the target hardware, and the metric rule is the description content of the metric value under the metric type, including the normal value range of the metric value, the metric status corresponding to different metric values, and the actions that may need to be taken under different metric statuses. For example, for a server network card, the metric type includes the network card connection mode, and the metric rule indicates that the normal value range of the network port connection mode of this network card includes "duplex mode" and "auto-negotiation mode". If it is detected that the current network card connection mode is "simplex mode", the metric status is abnormal. At this time, it is prompted that the current connection mode of the server network card is incorrect, and the network card needs to be added again.

[0061] Thus, the BMC queries the basic information and management information related to the target hardware from the local management file to identify the target hardware based on the basic information. The BMC also manages the target hardware according to the management information on the basis of identifying the target hardware.

[0062] Exemplarily, Figure 3 FIG. 5 shows a schematic diagram of hardware management message interaction provided by an embodiment of the present application.

[0063] As Figure 3 shown, the server includes a host HOST and a baseboard management system with the BMC as the core. Communication between the HOST and the BMC is based on the IPMI interface. The HOST includes at least BIOS, ME, and PCI target hardware. This schematic diagram is used to illustrate the message interaction process of the BMC managing the PCI target hardware.

[0064] After the server motherboard detects the target hardware through the PCI interface, the BIOS of the server assigns a system-unique identifier BDF to it and performs action 3(1): sending the BDF to the BMC.

[0065] In response to the above-mentioned BMF sent when the motherboard detects the target hardware, the BMC receives the BDF and performs action 3(2): sending the BDF to the ME, and performs action 3(3): receiving the target hardware identifier returned by the ME. The target hardware identifier of the PCI target hardware is the VID and DID.

[0066] Next, the BMC queries the basic information and management information related to the target hardware from the local management file according to the VID and DID to identify and manage the target hardware.

[0067] Step S202, if the identification corresponding to the local management file fails, obtain the management file downloaded from the external network from the bastion host. The management file is related to the target hardware.

[0068] In one embodiment, the management file is a related file used by the BMC to implement target hardware management. It is provided by the BMC manufacturer, the target hardware manufacturer, or the server, and can be a compatibility xmI file corresponding to the target hardware, or a customized file that at least includes the basic information and management information related to the target hardware. The index types and corresponding index rules included in the management information can be customized to more flexibly implement the management of new server hardware in the scenario of quickly and frequently updating server hardware.

[0069] Optionally, the management file is an encrypted file provided by the BMC manufacturer, the target hardware manufacturer, or the server manufacturer. Before the BMC uses this management file, it is necessary to decrypt the management file and use it after obtaining the decrypted management file.

[0070] Thus, the security of BMC for managing server hardware can be improved.

[0071] If the recognition of the local management file fails, it means that the management file related to the target hardware cannot be found in the local management file, and the current software version of BMC does not match the target hardware, so the target hardware cannot be recognized. At this time, BMC can display this recognition result and the target hardware identifier to the user, so that the user can obtain the management file related to the target hardware for BMC through other means.

[0072] From Figure 1 As can be seen from the architecture diagram shown, the server is connected to the external network through a bastion host. Therefore, after BMC displays the failure result of the local management file and the target hardware identifier, the user can obtain the management file related to the target hardware from the external network through the bastion host.

[0073] Optionally, a collaboration switch can also be set in BMC. Only when the collaboration switch is turned on, BMC will display the recognition failure result and the target hardware identifier to perform subsequent collaborative recognition operations. The collaborative recognition operations include the collaboration between BMC and the bastion host to download the management file related to the target hardware from the external network to identify and manage the target hardware that does not match the current software version of BMC.

[0074] Thus, the security of managing server hardware can be further improved.

[0075] Specifically, first, BMC displays the failure result of the local management file and the target hardware identifier so that the user can determine the local directory on the bastion host. The local directory is related to the target hardware identifier and is used to store the management file downloaded by the bastion host from the external network.

[0076] In one implementation, the local directory is used to store the management file downloaded by the bastion host from the external network according to the user's download operation. The management file is related to the target hardware identifier. The user can use the bastion host to connect to the external network, search according to the target hardware identifier on the external network, and obtain the external network IP related to the management file. Then obtain the management file from the device represented by the external network IP and store it in the local directory of the bastion host. In another implementation, the user can search for the local directory related to the target hardware identifier on the bastion host, and the bastion host pre-loads the management file from the external network and stores it in the local directory.

[0077] Second, in response to the user's file transfer operation initiated on the baseboard controller or the bastion host, a communication link is established between BMC and the bastion host, and BMC obtains the management file from the local directory using this communication link.

[0078] In one implementation, in response to a user initiating a connection operation on the BMC to establish a communication link between the two based on the intranet IP address of the bastion host, the communication link is established. In another implementation, in response to a user initiating a connection operation on the bastion host based on the intranet IP address of the BMC, the communication link is established. The communication protocol corresponding to the communication link can be the File Transfer Protocol, the Hypertext Transfer Protocol, the Network File System, the Secure Copy Protocol, etc.

[0079] Exemplarily, the bastion host manages at least one target server of the server, and the target server can be Figure 1 Servers A1 to An in the subnet A shown. Therefore, in yet another implementation, in response to a user initiating a connection operation on the bastion host according to the intranet IP address segment where the BMC of at least one target server is located, communication links between each of multiple BMCs and the bastion host are established simultaneously.

[0080] Optionally, Figure 1 Servers A1 to An in the subnet A shown are connected to the bastion host through a network switching device. Therefore, a user can initiate a connection operation through the network switching device on the baseboard controller or the bastion host to establish a communication link between the BMC and the bastion host.

[0081] Thus, centralized management of the server by the bastion host can be achieved to improve the security of the system.

[0082] In response to a user initiating a file transfer operation using the communication link on the baseboard controller or the bastion host, the BMC obtains the management file from the local directory of the bastion host. Specifically, when the user initiates a file transfer operation, the local directory information is carried, and in response to the initiated request, the bastion host sends the management file stored in the local directory to the BMC.

[0083] Exemplarily, if communication links have been established between each of multiple BMCs and the bastion host, in response to a user initiating a file transfer operation using the communication link on the bastion host, the management file can be mass - sent from the local directory to each BMC.

[0084] Thus, the efficiency of multiple BMCs obtaining the management file can be improved, thereby improving the management efficiency of the server hardware.

[0085] Step S203, identify the target hardware according to the management file and manage the target hardware.

[0086] In one embodiment, after the BMC obtains the management file from the bastion host, it queries the basic information and management information related to the target hardware from the management file according to the target hardware identifier to identify the hardware based on the basic information. On this basis, the target hardware is also managed based on the management information.

[0087] Specifically, identify the target hardware based on the basic information, and obtain the metric information of the target hardware from the hosts included in the server. Update the metric values of each type under the metric type according to the metric information, and obtain the metric status of the target hardware and the actions that may need to be taken according to the metric rules and metric values. The BMC can display the metric status of the target hardware and the corresponding indication information so that the user can handle the abnormal metric status.

[0088] Continuing Figure 3 In the example in, it can be understood that if the current software version of the BMC is too low relative to the target hardware version, the recognition of the corresponding local management file fails. Therefore, the BMC executes action 3(4): returns the recognition failure result corresponding to the local management file to the BIOS. At this time, the BMC also displays the recognition failure result of this time and the VID and DID of the target hardware to the user by displaying text 1. So that the user can determine the local directory on the bastion host, and the local directory is related to the VID and DID, and is used to store the management files related to the target hardware obtained by the bastion host from the external network.

[0089] After the BMC obtains the management file from the local directory of the bastion host, query the basic information and management information from the management file according to the VID and DID of the target hardware, and identify the target hardware according to the basic information. If the target hardware is successfully identified according to the management file, execute action 3(5a): send the recognition success result, so as to manage the target hardware based on the management information combined with the target hardware metric information sent by the BIOS. And display the management result in display text 2, for example, metric 1: represents the metric type, status: the metric status corresponding to metric 1. If the target hardware cannot be identified according to the management file, execute action 3(5b): send the recognition failure result, record the recognition result in the event log of the BMC, and the event log of the BMC can also be displayed.

[0090] Therefore, the solution provided by this application is based on the networking structure where the server is managed by the bastion host and the bastion host is connected to the external network. When the BMC cannot identify the newly added hardware of the server according to the local management file, the BMC and the bastion host cooperate to enable the BMC to obtain the management files related to the new hardware in the external network.

[0091] Furthermore, the BMC identifies the new hardware according to the basic information of the new hardware included in the management file. Based on this, the BMC manages the hardware metrics of the new hardware according to the management information such as the metric type and metric rules included in the management file, combined with the hardware metric information monitored by the server.

[0092] Thus, the BMC can quickly identify the newly added hardware of the server and implement management including at least hardware metrics for the new hardware, so as to quickly meet the management requirements for the new hardware and improve the management ability and maintenance efficiency of the BMC for the system.

[0093] It can be understood that in this solution, whether the management file is a compatibility xmI file related to new hardware or a custom file that at least includes files for identifying new hardware and managing new hardware, the BMC does not perform interface configuration for the new hardware. Therefore, communication with the new hardware and remote control of the new hardware cannot be achieved temporarily. However, "temporary management" of the new hardware can be implemented for server application scenarios that require quick matching of new hardware to quickly meet user needs and improve the reliability and maintainability of the system. "Temporary management" at least includes managing the hardware metrics of the new hardware. In the later stage, systematic development of the BMC software version can be carried out to manage the new hardware more comprehensively, which will not be elaborated here.

[0094] Exemplarily, Figure 4 FIG. shows a schematic diagram of a hardware management process provided by an embodiment of the present application. As Figure 4 shown, this figure shows an application scenario that uses the networking structure adopted by the hardware management system shown in Figure 1 . It is known that the local management files included in the current software version of the BMC cannot identify the PCl new hardware detected by the server motherboard. Based on this, the process mainly includes the following steps:

[0095] Step S401, the BMC turns on the collaboration switch.

[0096] Exemplarily, after the BMC turns on the collaboration switch, the identification failure result corresponding to the local management file and the VID and DID information of the new hardware can be displayed.

[0097] Step S402, obtain the management file compression package related to the new hardware from the bastion host.

[0098] Exemplarily, determine the local directory for storing the management file on the bastion host according to the VID and DID information. The local directory is used to store the management files obtained by the bastion host from the external network.

[0099] This file compression package is encrypted and can only be decrypted and read by servers authorized by specific manufacturers.

[0100] Step S403, the BMC establishes a communication link with the bastion host.

[0101] Exemplarily, enter the internal network IP address of the bastion host at the manual switch interface provided by the BMC of the server, and connect to the bastion host through the FTP protocol to establish a communication link.

[0102] Step S404, the BMC obtains the management file compression package from the bastion host.

[0103] Exemplarily, the BMC downloads the management file compression package from the local directory of the bastion host based on the communication link.

[0104] Step S405: The BMC identifies new hardware based on the decompressed management file.

[0105] Exemplarily, the server where the BMC is located, as a server of a specific manufacturer, can obtain the decryption password in advance. Therefore, the BMC decompresses the management file package according to the decryption password, and queries the basic information and management information related to the new hardware in the decompressed management file based on the VID and DID of the new hardware. If the basic information related to the new hardware can be queried, the identification is successful; otherwise, it fails.

[0106] Step S406: The BMC determines whether to identify new hardware.

[0107] Step S407: The BMC displays the hardware metric management data.

[0108] Exemplarily, if the BMC successfully identifies the new hardware, it manages the new hardware by combining the management information with the hardware metric information monitored by the server, and displays the metric management data of the new hardware.

[0109] Step S408: The BMC records the result of failed collaborative identification.

[0110] Exemplarily, if the BMC still cannot identify the new hardware, the result is recorded in the system event log for subsequent analysis.

[0111] It can be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not mean the order of execution. The order of execution of each process should be determined by its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application. In addition, in some possible implementation manners, the steps in the above embodiments can be selectively executed according to actual situations, can be partially executed, or can be fully executed, which is not limited herein. Additionally, all or part of any feature in the above embodiments can be freely combined in any way without conflict. The combined technical solutions are also within the scope of the present application.

[0112] Exemplarily, an embodiment of the present application also provides a computing device 1000. As Figure 5 shown, the computing device 1000 includes: a bus 1002, a processor 1004, a memory 1006, and a communication interface 1008. The processor 1004, the memory 1006, and the communication interface 1008 communicate with each other through the bus 1002. It should be understood that the present application does not limit the number of processors and memories in the computing device 1000.

[0113] The bus 1002 can be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 it is represented by a single line in Figure 5 , but this does not mean that there is only one bus or one type of bus. The bus 1004 can include a path for transmitting information between various components of the computing device 1000 (e.g., the memory 1006, the processor 1004, the communication interface 1008).

[0114] The processor 1004 can include any one or more of a central processing unit, a graphics processing unit (GPU), a microprocessor (MP), a digital signal processor (DSP), a baseboard management controller, and other processors.

[0115] The memory 1006 can include volatile memory, such as random access memory (RAM). The processor 1004 can also include non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid state drive (SSD).

[0116] The communication interface 1008 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 1000 or a cluster composed of multiple computing devices 1000 and other devices or communication networks.

[0117] The computing device 1000 includes internal network devices, or the computing device 1000 is externally connected to multiple network devices. The internal network devices communicate with the processor 1004, the memory 1006, and the communication interface 1008 through the bus 1002, and the external network devices communicate with the computing device 1000 through interfaces such as Ethernet, Fibre Channel, and InfiniBand.

[0118] The memory 1006 stores executable program code / instructions, and the processor 1004 executes the executable program code / instructions to implement Figure 2The process shown in [figure] realizes all or part of the steps of the method in the above embodiments. In other words, the memory 1006 stores a program / instructions for executing all or part of the steps of the method in the above embodiments.

[0119] An embodiment of the present application provides a computing device, including: a memory and a processor; the memory and the processor are coupled; the memory is used to store a program; the processor is used to execute the program stored in the memory, and when the program stored in the memory is executed, the processor is used to execute the method in the above embodiments.

[0120] Based on the method in the above embodiments, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program runs on a processor, the processor is caused to execute the method in the above embodiments.

[0121] Based on the method in the above embodiments, an embodiment of the present application provides a computer program product. When the computer program product runs on a processor, the processor is caused to execute the method in the above embodiments.

[0122] The method steps in the embodiments of the present application can be implemented in a hardware manner or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, and the software modules can be stored in a random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, mobile hard disks, CD-ROMs, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC.

[0123] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions according to the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted through a computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired manner (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or a wireless manner (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access or a data storage device such as a server or data center that includes one or more integrated available media. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)), etc.

[0124] It can be understood that the various numerical numbers involved in the embodiments of the present application are only for the convenience of description and are not used to limit the scope of the embodiments of the present application.

Claims

1. A hardware management method, characterized in that, Applied to the baseboard management controller included in the server, the server is connected to the external network through a bastion host, and the method includes: In response to the server detecting a target hardware, identifying the target hardware according to a local management file; If the identification corresponding to the local management file fails, obtaining from the bastion host the management file downloaded by it from the external network; the management file is related to the target hardware; Identifying the target hardware according to the management file and managing the target hardware.

2. The method according to claim 1, wherein The management file includes the basic information of the target hardware, the types of metrics to be managed, and the corresponding metric rules; The identifying the target hardware according to the management file and managing the target hardware includes: Identifying the target hardware according to the basic information; Obtaining the metric information of the target hardware from the server; Updating the metric values of each type under the metric type according to the metric information; Obtaining the metric status of the target hardware according to the metric rules and the metric values.

3. The method according to claim 1, characterized in that, The in response to the server detecting a target hardware, identifying the target hardware according to a local management file includes: In response to the server detecting a target hardware, obtaining from the server the target hardware identifier of the target hardware; Querying the basic information of the target hardware from the local management file according to the target hardware identifier; Identifying the target hardware according to the basic information.

4. The method according to claim 3, characterized in that, The if the identification corresponding to the local management file fails, obtaining from the bastion host the management file downloaded by it from the external network includes: If the identification corresponding to the local management file fails, displaying the target hardware identifier so that the user can determine a local directory on the bastion host; the local directory is related to the target hardware identifier, and the local directory is used to store the management file downloaded by the bastion host from the external network; In response to the user initiating a file transfer operation on the baseboard controller or the bastion host, obtaining the management file from the local directory.

5. The method according to claim 4, characterized in that The in response to the user initiating a file transfer operation on the baseboard controller or the bastion host, obtaining the management file from the local directory includes: In response to the user initiating a connection operation on the baseboard controller or the bastion host, establishing a communication link with the bastion host; In response to the user initiating a file transfer operation using the communication link on the baseboard controller or the bastion host, obtaining the management file from the local directory.

6. The method according to claim 5, wherein The bastion host manages at least one target server of the server, and the target server is connected to the bastion host through a network switching device; The in response to the user initiating a connection operation on the baseboard controller or the bastion host, establishing a communication link with the bastion host includes: In response to the user initiating a connection operation through the network switching device on the baseboard controller or the bastion host, establishing a communication link with the bastion host.

7. The method according to claim 4, wherein The if the identification corresponding to the local management file fails, displaying the target hardware identifier includes: If the identification corresponding to the local management file fails, checking the status of the collaboration switch; If the collaboration switch is turned on, displaying the target hardware identifier.

8. The method according to claim 4, characterized in that The local directory is used to store the management files downloaded by the bastion host from the external network, including: The local directory is used to store the management files previously downloaded by the bastion host from the external network, or The local directory is used to store the management files downloaded by the bastion host from the external network according to the user's download operation, and the management files are related to the target hardware identifier.

9. The method according to claim 1, characterized in that The method further includes: If the recognition corresponding to the management file fails, record the recognition result in the event log.

10. A computing device, characterized in that, Including: At least one memory for storing programs; At least one processor for executing the programs stored in the memory. When the programs stored in the memory are executed, the processor is used to execute the method according to any one of claims 1-9.