Hardware management method based on virtualization technology, and hardware management platform

By creating a virtual BMC in XPU-BOX devices in cloud computing scenarios, the problems of low management efficiency and poor stability caused by frequent updates and changes in hardware resources are solved, and efficient and stable operation and maintenance management are achieved.

WO2025073258A1PCT designated stage expired Publication Date: 2025-04-10HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/122536
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-14
Filing Date
2024-09-29
Publication Date
2025-04-10

AI Technical Summary

Technical Problem

In the cloud computing scenario, the hardware resources of XPU-BOX devices are frequently updated and changed, resulting in low management efficiency and poor stability of cloud management systems.

Method used

By applying virtualization technology on the substrate management controller (BMC), a virtual BMC is created, each virtual BMC manages a processor, independent of the connection between other virtual BMCs and the operation and maintenance system.

Benefits of technology

It realizes precise management of the processor, reduces the frequency of the interface adaptation of the operation and maintenance system, improves management efficiency and system stability, and reduces the impact of single point of failure on the overall operation and maintenance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024122536_10042025_PF_FP_ABST
    Figure CN2024122536_10042025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a hardware management method based on virtualization technology, and a hardware management platform. The method is used for a hardware management platform; the hardware management platform creates virtual BMCs on a BMC by acquiring basic information of processors arranged in a computing device, and configures the virtual BMCs such that the connection established between the virtual BMCs and an operation and maintenance system is independent of the connection established between other virtual BMCs and the operation and maintenance system. Therefore, one-to-one correspondence management of the virtual BMCs for the processors on the computing device is realized, and through independent connection between the virtual BMCs and the operation and maintenance system, when a processor on the computing device changes, the effect on operation and maintenance of other processors is reduced, thereby improving the system stability.
Need to check novelty before this filing date? Find Prior Art

Description

A hardware management method and hardware management platform based on virtualization technology

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on October 6, 2023, with application number 202311288338.7, and invention name “A hardware platform management method and hardware management platform based on virtualization technology”, and the Chinese patent application filed with the State Intellectual Property Office of China on March 14, 2024, with application number 202410294665.1, and invention name “A hardware management method and hardware management platform based on virtualization technology”, the entire contents of which are incorporated by reference into this application. Technical Field

[0003] The present invention relates to the field of hardware management, and in particular to a hardware management method and a hardware management platform based on virtualization technology. Background Art

[0004] With the development of cloud computing technology, the demand for computing power in cloud scenarios has gradually increased. Many computing tasks require large-scale hardware clusters such as XPUs to be performed under high-performance networks. All XPU and other processor hardware resources are pooled and connected through high-speed networks to form computing hardware devices. Taking the XPU-BOX as an example, XPUs of the same or different types are physically concentrated in a hardware box. As the smallest hardware entity in the cluster network, these entities are collectively referred to as XPU-BOX.

[0005] Each XPU-BOX is equipped with a Baseboard Management Controller (BMC), which monitors and manages the box and provides a standard connection interface to the operation and maintenance system. The operation and maintenance system uses this interface to manage all XPU-BOXs. As the number of XPUs in an XPU-BOX changes, the device management interface changes, requiring constant updates to the cloud management system and BMC. This results in low management efficiency and poor stability for the cloud management system.

[0006] Summary of the Invention

[0007] The embodiments of the present application provide a hardware platform management method and hardware management platform based on virtualization technology. Through the hardware management platform, a virtual BMC is created, and each virtual BMC manages a corresponding processor. On this basis, when a processor on a computing device is added or removed, it will not affect the operation and maintenance system's management of other processors on the computing device, which helps to improve operation and maintenance efficiency and reliability. The technical solution is as follows:

[0008] In a first aspect, the present application provides a hardware management method based on virtualization technology. The method is applied to a hardware management platform, wherein the hardware management platform runs on a baseboard management controller (BMC), and the BMC is connected to a processor provided on a computing device. The hardware management platform is connected to an operation and maintenance system, and the operation and maintenance system is used to obtain status information of the computing device. The method specifically includes the following steps: obtaining basic information of the aforementioned processor, which may include information about the number and model of the processor, and the hardware management platform creating a virtual BMC on the BMC based on the basic information, and the virtual BMC is used to manage the processor. The hardware management platform configures the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connections established between other virtual BMCs and the operation and maintenance system, wherein the operation and maintenance system is used to obtain status information of the first processor through the virtual BMC. When multiple processors are provided on the computing device, the hardware management platform obtains basic information of the multiple processors, which basic information includes information about the number of the multiple processors. It is worth noting that the connection between the BMC and the processor provided on the computing device can be a connection established between the processor and the BMC when the processor is first connected to the computing device, or the processor can be provided on the computing device before connecting to the BMC and connect to the BMC when it is powered on or first started.

[0009] In the solution provided by this application, in order to achieve efficient management of the processors in the hardware computing device, the hardware management platform creates virtual BMCs corresponding to these processors in the platform computing device based on the basic information of the processors connected to the current hardware computing device, thereby achieving precise management of the processors. At the same time, due to the use of the virtual BMC management method, the interface adaptation work of the operation and maintenance system only needs to be adapted to the changed processors, and is not affected by changes in the entire hardware computing device, thereby improving the stability of the interface. By adopting a virtual BMC to manage the corresponding processor, when a single virtual BMC fails, the impact on other virtual BMCs is reduced, thereby improving the stability of the overall operation and maintenance system.

[0010] In combination with the first aspect, in a possible implementation of the first aspect, the basic information also includes management channel information of the processor, and a virtual BMC is created based on the basic information. The method also includes the following specific steps: the hardware management platform creates a virtual BMC for managing the processor through the management channel based on the basic information.

[0011] In the solution provided in this application, in order to achieve one-to-one management of processors by virtual BMCs, the management channels corresponding to the processors are mapped to the corresponding virtual BMCs when creating the corresponding virtual BMCs. This allows each BMC to manage the corresponding processors through independent management channels, avoiding affecting the communication between other virtual BMCs and processors.

[0012] In conjunction with the first aspect, in one possible implementation of the first aspect, the hardware management platform connects to the operation and maintenance system via an Internet Protocol (IP) address, wherein the BMC stores the IP address. After creating a virtual BMC, the hardware management platform configures the virtual BMC so that the virtual BMC is bound to the IP address, thereby connecting the virtual BMC to the operation and maintenance system via the IP address. When there are multiple processors and multiple virtual BMCs are created, the hardware management platform configures each of the multiple virtual BMCs so that each virtual BMC is bound to a corresponding IP address.

[0013] In the solution provided by this application, the connection between the virtual BMC and the operation and maintenance management system is achieved by configuring the virtual BMC to bind an IP address. In the case of multiple virtual BMCs, each virtual BMC is bound to a separate IP address, thereby ensuring independent communication between the virtual BMC and the operation and maintenance system. When a problem occurs in one virtual BMC, it will not affect the other virtual BMCs.

[0014] In conjunction with the first aspect, in one possible implementation of the first aspect, the basic processor information also includes the processor type. The BMC also stores a configuration file, and different configuration files are loaded for different types of processors. After creating a virtual BMC, the hardware management platform configures the virtual BMC based on the configuration file, so that the virtual BMC loads the configuration file. The configuration file is used to instruct the virtual BMC on a function for managing processors of the corresponding type.

[0015] In the solution provided by this application, the virtual BMC created by the hardware management platform can be a stateless virtual BMC. This allows the hardware management platform to create the virtual BMC more quickly and connect to the processor through the hardware management channel. It also reduces the amount of data stored in the BMC, requiring only the data required to create the stateless BMC and the configuration files corresponding to each processor type. After creating the virtual BMC, the configuration file is loaded based on the processor type, thereby enabling the loading of management functions for the processor, facilitating the virtual BMC's management of the processor.

[0016] In combination with the first aspect, in a possible implementation of the first aspect, when the processor is removed from the computing device, the hardware management platform obtains information about the processor being removed from the computing device, and uninstalls the virtual BMC from the BMC based on the information.

[0017] In the solution provided in this application, when a processor is removed from a computing device, the hardware management platform will uninstall the virtual BMC that manages it. On the one hand, this saves the storage space of the BMC and provides space for new processors added to subsequent computing devices. On the other hand, when a processor is removed, the hardware management platform needs to notify the operation and maintenance system to remove the virtual BMC from the operation and maintenance system to ensure timely updating of operation and maintenance information.

[0018] In combination with the first aspect, in a possible implementation of the first aspect, after the hardware management platform configures the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connections established between other virtual BMCs and the operation and maintenance system, the hardware management platform further configures the virtual BMC so that the virtual BMC registers the processor with the operation and maintenance system.

[0019] In the solution provided in this application, in order to realize real-time update and grasp of processor status information by the operation and maintenance system, after the virtual BMC establishes a connection with the operation and maintenance system, the processor is registered with the operation and maintenance system to realize the operation and maintenance system's management of the processor and obtain the processor's status information in real time.

[0020] In combination with the first aspect, in a possible implementation of the first aspect, the type of processor includes one or more of a central processing unit CPU, a neural network processor NPU, a graphics processor GPU, a tensor processor TPU, a deep learning processor DPU, and a brain processor BPU.

[0021] In the solution provided in this application, the types of processors set on the computing device can be diverse. To meet different task requirements, the same processor can be set on the same computing device, or different processors can be set to achieve diversified task processing and improve task processing efficiency.

[0022] In combination with the first aspect, in a possible implementation of the first aspect, when a new processor is deployed in a computing device, the hardware management platform can create a virtual BMC to be enabled before the new processor is deployed. When the new processor is connected, the corresponding configuration file is loaded according to the type of the obtained processor, and the connection between the virtual BMC and the processor and the operation and maintenance system can be configured; or when a notification of the new processor connection is received, a corresponding virtual BMC can be created according to the corresponding basic information.

[0023] In the solution provided in this application, a virtual BMC to be started is created before a new processor is connected, so that the virtual BMC can be quickly started when the new processor is connected. It only needs to load the configuration file according to the type of the new processor, thereby improving the connection speed between the virtual BMC and the processor and the operation and maintenance system, and improving the operation and maintenance efficiency.

[0024] The second aspect or any implementation of the second aspect is an implementation of a device corresponding to the first aspect or any implementation of the first aspect. Specifically, the present application provides a hardware management platform, which runs on a baseboard management controller BMC, and the BMC is connected to a processor set on a computing device, wherein the hardware management platform is connected to an operation and maintenance system, and the operation and maintenance system is used to obtain status information of the computing device. The hardware management platform specifically includes: an information acquisition module, a creation module and a configuration module, wherein the information acquisition module is used to obtain basic information of the processor, the creation module is used to create a virtual BMC on the BMC based on the basic information, the virtual BMC is used to manage the processor, and the configuration module is used to configure the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connection established between other virtual BMCs and the operation and maintenance system, wherein the operation and maintenance system is used to obtain status information of the first processor through the virtual BMC.

[0025] In combination with the second aspect, in a possible implementation of the second aspect, the basic information also includes management channel information of the processor, and the creation module in the hardware management platform is specifically used to create a virtual BMC for managing the processor through the management channel based on the basic information.

[0026] In combination with the second aspect, in a possible implementation of the second aspect, the hardware management platform is connected to the operation and maintenance system via an Internet Protocol IP address, wherein the BMC stores the IP address, and the configuration module in the hardware management platform is specifically used to configure the virtual BMC so that the virtual BMC is bound to the IP address, and the virtual BMC is also used to connect to the operation and maintenance system via the IP address.

[0027] In combination with the second aspect, in a possible implementation of the second aspect, the basic information also includes the type of processor, and the BMC also stores a configuration file. After creating the virtual BMC, the configuration module is also used to configure the virtual BMC according to the configuration file, so that the virtual BMC loads the configuration file, and the configuration file is used to instruct the virtual BMC to manage the function of the corresponding type of processor.

[0028] In combination with the second aspect, in a possible implementation of the second aspect, the acquisition module is further used to obtain information about removing a processor from the computing device, and the hardware management platform also includes an uninstall module, wherein the uninstall module is used to uninstall the virtual BMC from the BMC according to the information.

[0029] In combination with the second aspect, in a possible implementation of the second aspect, after configuring the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connections established between other virtual BMCs and the operation and maintenance system, the configuration module is further used to configure the virtual BMC so that the virtual BMC registers the processor with the operation and maintenance system.

[0030] In a third aspect, the present application provides a BMC cluster, comprising at least one BMC, each BMC comprising a BMC processor and a BMC memory; the BMC processor of at least one BMC is used to execute instructions stored in the BMC memory of at least one BMC, so that the BMC cluster executes the above-mentioned first aspect and the method combined with any one of the implementation methods of the above-mentioned first aspect.

[0031] In a fourth aspect, the present application provides a computing device cluster comprising at least one computing device, each computing device comprising at least one processor and at least one BMC, wherein at least one BMC is used to execute the above-mentioned first aspect and the method combined with any one of the implementation methods of the above-mentioned first aspect, so that the operation and maintenance system obtains the status information of at least one processor in each computing device through the virtual BMC running in at least one BMC.

[0032] In a fifth aspect, the present application provides a computer program product comprising instructions, which, when executed by a computer device cluster, enables the computer device cluster to execute the above-mentioned first aspect and a method combined with any one of the implementation modes of the above-mentioned first aspect.

[0033] In a sixth aspect, the present application provides a computer-readable storage medium comprising computer program instructions. When the computer program instructions are executed by a computing device cluster, the computing device cluster executes the above-mentioned first aspect and a method combined with any one of the implementation methods of the above-mentioned first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] FIG1 is a schematic diagram of a scenario of an operation and maintenance management system provided by an embodiment of the present application;

[0035] FIG2 is a schematic diagram of an architecture of a hardware management method based on virtualization technology provided in an embodiment of the present application;

[0036] FIG3 is a flow chart of a hardware management method based on virtualization technology provided in an embodiment of the present application;

[0037] FIG4 is another flow chart of a hardware management method based on virtualization technology provided in an embodiment of the present application;

[0038] FIG5 is another flow chart of a hardware management method based on virtualization technology provided in an embodiment of the present application;

[0039] FIG6 is another flow chart of a hardware management method based on virtualization technology provided in an embodiment of the present application;

[0040] FIG7 is a schematic diagram of the structure of a hardware management platform provided in an embodiment of the present application;

[0041] FIG8 is a schematic structural diagram of a BMC of a hardware management platform based on virtualization technology provided in an embodiment of the present application;

[0042] 9 is a structural diagram of a BMC cluster of a hardware management platform based on virtualization technology provided in an embodiment of the present application;

[0043] 10 is a schematic structural diagram of a computing device of a hardware management platform based on virtualization technology provided in an embodiment of the present application;

[0044] FIG11 is a structural diagram of a computing device cluster of a hardware management platform based on virtualization technology provided in an embodiment of the present application. DETAILED DESCRIPTION

[0045] The following is a clear and complete description of the technical solutions in the embodiments of the present application in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0046] References herein to "embodiments" mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0047] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in yet other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0048] First, the nouns that appear in this article are explained as follows:

[0049] The Baseboard Management Controller (BMC) is a core component of the server management system defined by the Intelligent Platform Management Interface (IPMI) protocol. It is a hardware manager integrated into servers, network devices, and other computer systems. Its function is to monitor the hardware status of devices, perform remote management operations, and provide device monitoring and control functions. The BMC communicates with various components (such as processors, network cards, graphics cards, and sensors) on servers and similar devices through various interfaces, such as the system management bus (SMBUS), to obtain device information and perform control and adjustment. Management systems for servers and other server-like hardware can run on the BMC. The BMC enables remote server management, including remote power on and off, operating system (OS) installation and deployment, remote KVM, and fault monitoring. The BMC provides standard management protocols such as IPMI and Redfish.

[0050] XPU: With the explosive development of AI, 5G, and IoT technologies, the CPU-based architecture can no longer meet the rapid growth of computing power in new scenarios. The computing power improvement has expanded from the central processing unit (CPU) to computing units or processors represented by graphics processing units (GPU), tensor processing units (TPU), neural network processing units (NPU), brain processing units (BPU), deep learning processing units (DPU), etc. These computing units or processors are collectively referred to as XPU. In the embodiments of this application, XPU is equivalent to the processor.

[0051] Computing devices: devices that usually have multiple processors and corresponding hardware, such as XPU-BOX, servers, data centers, etc. Taking servers as an example, they include multiple hardware components such as processors, network cards, graphics cards, sensors, etc.

[0052] Infrastructure: The infrastructure includes multiple computing devices, each of which can provide computing, network, and storage resources.

[0053] Operation and maintenance system: This system obtains status information about computing devices through the BMC to manage their operation and maintenance. The operation and maintenance system can run on the computing device itself or on other devices. For example, if a computing device is equipped with multiple components such as a processor and memory, the operation and maintenance system can obtain processor and memory status information through the BMC to manage the computing device's operation and maintenance.

[0054] XPU-BOX: A physical device that centrally manages multiple XPUs and provides power supply and heat dissipation management for the XPUs.

[0055] Hardware management platform: A management platform that runs on a BMC, such as a BMC management system, or other forms of management platforms that manage hardware on servers or hosts.

[0056] Virtual BMC: The BMC system is instantiated through virtualization technology. A virtual BMC typically has the BMC's management functions for hardware such as processors installed on computing devices. Virtual BMCs also include stateless virtual BMCs, which typically only have the underlying functions of a BMC and require specific configuration files to implement management functions for specific processors.

[0057] Redfish: Redfish is a management standard based on HTTPs services, which uses RESTful (Representational State Transfer) interfaces to implement device management.

[0058] Simple Network Management Protocol (SNMP): A standard network management protocol widely used in TCP / IP networks, SNMP supports network management systems, allowing them to monitor connected devices for any issues requiring management attention. SNMP uses a polling mechanism and provides a minimal set of features, making it suitable for small, fast, and low-cost environments. SNMP uses User Datagram Protocol (UDP) messages as a transport, making it supported by the vast majority of devices. It also ensures that management information can be transmitted between any two points, making it easy for administrators to retrieve information and perform troubleshooting at any node on the network.

[0059] Basic input and output system (BIOS) configuration: The BMC can configure the server's BIOS parameters, such as boot order, memory frequency, and security mode, through the network or local storage media.

[0060] Intelligent Platform Management Interface (IPMI): The BMC's management functions are implemented through the IPMI protocol, a set of interactive standard management specifications primarily used for server system cluster autonomy and monitoring of server physical health characteristics such as temperature, voltage, fan operating status, and power supply status. IPMI also records various hardware information and logs for user notifications and subsequent problem identification. IPMI is an onboard component that operates independently of the host system's CPU, BIOS, Unified Extensible Firmware Interface (UEFI), and OS. Its core component is the BMC. In other words, the BMC interacts with other components, such as the BIOS / UEFI and CPU, through IPMI. IPMI can communicate with the operations and maintenance system through various channels, such as the local area network (LAN), transmitting IPMI commands and data.

[0061] The management functions of BMC mainly include the following aspects:

[0062] Power control: The BMC can control server startup, shutdown, restart, NMI, and other operations through IPMI commands or physical buttons, as well as obtain the server's power status.

[0063] Monitoring: BMC can monitor the server's physical health characteristics such as temperature, voltage, fan, and power supply through sensors, and issue alarms or make adjustments based on preset thresholds and policies.

[0064] Inventory: The BMC can record the model, serial number, manufacturer, and other information of replaceable components on the server through Field Replaceable Unit (FRU) information to facilitate maintenance and replacement.

[0065] Log: The BMC can record various events that occur on the server through the System Event Log (SEL), such as overtemperature, power failure, memory error, etc., and provide query and clear functions.

[0066] Recovery: The BMC can perform corresponding recovery actions based on the events or commands it receives, such as restarting the server, turning off the fan, and reducing the CPU frequency.

[0067] Alarm: The BMC can send alarm information such as high temperature and power failure to the upper-level network management or users through the SNMP protocol.

[0068] Serial port redirection: The BMC can use the Serial over LAN (SOL) function to redirect the server's serial port output to the BMC's network interface, making it easier to remotely obtain server debugging information or console information.

[0069] Graphics redirection: The BMC can redirect the server's graphics output to the BMC's network interface through the KVM over IP (Keyboard, Video and Mouse over IP) function, making it easier to remotely access the server's graphical interface or BIOS interface.

[0070] Firmware update: BMC can update the server firmware, such as BIOS, BMC itself, RAID card, etc., through the network or local storage media.

[0071] To further illustrate the application scenario of the embodiment of the present application, please refer to Figure 1. As shown in Figure 1, Figure 1 is a schematic diagram of the architecture of the operation and maintenance management system provided by the embodiment of the present application, specifically:

[0072] The operation and maintenance system 10 is connected to the computing devices 30, 31 and 32 in the infrastructure 1, wherein the computing device 30 is provided with BMC301, CPU302, CPU303, CPU304 and CPU305... The computing device 31 is provided with BMC311, GPU312, GPU313, GPU314 and GPU315... The computing device 32 is provided with BMC321, XPU322, XPU323, XPU324 and XPU325... Further, BMC301 is connected to CPU302, CPU303, CPU304 and CPU305 respectively, BMC311 is connected to GPU312, GPU313, GPU314 and GPU315 respectively, and BMC321 is connected to XPU322, XPU323, XPU324 and XPU325 respectively. For example, the BMC can obtain the status information of each processor through the hardware management channel between the BMC and each processor. The BMC establishes a connection with the operation and maintenance system through the Redfish interface, and the operation and maintenance system obtains the status information of each processor through the BMC.

[0073] Furthermore, when other hardware is present in the computing device, the BMC can also connect to the other hardware through the IPMI interface, obtain the status information of each hardware, establish a connection with the operation and maintenance system through Redfish or SNMP, and report the status information of each hardware in the computing device to the operation and maintenance system. Alternatively, it can receive instructions from the operation and maintenance system to perform specific tasks such as power control, monitoring, inventory query, firmware update, log query, recovery, alarm, etc., thus realizing out-of-band management of the computing device.

[0074] In this architecture, the BMC management strategy is that each XPU-BOX device has only one BMC system, presenting itself to the operation and maintenance system as a single XPU-BOX device. For example, using the Redfish interface to connect to the operation and maintenance system, according to the Redfish interface definition, all XPU management interfaces are attached to the XPU-BOX's Redfish node. The operation and maintenance system first accesses the XPU-BOX's Redfish interface to obtain the XPU's Uniform Resource Identifier (URI) interface, and then performs operation and maintenance management on the XPU.

[0075] With rapidly increasing computing power requirements, the BMC presents itself as an XPU-BOX device. Business computing requires large-scale XPU clusters operating over high-performance networks, and the XPU-BOX must be rapidly updated and iterated to integrate more XPUs. As the number of XPUs increases, the BMC Redfish interface must add corresponding URIs, resulting in changes to the device management interface, increasing operational pressure, reducing efficiency, and destabilizing the system.

[0076] To solve the above problem, please refer to Figure 2. As shown in Figure 2, Figure 2 is an architectural diagram of a hardware management method based on virtualization technology provided by an embodiment of the present application. The present application solution mainly uses virtualization technology to virtualize the same number of virtual BMCs as XPUs on the BMC. Each virtual BMC manages one XPU. Logically, each XPU has an independent BMC system. XPU changes do not affect operation and maintenance, thereby improving the stability of the operation and maintenance system. Specifically:

[0077] The embodiment of the present application is described using the computing device 32 in FIG1 as an example. In the computing device 32, a BMC 321 and processors XPU 322, XPU 323, XPU 324, and XPU 325 are provided. The BMC 321 is connected to each processor on the computing device. Through a physical management channel or an IPMI interface, the BMC 321 can obtain basic information about each processor, including the number of processors, processor type, and processor model. A hardware management platform 20 runs on the BMC 321. The hardware management platform 20 uses the basic information of the processors obtained by the BMC 321 to create virtual BMCs 21, 22, 23, and 24 corresponding to the processors. Virtual BMC 21 is used to manage processor XPU 322, virtual BMC 22 is used to manage processor XPU 323, virtual BMC 23 is used to manage processor XPU 324, and virtual BMC 24 is used to manage processor XPU 325.

[0078] Furthermore, the hardware management platform 20 configures virtual BMC 21, virtual BMC 22, virtual BMC 23, and virtual BMC 24 to establish connections with the operation and maintenance system 10, respectively. The connections established between each virtual BMC and the operation and maintenance system 10 are independent of each other. For example, the connection established between virtual BMC 21 and the operation and maintenance system 10 is independent of the connections established between virtual BMC 22, virtual BMC 23, and virtual BMC 24 and the operation and maintenance system 10.

[0079] Each virtual BMC thus manages its corresponding processor, including but not limited to power control, monitoring, inventory query, firmware update, log query, recovery, and alarms. This allows each virtual BMC to independently manage its corresponding processor and connect to the operation and maintenance system through an independent interface. This ensures that changes to the processor in a computing device will not affect other virtual BMCs, improving the stability of the operation and maintenance system and the continuity of operation and maintenance management.

[0080] Please further refer to FIG3 , as shown in FIG3 , FIG3 is a flow chart of a hardware management method based on virtualization technology provided by an embodiment of the present application, specifically:

[0081] Step S301: The hardware management platform obtains basic information of the processor.

[0082] In one example embodiment of the present application, a computing device is provided with a processor that is already installed in the computing device before the computing device is started. A BMC is connected to the processor via an IPMI interface or a system bus. After the computing device is started, the BMC obtains basic information about the processor, including the number, type, model, and physical location of the processor. A hardware management platform runs on the BMC and obtains basic information about the processor through the BMC.

[0083] In another example of an embodiment of the present application, a computing device is provided with a processor, which is hot-plugged into the computing device after the computing device is started. After the computing device detects the insertion of the processor, it notifies the hardware management platform running on the BMC through a hardware signal such as a complex programmable logical device (CPLD) or a general-purpose input / output (GPIO). The hardware management platform obtains basic information of the processor through an IPMI interface or a system bus. The basic information includes quantity information, type information, model information, corresponding physical location, etc.

[0084] It is worth noting that the number of processors can be one or more, and the processor types can be the same type or different types, which is not limited in the embodiments of the present application.

[0085] By obtaining basic information about the processors on the computing device, the hardware management platform first understands the number, physical location, and corresponding system bus of the processors that need to be managed, making basic preparations for further creating a virtual BMC.

[0086] Step S302: The hardware management platform creates a virtual BMC on the BMC according to the basic information.

[0087] The hardware management platform creates a corresponding virtual BMC on the BMC based on the basic information. The created virtual BMC is used to manage the corresponding processor, achieving accurate and independent management and connection of the processor.

[0088] In one embodiment of the present application, the virtual BMC is capable of performing processor management functions. Specifically, based on the processor type, the hardware management platform creates a virtual BMC capable of performing corresponding management functions for that processor type. For example, with reference to Figure 1 , when the processors are GPUs 312 and 313, the number of processors is two, and the processor type is GPU, the hardware management platform creates two virtual BMCs capable of managing GPU-type processors based on the number and type of processors.

[0089] In another embodiment of the present application, the virtual BMC is a stateless virtual BMC. The stateless virtual BMC may be a virtual BMC with only basic functions, which is not coupled with specific XPU hardware, or does not have the function of managing a certain type of processor. Specifically, the BMC stores a virtual system image of the virtual BMC, such as a configuration file saved in the read-only data area of ​​the BMC, which saves the implementation method of the BMC for different XPU model management functions and management channels. Before creating the virtual BMC, the hardware management platform determines the corresponding configuration file by obtaining the type of the processor. After creating the virtual BMC, the virtual BMC is configured to load the configuration file of the corresponding model. The virtual BMC implements the management of the XPU by reading the configuration file data. In conjunction with Figure 1, for example, when the processor is CPU302 or CPU303, the basic information of the processor obtained by the hardware management platform includes that the processor type is CPU, determines the configuration file based on the processor type information, and configures the created virtual BMC to load the corresponding configuration file to achieve normal management of the CPU.

[0090] In this embodiment, the stateless virtual BMC facilitates the hardware management platform's rapid creation of a virtual BMC based on acquired basic processor information. The BMC only needs to store the stateless virtual BMC's system files and configuration files corresponding to different processor types. By decoupling the BMC from the processor, BMC storage space is conserved, increasing BMC space utilization. This also ensures the proper implementation of virtual BMC management functions for different processor types.

[0091] In another embodiment of the present application, a virtual BMC system runs on the virtual BMC. This system is the underlying system of the virtual BMC. In the stateless virtual BMC, only the underlying system is loaded. The underlying system can be dynamically upgraded through the hardware management platform. Specifically, the virtual BMC system can be stored remotely, in an operation and maintenance system or in a memory in a computing device. When the virtual BMC system is updated, the hardware management platform is notified to download the update remotely. The hardware management platform can then shut down the original virtual BMC process, use the new virtual BMC system, and create a new virtual BMC to continue management.

[0092] Step S303: The hardware management platform configures the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connections established between other virtual BMCs and the operation and maintenance system.

[0093] After the hardware management platform creates the corresponding virtual BMC, the hardware management platform configures the virtual BMC to establish a connection with the operation and maintenance system, and the connection established between each virtual BMC and the operation and maintenance system is independent of the connection established between other virtual BMCs and the operation and maintenance system, thereby ensuring the independent connection between the virtual BMC and the operation and maintenance system. For example, in conjunction with Figure 2, XPU322 and XPU323 are provided in the computing device 32, and the hardware management platform creates the corresponding virtual BMC21 and virtual BMC22 based on the basic information of the processor, wherein virtual BMC21 is used to manage XPU322, and virtual BMC22 is used to manage XPU323. After the virtual instance BMC21 and virtual BMC22 are created, the hardware management platform configures the virtual instance BMC21 and virtual instance BMC22 to establish a connection with the operation and maintenance system 10 respectively. The virtual BMC21 can establish a connection with the operation and maintenance system 10 through an independent Redfish interface or SNMP protocol, and the virtual BMC22 can establish a connection with the operation and maintenance system 10 through an independent Redfish interface or SNMP protocol. The connection established between the virtual BMC 21 and the operation and maintenance system 10 is independent of the connection established between the virtual BMC 22 and the operation and maintenance system 10 .

[0094] By configuring a virtual BMC so that the connection between it and the operation and maintenance system is independent of the connections between other virtual BMCs and the operation and maintenance system, the operation and maintenance system can independently manage any processor. Even if an individual virtual BMC fails or an individual processor changes, the operation and maintenance system's ability to manage other processors will not be affected, thereby improving system stability and reliability.

[0095] Further, to clearly illustrate the specific steps of the embodiment of the present application, please refer to FIG4. As shown in FIG4, FIG4 is a flow chart of a hardware management method based on virtualization technology provided by the embodiment of the present application, specifically:

[0096] S401 : The hardware management platform 20 obtains basic information of the processor 322 .

[0097] The hardware management platform obtains basic information about processor 322, including quantity, type, model, and corresponding physical location. If processor 322 is a GPU, the basic information obtained by the hardware management platform includes information indicating that processor 322 is a GPU and the hardware management channel corresponding to processor 322. For example, if the management channels for XPU 322, XPU 323, and XPU 324 on computing device 32 are Channel-1, Channel-2, and Channel-3, respectively, then to correctly associate the virtual BMC with each processor, the hardware management platform completes the following mapping between the virtual BMC and the hardware management channel based on the hardware management channel:

[0098] Channel-1---->Virtual BMC1:channel-1;

[0099] Channel-2---->Virtual BMC2:channel-1;

[0100] Channel-3---->Virtual BMC3: channel-1.

[0101] S402 : The hardware management platform 20 creates a virtual BMC 21 according to basic information.

[0102] The hardware management platform 20 creates a virtual BMC 21 on the BMC based on the basic information of the processor 322 obtained. The BMC 21 can be a stateless virtual BMC that is decoupled from the processor 322. Furthermore, during the creation process, the hardware management channel of the processor corresponding to the virtual BMC 21 is synchronously configured into the virtual BMC 21.

[0103] S403: The hardware management platform 20 determines a configuration file according to the basic information.

[0104] The hardware management platform 20 determines the configuration file for the processor 322 based on the type information in the basic information of the processor 322. The BMC 321 may pre-store configuration files corresponding to different types of processors. When the hardware management platform 20 obtains the basic information of the processor 322, it determines the configuration file corresponding to the processor 322 from the BMC 321.

[0105] For example, different types of processors may have different interfaces, such as the platform environment control interface (PECI), the system bus SMBUS, etc. The BMC needs to communicate with the processor through these interfaces to obtain the processor's status information and control and adjust it according to preset policies; different types of processors may have different sensors, such as temperature, voltage, power consumption, etc. The BMC needs to store the information of these sensors and record the events of these sensors according to the SEL; different types of processors may have different firmware, such as BIOS, microcode, etc. The BMC needs to update these firmwares through IPMI commands, or store the information of these firmwares through FRU; different types of processors may have different BIOS configurations, such as boot order, memory frequency, security mode, etc. The BMC needs to configure these BIOS parameters through IPMI commands, or store the information of these BIOS parameters through FRU. Therefore, different types of processors need to configure the virtual BMC to load the corresponding configuration files to achieve the function of correctly managing the corresponding processor.

[0106] In one embodiment of the present application, the configuration file can also be saved remotely, can be saved in the memory of the computing device, or can be saved in the operation and maintenance system. When the hardware management platform obtains the type information of the processor, the configuration file can be obtained remotely to save the storage space of the local BMC.

[0107] S404 , the hardware management platform 20 configures the virtual BMC 21 to load a configuration file.

[0108] After determining the configuration file, the hardware management platform 20 configures the virtual BMC 21 to load the configuration file. For example, the hardware management platform 20 can determine the corresponding configuration file through the BMC file system and send it to the virtual BMC 21. The virtual BMC 21 then loads the obtained configuration file into the virtual BMC 21. Alternatively, the hardware management platform 20 can determine the corresponding configuration file through the BMC file system and send the address of the configuration file to the virtual BMC 21 in the form of an instruction. The virtual BMC 21 then obtains the corresponding configuration file through the instruction and loads it into the virtual BMC 21.

[0109] S405: The virtual BMC 21 loads the configuration file.

[0110] The virtual BMC 21 loads the acquired configuration file into the system of the virtual BMC 21 so that the virtual BMC 21 has the function of correctly managing the processor 322 and ensures the normal operation of the operation and maintenance system.

[0111] S406 , the hardware management platform 20 configures the virtual BMC 21 to obtain an IP address.

[0112] The hardware management platform 20 is connected to the operation and maintenance system 10 via an IP address. Through the IP protocol connection, the operation and maintenance system 10 can obtain basic information about the hardware management platform and the status of the BMC 321. The BMC 321 stores at least one IP address. After creating a virtual BMC 21, the hardware management platform 20 configures the virtual BMC 21 to obtain the IP address stored in the BMC 321 to enable independent connection and communication between the virtual BMC 21 and the operation and maintenance system 10.

[0113] It is worth noting that the IP address can be a fourth version of the Internet Protocol IPv4 address or a sixth version of the Internet Protocol IPv6 address, and this embodiment of the present application does not limit this.

[0114] S407 , the virtual BMC 21 connects to the operation and maintenance system 10 via the IP address.

[0115] After the virtual BMC 21 obtains the corresponding IP address, it binds the IP address, uses the IP address as the source address and the obtained IP address of the operation and maintenance system 10 as the destination address, initiates a connection request to the operation and maintenance system, and completes network initialization.

[0116] This enables the virtual BMC 21 to be connected to the operation and maintenance system 10 , and the connection is independent.

[0117] S408 , the virtual BMC 21 manages the processor 322 through the hardware management channel.

[0118] The virtual BMC 21 obtains the status information of the processor 322 according to the hardware management channel configured by the hardware management platform 20 , and manages the processor 322 through the hardware management channel.

[0119] With this configuration, each virtual BMC can independently manage its corresponding processor. When a processor change occurs, only that virtual BMC is affected, avoiding impact on other virtual BMCs and improving the stability of the operation and maintenance system.

[0120] S409 , the virtual BMC 21 is connected to the operation and maintenance system 10 , and the processor 322 is registered in the operation and maintenance system 10 .

[0121] After the virtual BMC 21 establishes an independent connection with the operation and maintenance system 10 and connects to the processor 322 through the corresponding hardware management channel, the processor 322 is registered with the operation and maintenance system 10, so that the operation and maintenance system 10 can manage the processor 322, which is conducive to further management and monitoring of the processor 322 in the future.

[0122] S410 , the virtual BMC 21 sends status information of the processor 322 .

[0123] The virtual BMC 21 obtains the status information of the processor 322 through the hardware management channel and sends the status information to the operation and maintenance system 10, so that the operation and maintenance system 10 can obtain the status information of the processor 322 in real time and manage and control it in time according to the status information of the processor.

[0124] Support for hot-swappable processors is a key feature of the physical hardware in a resource pool. Traditional BMCs, when handling this scenario, need to dynamically adjust external interfaces after sensing a change in the number of processors and notify the operations and maintenance system of the change. The operations and maintenance system can only perform management after completing a processor count query through the interface.

[0125] In this embodiment of the application, by establishing a one-to-one correspondence between virtual BMCs and processors, management can be completed by simply creating or deleting virtual BMC systems simultaneously when the number of processors changes. Taking the scenario of adding a new processor as an example, in an example provided in this embodiment of the application, the specific steps can be seen in the steps in Figure 4, that is, the hardware management platform obtains the basic information of the newly added processor, creates a corresponding virtual BMC based on the basic information of the newly added processor, and configures the virtual BMC to establish an independent connection with the operation and maintenance system. This article will not go into details.

[0126] In another example provided by the embodiments of the present application, a virtual BMC can be created in advance. This virtual BMC is a stateless BMC. Because there is no corresponding processor in the computing device to which it can be associated, this virtual BMC can be regarded as an idle virtual BMC. When the hardware management platform obtains the basic information of the newly added processor, it configures the idle virtual BMC based on the basic information and loads the corresponding configuration file to implement the management function of the newly added processor, thereby improving the speed of the operation and maintenance system to manage the newly added processor.

[0127] Please further refer to FIG5 , as shown in FIG5 , FIG5 is a flow chart of a hardware management method based on virtualization technology provided by an embodiment of the present application, specifically:

[0128] S501 , before acquiring the newly added processor 324 , create a virtual BMC 23 .

[0129] Before the processor 324 is hot-plugged into the computing device, the hardware management platform 20 first creates a virtual BMC 23. The virtual BMC 23 can be a stateless virtual BMC, and can also remain in a dormant state before the processor 324 is plugged in. When the processor 324 is plugged in, the virtual BMC can be quickly awakened.

[0130] It is worth noting that the hardware management platform 20 can determine the number of idle virtual BMCs to be created based on its own operating conditions, such as power, computing capacity, etc., and this embodiment of the present application does not limit this.

[0131] S502 : The hardware management platform 20 obtains basic information of the processor 324 .

[0132] When processor 324 is inserted into a computing device, the computing device detects the insertion of processor 324 and notifies the hardware management platform 20 running on BMC 321 through a hardware signal such as CPLD or GPIO. Hardware management platform 20 then obtains basic information about processor 324 through the IPMI interface or the system bus. This basic information includes the number, type, model, and physical location of processor 324. If processor 322 is a GPU, the basic information obtained by the hardware management platform includes information about the type of processor 322, namely, GPU, and the hardware management channel corresponding to processor 322.

[0133] S503 , the hardware management platform 20 determines a configuration file according to the basic information of the processor 324 .

[0134] The hardware management platform 20 determines the configuration file for processor 324 based on the type information in the basic information of processor 324. The BMC 321 may pre-store configuration files corresponding to different types of processors. When the hardware management platform 20 obtains the basic information of processor 322, it determines the configuration file corresponding to processor 324 from the BMC 321.

[0135] Steps S504 to S510 are the same as steps S404 to S410 shown in FIG. 4 , and are not described in detail herein.

[0136] In another embodiment of the present application, taking the processor removal scenario as an example, please further refer to FIG6 . As shown in FIG6 , FIG6 is a flow chart of a hardware management method based on virtualization technology provided by an embodiment of the present application, specifically:

[0137] S601 , the hardware management platform 20 obtains information about removing the processor 322 from the computing device 22 of the infrastructure 1 .

[0138] When the computing device 22 is running and the processor 322 is hot-plugged from the computing device 22, the computing device 22 obtains information about the unplugged processor 322 through hardware detection, notifies the BMC 321 through the hardware management channel, and the hardware management platform 20 obtains the uninstallation information of the processor 322, which includes the physical location information, hardware management channel, model information, type information, etc. of the processor 322.

[0139] S602 : The hardware management platform 20 uninstalls the virtual BMC 22 according to the information.

[0140] The hardware management platform 20 determines the virtual BMC 22 for managing the processor 322 according to the uninstallation, uninstalls the virtual BMC 22, and reclaims the IP address configured for the virtual BMC 22, thereby reducing the consumption of computing resources and saving the computing resources of the BMC.

[0141] S603: Notify the operation and maintenance system.

[0142] After uninstalling the BMC 22 , the hardware management platform 20 notifies the operation and maintenance system 10 so that the operation and maintenance system 10 updates the computing device information in a timely manner, thereby improving the accuracy of the operation and maintenance system information.

[0143] The present application also provides a hardware management platform that runs on a baseboard management controller (BMC). The BMC is connected to a processor provided on a computing device. The hardware management platform is connected to an operation and maintenance system, which is used to obtain status information of the computing device. Please refer to FIG7 below, which is a schematic diagram of the structure of a hardware management platform provided in an embodiment of the present application. The details are as follows:

[0144] The hardware management platform 20 includes an information acquisition module 901, a creation module 902, a configuration module 903 and an uninstallation module 904, wherein:

[0145] The information acquisition module 901 is used to obtain basic information of the processor and also to obtain uninstallation information of removing the processor from the computing device.

[0146] The creation module 902 is used to create a virtual BMC on the BMC according to basic information.

[0147] The configuration module 903 is used to configure the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connections established between other virtual BMCs and the operation and maintenance system. It is also used to configure the virtual BMC according to the configuration file so that the virtual BMC loads the configuration file. It is also used to configure the virtual BMC so that the virtual BMC registers the processor with the operation and maintenance system.

[0148] Uninstall module 904, which is used to uninstall the virtual BMC from the BMC according to the uninstall information

[0149] It is worth noting that the users in the above embodiments can be replaced by multiple other users, and the above modules can all implement corresponding technical functions, which is not limited in the embodiments of the present application.

[0150] The information acquisition module 901, the creation module 902, the configuration module 903, and the uninstallation module 904 can all be implemented via software or hardware. For example, the implementation of the information acquisition module 901 will be described below using the information acquisition module 901 as an example. Similarly, the implementation of the creation module 902, the configuration module 903, and the uninstallation module 904 can refer to the implementation of the information acquisition module 901.

[0151] As an example of a software functional unit, the information acquisition module 901 may include code running on a computing instance, and the virtual BMC may be regarded as a type of computing instance. The computing instance may include at least one of a physical host, a virtual machine, and a container. Furthermore, the computing instance may be one or more. For example, the information acquisition module 901 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed in the same area or in different areas. Furthermore, the multiple hosts / virtual machines / containers used to run the code may be distributed in the same availability zone or in different availability zones, and each availability zone includes one data center or multiple geographically close data centers. Generally, a region may include multiple availability zones.

[0152] As an example of a hardware functional unit, information acquisition module 901 may include at least one computing device, such as a server. Alternatively, information acquisition module 901 may be implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be implemented using a CPLD, a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0153] It should be noted that, in other embodiments, the information acquisition module 901 can be used to execute any step in the hardware management method based on virtualization technology, the creation module 902 can be used to execute any step in the hardware management method based on virtualization technology, the configuration module 903 can be used to execute any step in the hardware management method based on virtualization technology, and the uninstallation module 904 can be used to execute any step in the hardware management method based on virtualization technology. The steps that the information acquisition module 901, the creation module 902, the configuration module 903, and the uninstallation module 904 are responsible for implementing can be specified as needed. The full functions of the hardware management platform are realized by respectively implementing different steps in the hardware management method based on virtualization technology through the information acquisition module 901, the creation module 902, the configuration module 903, and the uninstallation module 904.

[0154] The above details the hardware management platform, device and system of the embodiments of the present application. In order to facilitate better implementation of the above solutions of the embodiments of the present application, correspondingly, related equipment for cooperating in implementing the above solutions is also provided below.

[0155] This application provides a BMC. See Figure 8 below, which is a schematic diagram of the BMC structure of a hardware management method based on virtualization technology provided in an embodiment of this application. BMC 321 includes a BMC bus 307, a BMC processor 308, a BMC memory 306, and a BMC communication interface 309. The BMC processor 308, BMC memory 306, and BMC communication interface 309 communicate with each other via BMC bus 307. It should be understood that this application does not limit the number of BMC processors and BMC memories in BMC 321.

[0156] The BMC bus 307 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, among others. Buses can be classified as address buses, data buses, and control buses. For ease of illustration, FIG8 shows a single line, but this does not imply a single bus or type of bus. The BMC bus 307 may include a pathway for transmitting information between various components of the BMC 321 (e.g., the BMC memory 306, the BMC processor 308, and the BMC communication interface 309).

[0157] The BMC processor 308 may include any one or more processors such as a CPU, a microprocessor (MP), or a digital signal processor (DSP).

[0158] The BMC memory 306 may include volatile memory, such as random access memory (RAM). The BMC processor 308 may also include non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid state drive (SSD).

[0159] The BMC memory 306 stores executable program code. The BMC processor 308 executes this executable program code to implement the functions of the information acquisition module 901, the creation module 902, the configuration module 903, and the uninstallation module 904, thereby implementing the hardware management method based on virtualization technology. In other words, the BMC memory 306 stores instructions for the hardware management platform to execute the hardware management method based on virtualization technology.

[0160] The BMC communication interface 309 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the BMC 321 and other devices or a communication network.

[0161] The present application also provides a BMC cluster. The BMC cluster includes at least one BMC. The BMC can be deployed on a server, such as a central server, an edge server, or a local server in a local data center.

[0162] Please refer to Figure 9 below, which is a schematic diagram of the structure of a BMC cluster for a hardware management method based on virtualization technology according to an embodiment of the present application. As shown in Figure 9, the BMC cluster includes at least one BMC 321. The BMC memory 306 of one or more BMCs 321 in the BMC cluster can store the same hardware management platform for executing instructions of the hardware management method based on virtualization technology.

[0163] In some possible implementations, one or more BMCs 321 in the BMC cluster can also be used to execute some of the instructions of the hardware management platform for executing the hardware management method based on virtualization technology. In other words, the combination of one or more BMCs 321 can jointly execute the instructions of the hardware management platform for executing the hardware management method based on virtualization technology.

[0164] It should be noted that the BMC memories 306 in different BMCs 321 in the BMC cluster can store different instructions for executing some functions of the hardware management platform. That is, the instructions stored in the BMC memories 306 in different BMCs 321 can implement the functions of one or more of the information acquisition module 901, the creation module 902, the configuration module 903, and the uninstallation module 904.

[0165] In some possible implementations, the BMC memory 306 of one or more BMCs 321 in the BMC cluster may also store partial instructions for executing the hardware management method based on virtualization technology. In other words, the combination of one or more BMCs 321 can jointly execute instructions for executing the hardware management method based on virtualization technology.

[0166] The present application provides a computing device. See Figure 10 below, which is a schematic diagram of the structure of a computing device that implements a hardware management method based on virtualization technology, as provided in an embodiment of the present application. The computing device 32 includes a bus 807, a processor 322, a memory 806, and a communication interface 809. The processor 322, the memory 806, and the communication interface 809 communicate with each other via the bus 807. It should be understood that the present application does not limit the number of processors, memories, and BMCs in the computing device 32.

[0167] Bus 807 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, among others. Buses may be classified as address buses, data buses, control buses, and the like. For ease of illustration, FIG10 illustrates a single bus line, but this does not imply a single bus or type of bus. Bus 807 may include a path for transmitting information between various components of computing device 32 (e.g., memory 806, processor 322, and communication interface 809).

[0168] The processor 322 may include any one or more processors such as a CPU, a microprocessor (MP), or a digital signal processor (DSP).

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

[0170] The communication interface 809 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 32 and other devices or a communication network.

[0171] The operation and maintenance system 10 can obtain the status information of the processor 322 through the virtual BMC 21 running on the BMC 321, thereby realizing the operation and maintenance management of the processor.

[0172] The present application also provides a computing device cluster, including at least one computing device, each of which includes at least one BMC and at least one processor. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center.

[0173] Please refer to Figure 11 below, which is a schematic diagram of the structure of a computing device cluster for a hardware management method based on virtualization technology according to an embodiment of the present application. As shown in Figure 11, the computing device cluster includes at least one computing device 32. The BMC 321 of one or more computing devices 32 in the computing device cluster can store and run the same hardware management platform and execute instructions for the hardware management method based on virtualization technology.

[0174] In some possible implementations, the BMC 321 in one or more computing devices 32 in the computing device cluster may also be used to execute some instructions of the hardware management method based on virtualization technology. In other words, any combination of the BMC 321 in one or more computing devices 32 may be used to execute instructions of the hardware management method based on virtualization technology.

[0175] The operation and maintenance system 10 can obtain the status information of the processor 322 through the virtual BMC 21 running on the BMC 321 in the computing device 32, thereby realizing the operation and maintenance management of the processor.

[0176] The present application also provides a computer program product including instructions. The computer program product may be software or a program product including instructions that can be run on a computing device or stored on any available medium. When the computer program product is run on at least one computing device, the at least one computing device executes the aforementioned hardware management method for a hardware management platform based on virtualization technology.

[0177] The embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that can be stored by a computing device or a data storage device such as a data center that contains one or more available media. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive). The computer-readable storage medium includes instructions that instruct the computing device to execute the above-mentioned hardware management method applied to the hardware management platform for executing virtualization technology.

[0178] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the protection scope of the technical solutions of the various embodiments of the present invention.

[0179] Those skilled in the art will clearly understand that the specific working processes of the above-described systems, devices or units can refer to the corresponding processes in the aforementioned hardware management platform embodiments, which will not be repeated here.

[0180] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.

Claims

1. A hardware management method based on virtualization technology, characterized in that: The method is applied to a hardware management platform, the hardware management platform runs on a baseboard management controller BMC, the BMC is connected to a processor provided on a computing device, wherein the hardware management platform is connected to an operation and maintenance system, the operation and maintenance system is used to obtain status information of the computing device, and the method includes: Obtaining basic information of the processor; Creating a virtual BMC on the BMC according to the basic information, wherein the virtual BMC is used to manage the processor; The virtual BMC is configured so that a connection established between the virtual BMC and the operation and maintenance system is independent of connections established between other virtual BMCs and the operation and maintenance system, wherein the operation and maintenance system is used to obtain the status information of the first processor through the virtual BMC.

2. The method according to claim 1, characterized in that: The basic information also includes management channel information of the processor, and the step of creating the virtual BMC according to the basic information includes: A virtual BMC for managing the processor through the management channel is created according to the basic information.

3. The method according to claim 1 or 2, characterized in that: The hardware management platform is connected to the operation and maintenance system via an Internet Protocol IP address, the BMC stores the IP address, and the configuring the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connection established between other virtual BMCs and the operation and maintenance system includes: The virtual BMC is configured so that the virtual BMC is bound to the IP address, and the virtual BMC is also used to connect to the operation and maintenance system through the IP address.

4. The method according to any one of claims 1 to 3, characterized in that: The basic information also includes the type of the processor, and the BMC also stores a configuration file. After creating the virtual BMC, the method further includes: The virtual BMC is configured according to the configuration file so that the virtual BMC loads the configuration file, wherein the configuration file is used to instruct the virtual BMC to manage a function of a corresponding type of processor.

5. The method according to any one of claims 1 to 4, characterized in that: The method further comprises: obtaining uninstall information to remove the processor from the computing device; The virtual BMC is uninstalled from the BMC according to the information.

6. The method according to any one of claims 1 to 5, characterized in that: After configuring the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of connections established between other virtual BMCs and the operation and maintenance system, the method further includes: The virtual BMC is configured so that the virtual BMC registers the processor with the operation and maintenance system.

7. A hardware management platform, characterized in that: The hardware management platform runs on a baseboard management controller BMC, and the BMC is connected to a processor provided on a computing device, wherein the hardware management platform is connected to an operation and maintenance system, and the operation and maintenance system is used to obtain status information of the computing device, and the hardware management platform includes: An information acquisition module, the information acquisition module is used to acquire basic information of the processor; A creation module, wherein the creation module is used to create a virtual BMC on the BMC according to the basic information, and the virtual BMC is used to manage the processor; A configuration module, wherein the configuration module is used to configure the virtual BMC so that the connection established between the virtual BMC and the operation and maintenance system is independent of the connection established between other virtual BMCs and the operation and maintenance system, wherein the operation and maintenance system is used to obtain the status information of the first processor through the virtual BMC.

8. The hardware management platform according to claim 7, characterized in that: The basic information also includes the management channel information of the processor, then: The creation module is specifically used to create a virtual machine for managing the processor through the management channel according to the basic information. BMC.

9. The hardware management platform according to claim 7 or 8, characterized in that: The hardware management platform is connected to the operation and maintenance system via an Internet Protocol IP address, and the BMC stores the IP address. Then: The configuration module is specifically used to configure the virtual BMC so that the virtual BMC is bound to the IP address, and the virtual BMC is also used to connect to the operation and maintenance system through the IP address.

10. The hardware management platform according to any one of claims 7 to 9, characterized in that: The basic information also includes the type of the processor, the BMC also stores a configuration file, and the configuration module is further used to: The virtual BMC is configured according to the configuration file so that the virtual BMC loads the configuration file, wherein the configuration file is used to instruct the virtual BMC to manage a function of a corresponding type of processor.

11. The hardware management platform according to any one of claims 7 to 10, characterized in that: The information acquisition module is further used to obtain uninstall information for removing the processor from the computing device; The hardware management platform also includes: An uninstallation module is used to uninstall the virtual BMC from the BMC according to the information.

12. The hardware management platform according to any one of claims 7 to 11, characterized in that: The configuration module is also used to: The virtual BMC is configured so that the virtual BMC registers the processor with the operation and maintenance system.

13. A BMC cluster, characterized in that: Includes at least one BMC, each BMC includes a BMC processor and a BMC memory; The BMC processor of the at least one BMC is used to execute instructions stored in the BMC memory of the at least one BMC, so that the BMC cluster executes the hardware management method according to any one of claims 1 to 6.

14. A computing device cluster, characterized in that: comprising at least one computing device, each computing device comprising at least one processor and at least one BMC; The at least one BMC is used to execute the hardware management method according to any one of claims 1 to 6, so that the operation and maintenance system obtains the status information of at least one processor in each computing device through the virtual BMC running in the at least one BMC.

15. A computer-readable storage medium, characterized in that: The method comprises computer program instructions. When the computer program instructions are executed by a computing device cluster, the computing device cluster executes the hardware management method according to any one of claims 1 to 6.

16. A computer program product comprising instructions, characterized in that When the instructions are executed by a computing device cluster, the computing device cluster executes the hardware management method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and device for simulating cloud physical host by virtual machine based on cloud platform

    CN112667363A

  • Control method and device and computing device

    CN115827517A

  • Server management method, device and equipment and machine readable storage medium

    CN116431559A

  • Emulating a local storage by accessing an external storage through a shared port of a nic

    US20220206964A1