Server management method, baseboard management controller and server
By introducing containerization technology into the baseboard management controller, efficient management of multi-processor servers is achieved, reducing configuration and software modification costs, and improving data interaction efficiency and system stability.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- XFUSION DIGITAL TECH CO LTD
- Filing Date
- 2025-08-27
- Publication Date
- 2026-06-25
AI Technical Summary
In the existing technology, the configuration cost of the baseboard management controller of multiprocessor servers is high, mainly because each single-processor system needs to be configured with a set of BMC hardware and software, which occupies a large motherboard area and the software modification is complicated.
By deploying BMC software using containerization technology, a containerization platform engine, such as ISU or Docker, is introduced into the baseboard management controller to manage multiple server hardware systems. Each container encapsulates the application and shares the hardware control layer, reducing the difficulty of software modification and the consumption of network address resources.
It enables efficient management of multi-processor servers, reduces the configuration cost and software modification cost of the baseboard management controller, and improves data interaction efficiency and system stability.
Smart Images

Figure CN2025117276_25062026_PF_FP_ABST
Abstract
Description
Server management method, baseboard management controller and server
[0001] This application claims priority to Chinese Patent Application No. 202411870145.7, filed on December 18, 2024, entitled "Server Management Method, Baseboard Management Controller and Server", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of server technology, and in particular to a server management method, a baseboard management controller, and a server. Background Technology
[0003] A Baseboard Management Controller (BMC) is a management system for computing devices (such as servers) used to monitor and manage the hardware status of computing devices. A BMC consists of a hardware component (also known as BMC hardware) and a software component (also known as BMC software).
[0004] Currently, with the increase in the number of cores in a single processor, the application of single-processor systems is becoming more and more widespread; for example, multiple single-processor systems can be deployed within a server's physical chassis to form a server with multiple single-processor systems (also known as a multi-processor server or a server containing multiple server hardware systems, etc.).
[0005] However, for multi-processor servers, each single-processor system requires a set of BMC hardware and software, which occupies a large motherboard area and involves complex software modifications, resulting in a high configuration cost for the baseboard management controller to manage multi-processor servers. Summary of the Invention
[0006] According to various embodiments of this application, a server management method, a baseboard management controller, and a server are provided, which can manage one or more server hardware systems and reduce the configuration cost of the baseboard management controller.
[0007] In a first aspect, embodiments of this application provide a server management method applied to a baseboard management controller, the baseboard management controller being communicatively connected to one or more server hardware systems, the method comprising:
[0008] The baseboard management controller receives management requests sent by electronic devices. These requests are used to query the hardware information of a target server hardware system. The baseboard management controller runs one or more containers, each corresponding to a server hardware system. Each container includes an application program for obtaining the hardware information of the corresponding server hardware system. The baseboard management controller obtains the hardware information of the target server hardware system and sends it to the electronic device. The hardware information of the target server hardware system is then obtained by the application program of the corresponding container.
[0009] Using the above method, for servers containing multiple server hardware systems, the baseboard management controller deploys the application for managing the server based on containers, so that each container corresponds to each server hardware system. By running multiple containers, the hardware information of multiple server hardware systems is obtained based on the application within the containers, thereby enabling the baseboard management controller to manage servers containing multiple server hardware systems, reducing the configuration cost of the baseboard management controller; it has strong ease of use and practicality.
[0010] In one possible implementation of the first aspect, the baseboard management controller is configured with a unified network address for communicating with electronic devices; the baseboard management controller receives management requests sent by electronic devices, including: the baseboard management controller receives management requests sent by electronic devices based on the unified network address; the baseboard management controller obtains hardware information of a target server hardware system, including: the baseboard management controller obtains hardware information from a corresponding container based on the target server hardware system targeted by the management request.
[0011] In one possible implementation of the first aspect, the baseboard management controller acquires hardware information of the target server hardware system and sends it to the electronic device, including:
[0012] The baseboard management controller, based on a unified network address, aggregates the hardware information of the target server hardware system and sends it to the electronic device.
[0013] In this way, based on the configured unified network address, the baseboard management controller can provide a unified network address to the outside world. Electronic devices do not need to know the internal structure of the baseboard management controller. They can interact with each other based on the unified network address and obtain management requests sent by the electronic devices. By summarizing the hardware information of the target server hardware system obtained from the container and feeding it back to the electronic devices based on the unified network address, the occupation of network address resources can be reduced and network address resources can be saved.
[0014] In one possible implementation of the first aspect, the baseboard management controller is configured with an independent network address corresponding one-to-one with the container; the baseboard management controller receives management requests sent by the electronic device, including:
[0015] The baseboard management controller receives management requests sent by electronic devices based on an independent network address; the baseboard management controller obtains hardware information of the target server hardware system, including: the baseboard management controller calls the container corresponding to the independent URL to obtain hardware information based on the independent network address used to receive the management request.
[0016] By using the above method, and interacting with electronic devices based on the configured independent network address that corresponds one-to-one with the container, the efficiency of data interaction can be improved.
[0017] In one possible implementation of the first aspect, the method further includes:
[0018] The baseboard management controller periodically acquires hardware information through the container and issues a hardware fault alarm when the hardware information meets the fault conditions.
[0019] By periodically acquiring server hardware information and providing timely feedback on the server's hardware operating status, the server hardware system can be monitored and alerted in real time, thereby improving the server's system stability.
[0020] Secondly, this application provides a baseboard management controller, which includes an interface layer, an application layer, and a hardware control layer. The interface layer is connected to the application layer, and the application layer is connected to the hardware control layer. The interface layer is used to interact with electronic devices, and the hardware control layer is used to connect to one or more server hardware systems. One or more containers are deployed in the application layer, and each container corresponds to a server hardware system. Each container includes an application program for obtaining hardware information of the corresponding server hardware system.
[0021] In one possible implementation of the second aspect, the interface layer is configured with a unified network address for interacting with electronic devices. The interface layer is used to receive management requests based on the unified network address and to transmit management requests to the container corresponding to the target server hardware system based on the target server hardware system targeted by the management request.
[0022] In one possible implementation of the second aspect, the interface layer is also used to receive hardware information collected and transmitted by the operating system of the baseboard management controller, and to send hardware information to the electronic device based on a unified network address.
[0023] In one possible implementation of the second aspect, the interface layer corresponds one-to-one with the container of the application layer; each interface layer corresponding to each container is configured with an independent network address; each interface layer is used to receive management requests based on the independent network address and send management requests to the corresponding container.
[0024] Thirdly, this application provides a server, including: one or more server hardware systems and a baseboard management controller; the one or more server hardware systems are respectively connected to the baseboard management controller, and the baseboard management controller is used to execute the server management method described in the first aspect.
[0025] Fourthly, this application provides a server, comprising: one or more server hardware systems, and a baseboard management controller as described in the second aspect; the one or more server hardware systems are respectively connected to the baseboard management controller.
[0026] Fifthly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any one of the first aspects.
[0027] Sixthly, this application provides a computer program product that, when run on a device, causes the device to perform the method described in any one of the first aspects above.
[0028] It is understood that the beneficial effects of the second to sixth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description
[0029] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0030] Figure 1 is a schematic diagram of the system architecture of the server provided in an embodiment of this application;
[0031] Figure 2 is a schematic diagram of the container deployment architecture provided in an embodiment of this application;
[0032] Figure 3 is a schematic diagram of another system architecture of the server provided in the embodiment of this application;
[0033] Figure 4 is a schematic diagram of the implementation flow of the server management method provided in the embodiment of this application;
[0034] Figure 5 is a schematic diagram of the system architecture for configuring a unified network address provided in an embodiment of this application;
[0035] Figure 6 is a schematic diagram of interaction between electronic devices based on a unified network address according to an embodiment of this application;
[0036] Figure 7 is a schematic diagram of the system architecture for configuring independent network addresses provided in an embodiment of this application;
[0037] Figure 8 is a schematic diagram of interaction between an electronic device and an independent network address provided in an embodiment of this application;
[0038] Figure 9 shows the server provided in an embodiment of this application. Detailed Implementation
[0039] The embodiments of the technical solution of this application will now be described in detail with reference to the accompanying drawings. These embodiments are only used to more clearly illustrate the technical solution of this application and are therefore merely examples, and should not be used to limit the scope of protection of this application.
[0040] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the application; the terms “comprising” and “having”, and any variations thereof, in the specification, claims, and foregoing description of the drawings are intended to cover non-exclusive inclusion.
[0041] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly specifying the number, specific order, or primary and secondary relationship of the indicated technical features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly defined.
[0042] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0043] In the description of the embodiments in this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0044] To facilitate understanding of the technical solutions of the embodiments of this application, the terms used herein are explained below.
[0045] A Baseboard Management Controller (BMC) is a dedicated controller used to monitor and manage computing devices (such as servers). It is essentially a small operating system. A BMC consists of two parts: BMC hardware (such as a BMC chip or BMC hardware system) and BMC software. The BMC software includes user-space software and system-space software (also known as the operating system's foundation software). User-space software, which is the business software of the BMC application layer, can include: applications (APPs) for various BMC features and functions, as well as the dependencies required for each APP to run. These dependencies include, for example, library files, software frameworks, and the system runtime environment that each APP depends on. System-space software can include kernel-level system components such as the operating system (OS) and the boot loader (u-boot).
[0046] It should be noted that different computing devices use different names for the BMC. For example, some computing devices call it BMC, some call it iLO (Integrated lights-out), and others call it Integrated Dell Remote Access Controller (iDRAC). Regardless of whether it is called BMC, iLO, or iDRAC, it can be understood as the baseboard management controller in the embodiments of this invention.
[0047] Containers are a virtualization technology used to encapsulate applications and their dependencies or configurations so that they can run in different computing environments. Container deployment can be performed using a container engine (such as the ISULA container engine), deploying applications (such as application-layer apps) with a baseboard management controller within the container. Containerized deployment allows for the mirroring of application code during deployment, reducing the difficulty of modifying application-layer code.
[0048] A file system refers to a collection of files, software for operating on and managing files, and related data structures. It is a subsystem in an operating system responsible for managing persistent data. In this embodiment, each deployed container also has its own embedded file system.
[0049] The number of processor cores refers to the number of independent processing units contained within a single processor in a computing system. Each independent processing unit, or core, can independently execute instructions and process data, and each core can execute instructions in parallel.
[0050] This application provides a baseboard management controller (BMC) that uses containerized deployment of the BMC software application layer. This allows multiple containerized application layers to share a hardware control layer, with each application layer corresponding to a server hardware system. The hardware control layer connects to one or more server hardware systems, enabling the BMC to monitor and manage multiple server hardware systems using a single software and hardware setup. This improves system resource utilization and reduces the configuration and implementation costs of the BMC. Furthermore, by deploying multiple application layers using containerization technology, each application layer corresponding to a server system is encapsulated in a container, eliminating the need to modify the application layer's software code, shortening the application layer deployment cycle, and reducing software modification costs.
[0051] The baseboard management controller provided in this application embodiment can be applied to servers or other computing devices (including computing devices monitored and managed by the baseboard management controller or other computing devices that can communicate with the baseboard management controller). The following description takes the application of the baseboard management controller to a server as an example. The implementation principle of the baseboard management controller applied to other computing devices is similar to that of the baseboard management controller applied to a server. For details, please refer to the implementation scenario of the baseboard management controller applied to a server.
[0052] The following description, in conjunction with the accompanying drawings, introduces a server management method, a baseboard management controller, and a server system architecture provided in the embodiments of this application.
[0053] The baseboard management controller provided in this application embodiment can be applied to a server, which may include one or more server hardware systems. The baseboard management controller can communicate with one or more server hardware systems to monitor and manage the hardware status of each server hardware system.
[0054] Please refer to Figure 1, a schematic diagram of the system architecture of the server provided in this embodiment of the application. The server can be a multiprocessor server or a server containing multiple server hardware systems, etc. As shown in Figure 1, the server may include a baseboard management controller (BMC) 10 and one or more server hardware systems 20, and the baseboard management controller is communicatively connected to one or more server hardware systems 20.
[0055] The baseboard management controller 10 includes BMC software 101 and BMC hardware 102 (also referred to as a hardware control layer or BMC hardware system). The BMC software 101 may include an interface layer 1011 and an application layer 1012. The interface layer 1011 is connected to the application layer 1012, and the application layer 1012 is connected to the hardware control layer 102. The interface layer 1011 is used to interact with electronic devices; the hardware control layer 102 is used to connect to one or more server hardware systems 20.
[0056] As shown in Figure 1, one or more containers (such as N containers, where N is an integer greater than or equal to 1) are deployed in the application layer 1012. The application layer 1012 of the baseboard management controller 10 deploys applications based on containerization technology. Each container corresponds to a server hardware system. Each container includes an application for obtaining hardware information of the corresponding server hardware system, such as applications for heat dissipation management, power-on / off management, and power management.
[0057] For example, the baseboard management controller 10 deploys the application of the application layer 1012 based on containerization technology. The implementation principle is as follows: within the BMC operating system running on the BMC hardware 102, a container mechanism is introduced. Based on the container mechanism, the application with server management function in the BMC software 101 is smoothly copied and deployed in each container, and they share the underlying driver. The driver is the underlying software that interacts between the application layer 1012 and the BMC hardware 102, such as a device driver. It is responsible for converting the management requests of the application layer 1012 into hardware operations and passing the hardware status and data of the server obtained based on the hardware operations to the application layer 1012.
[0058] Among them, containerization platform engines such as Docker and ISU can be introduced into the BMC operating system. This engine supports the integration and startup of containers and supports running application layer 1012 applications (such as user management and other applications) within containers. Applications in multiple containers can reuse drivers that interact with BMC hardware 102.
[0059] For example, the process of smoothly copying the application in application layer 1012 can actually be a process of mirroring the application's logical code, as shown in Figure 1, where the application's logical code is copied N times and deployed in each container. For multi-processor server system architectures, the deployment of BMC software can be completed quickly, reducing the complexity and cost of modifying the program code.
[0060] In some embodiments, the container shown in FIG1 is deployed based on the isula container engine; the operating system of the baseboard management controller is configured with the function of configuring two or more containers based on the isula container engine.
[0061] As shown in Figure 2, a containerized platform engine, such as the isula container engine, is introduced into the operating system of the baseboard management controller, and containerized BMC control software is configured in the operating system. The software entity (binary file) corresponding to the containerized BMC control software is located in the root file system of the operating system. The containerized BMC control software is used to perform container operations and manage the containers. The container operations performed include: starting the container, initializing the container image file, and closing the container.
[0062] For example, as shown in Figure 2, the containerized BMC control software implements container operations by calling the open-source isula container engine, such as scheduling containers (e.g., container 1 and container 2) and managing image files. The containerized BMC control software also controls the containers' access to the baseboard management controller (host) resources, such as accessing the baseboard management controller's network interface card (NIC) and device interfaces.
[0063] In some embodiments, the application layer of the baseboard management controller is configured with an independent file system, such as the BMC root file system Rootfs; the file system includes dynamic libraries that the applications in the container (such as APP1, APP2) depend on, as well as the basic tool command set of the Linux system.
[0064] As shown in Figure 2, the containerized BMC control software is also responsible for managing the container image root file system, which includes all the contents of the BMC root file system of the BMC container, such as all the files and directories required for the baseboard management controller to run.
[0065] For example, when the baseboard management controller runs an application in a container, the container's BMC root file system is loaded from the container image file system, which occupies a certain amount of storage space in the BMC's file system; the baseboard management controller's operating system mounts the image file system to the target directory (i.e., the mount point) so that the container's processes can access the files therein.
[0066] When the baseboard management controller runs a container, the container's root file system is mounted from an image file or directory of the baseboard management controller. For example, when the baseboard management controller runs, it loads the container's image file from a specified location and mounts the image file or directory to a preset mount point. The image file contains all the contents of the container's BMC root file system.
[0067] As shown in Figure 2, each container has an embedded BMC root file system, and the containers can run independently of each other. Furthermore, the file system of each container is separated from the file system of the baseboard management controller, which reduces the dependency or conflict between the application in the container and other software, and ensures that the application in the container can obtain sufficient resource support during runtime, thereby improving the independence and stability of the application layer. At the same time, the independent file system facilitates deployment and migration in different containers, reducing deployment costs.
[0068] Correspondingly, the aforementioned containerization platform engine can also be the open-source Docker container engine, etc. The specific choice can be determined based on the actual application scenario.
[0069] For example, as shown in FIG1, the BMC software 101 of the baseboard management controller also includes a data layer 1013, a software development kit (SDK) 1014, an operating system 1015, and a bootloader (Uboot) 1016.
[0070] In some embodiments, to simplify the deployment process and improve application performance, the baseboard management controller can also encapsulate the data layer 1013 in a container, corresponding to the application application of the application layer; that is, deploying two or more data layers 1013 based on containerization technology, with each data layer corresponding to an application layer, and deploying the corresponding data layer 1013 and application layer 1012 in the same container. The application layer 1012 and data layer 1013 are deployed in containers 1 to N as shown in Figure 3.
[0071] The data layer 1013 contains the configuration settings for the application layer 1012, which are instructions that guide the application in the application layer 1012 on how to use and access data, such as database connection information, environment settings, and application parameters. The configuration content of the data layer 1013 can be stored in a configuration file or environment variables and can be loaded when the application layer 1012 starts or runs.
[0072] In this embodiment, the code logic of the application layer 1012 is separated from the data layer 1013, thereby facilitating the deployment of the application layer based on containerization technology. For multi-processor server architectures, there is no need to modify the application code itself for each server hardware system. Encapsulating the application layer 1012 and the data layer 1013 in a container can reduce the configuration complexity during deployment, as well as reduce the communication latency between the application layer 1012 and the data layer 1013, and reduce communication overhead.
[0073] It should be noted that when deploying the application layer 1012 based on containerization technology, the application logic code of the application layer 1012 can be copied and deployed in each container; while for the data layer 1013 in each container, the configuration content needs to be adjusted for different server hardware systems 20, so as to adapt to the running environment of each server hardware system 20.
[0074] For example, the data layer 1013 can also be deployed outside of containers and contains configuration content corresponding to each server hardware system 20; the SDK 1014 can also be deployed in each corresponding container based on its correspondence with each server hardware system 20. The deployment method based on containerization technology can deploy the application layer 1012, data layer 1013, and SDK 1014 according to the actual application scenario requirements, and no specific limitations are made here.
[0075] For example, each container's application manages a server hardware system 20 corresponding to the BMC hardware 102, as shown in Figure 1. Each server hardware system may include components such as a graphics card, fan, and operating system (OS). Here, each server hardware system in the server refers to a device including a processor, such as a single-processor server. In addition to the processor, the server hardware system may also include a southbridge, a complex programmable logic device (CPLD), or a power supply unit (PSU) located on the same device as the processor.
[0076] It should be noted that the application layer shown in Figure 3 contains the same applications as those shown in Figure 1, and will not be described again here. The applications included in the above containers and the various components included in the server hardware system 20 are only illustrative examples, and can be configured according to the actual application scenario. The specific contents are not limited.
[0077] Based on the above server system architecture, the following examples further illustrate the implementation process of the baseboard management controller managing the server.
[0078] Please refer to Figure 4, which is a schematic diagram of the implementation flow of the server management method provided in this application embodiment. The execution subject of this method can be the baseboard management controller 10 shown in Figure 1, which is communicatively connected to one or more server hardware systems 20 in the server. As shown in Figure 4, the method may include the following steps:
[0079] S401, the board management controller receives management requests sent by the electronic device.
[0080] In this embodiment, the management request is used to query the hardware information of the target server hardware system in the server. As shown in Figure 1, the baseboard management controller runs one or more containers, each container corresponding to a server hardware system, and each container includes an application for obtaining the hardware information of the corresponding server hardware system. The electronic device can be an external device or a client.
[0081] For example, the baseboard management controller includes an interface layer, which can receive management requests based on the interface applications of the interface layer. As shown in Figure 1, the interface layer of the baseboard management controller can include interface applications of various interface protocols, such as the World Wide Web communication protocol, the Redfish modern server management protocol based on RESTful API, the Command-Line Interface (CLI) interface, the open-source standard interface (Simple Network Management Protocol, SNMP) for managing computer systems and monitoring their operating status, the open-source standard interface (Intelligent Platform Management Interface, IPMI) for managing computer systems and monitoring their operating status, as well as keyboard, video mouse (KVM) interfaces, virtual machine monitor (VMM) interfaces, etc.
[0082] For example, the operating system of the baseboard controller configures interfaces (such as Ethernet interfaces) at the interface layer via a web interface or command-line interface (CLI). This includes configuring the physical parameters (such as speed, duplex mode, etc.) and logical parameters (i.e., network addresses, such as IP addresses, gateways, etc.) of the interface. The IP address is used by electronic devices to access the baseboard management controller's (BMC) software. For instance, the baseboard management controller receives management requests from electronic devices based on the interface application at the interface layer and sends the received management requests to the corresponding container to run the application within the container according to the management request.
[0083] S402, the baseboard management controller obtains the hardware information of the target server hardware system and sends it to the electronic device.
[0084] In this embodiment, each container of the baseboard management controller includes an application for obtaining hardware information of the corresponding server hardware system; the baseboard management controller runs the application in the container according to the management request, calls the hardware control layer based on the application to obtain the hardware information of the corresponding target server hardware system, and feeds the hardware information back to the electronic device.
[0085] For example, the baseboard management controller stores the mapping between server hardware systems and containers; the management request may carry the network address of the interface layer and the identifier of the target server hardware system to be accessed. Upon receiving the management request, the interface application at the interface layer determines the target container based on the identifier of the server hardware system in the management request and the aforementioned mapping, and sends the management request to the target container. The operating system of the baseboard management controller runs the application in the target container according to the management request; during the application's execution, it calls the hardware control layer to convert the management request into a hardware operation, and the hardware control layer reads the hardware information of the target server hardware system connected to it; the operating system of the baseboard management controller then feeds back the acquired hardware information to the electronic device through the interface layer.
[0086] The hardware information fed back by the baseboard management controller to the electronic device may include the identifier of the target server hardware system.
[0087] In some embodiments, the baseboard management controller is configured with a unified network address for communicating with electronic devices; the baseboard management controller receives management requests sent by electronic devices, including: the baseboard management controller receives management requests sent by electronic devices based on the unified network address; the baseboard management controller obtains hardware information of a target server hardware system, including: the baseboard management controller obtains hardware information from a corresponding container based on the target server hardware system targeted by the management request.
[0088] For example, as shown in Figure 5, the baseboard management controller is configured with an interface layer for communicating with electronic devices. This interface layer is configured with a unified network address for interacting with electronic devices. This interface layer is used to receive management requests sent by electronic devices based on the unified network address, and to transmit the management request to the container corresponding to the target server hardware system based on the target server hardware system targeted by the management request.
[0089] The unified network address can be an Internet Protocol (IP) address.
[0090] For example, the baseboard management controller stores the mapping between server hardware systems and containers; the interface layer can receive multiple management requests sent by electronic devices for different server hardware systems, and each management request may include the identifier of the target server hardware system; after receiving multiple management requests based on a unified network address, the interface layer determines the target container identifier according to the identifier of the target server hardware system in each management request and the aforementioned mapping, and sends a management request to the target container according to the target container identifier; the operating system of the baseboard management controller calls the hardware control layer based on the application in the target container to read the hardware information of the server hardware system.
[0091] Correspondingly, after reading the hardware information, the hardware control layer can feed it back to the application in the target container through the operating system. The operating system of the baseboard management controller obtains the hardware information of the target server hardware system from each corresponding target container by running the application in the target container.
[0092] In some embodiments, the baseboard management controller acquires hardware information of the target server hardware system and sends it to the electronic device, including: the baseboard management controller summarizing the acquired hardware information of the target server hardware system based on a unified network address and sending it to the electronic device.
[0093] For example, after the hardware control layer of the baseboard management controller reads the hardware information of the server hardware system, it transmits the hardware information to the application in the container of the baseboard management controller. The operating system of the baseboard management controller obtains the hardware information from each target container and aggregates the hardware information of each target server hardware system. The operating system feeds back the aggregated hardware information to the interface application of the interface layer. After receiving the hardware information, the interface application of the interface layer sends the hardware information to the electronic device based on the unified network address.
[0094] To more clearly describe the interaction process between the baseboard management controller and the electronic device based on a unified network address, Figure 6 shows a schematic diagram of the interaction between the baseboard management controller and the electronic device based on a unified network address according to an embodiment of this application. As shown in Figure 6, the interface layer of the baseboard management controller receives management requests sent by the electronic device based on the unified network address, and transmits the management request to the container corresponding to the target server hardware system based on the target server hardware system of the management request, and receives hardware information collected and transmitted by the operating system of the baseboard management controller, and sends the hardware information to the electronic device based on the unified network address; based on the same implementation principle as the previous embodiments, it will not be repeated here; the interaction process may include:
[0095] Step 61: The interface application of the baseboard management controller interface layer receives management requests sent by electronic devices based on a unified network address.
[0096] Step 621: The interface application determines the corresponding target container, such as container 1-application, based on the identifier of the server hardware system in the management request, and sends a first management request to container 1-application; wherein, the management request in step 61 includes the first management request.
[0097] Step 622: The interface application determines the corresponding target container, such as container 2-application, based on the identifier of the server hardware system in the management request, and sends a second management request to container 2-application; wherein, the management request in step 61 includes the second management request.
[0098] The baseboard management controller reads the hardware information of the target server hardware system by running the application of the container and calling the hardware control layer. For example, the operating system of the baseboard management controller reads the first hardware information of the first server hardware system based on the application of container 1 and reads the second hardware information of the second server hardware system based on the application of container 2. The hardware control layer feeds back the first and second hardware information to container 1 and container 2 respectively.
[0099] Step 631: The operating system of the baseboard management controller obtains the first hardware information from container 1.
[0100] Step 632: The operating system of the baseboard management controller obtains the second hardware information from container 2.
[0101] Step 64: The operating system of the baseboard management controller collects and processes the first hardware information and the second hardware information, and feeds back the collected hardware information to the interface application of the interface layer. The hardware information includes the first hardware information and the second hardware information.
[0102] Among them, container 1 and container 2 can send the first hardware information and the second hardware information to the operating system of the baseboard management controller based on shared volume technology.
[0103] For example, a shared volume can be a storage area shared among multiple containers, storing data that needs to be shared between the containers. The operating system of the substrate management controller can configure and manage the shared volume through the container engine. For instance, when an application within a container needs to transfer data to the operating system of the substrate management controller, the data can be written to the shared volume. The application in the operating system of the substrate management controller can then read the data from the shared volume, thereby enabling data transfer from the container to the operating system of the substrate management controller.
[0104] Step 65: The interface application of the interface layer sends hardware information to the electronic device based on the unified network address.
[0105] The above method enables interaction with electronic devices based on a unified network address. It receives management requests sent by electronic devices to different target server hardware systems, aggregates and processes management requests sent by applications in different containers, and enables applications in multiple containers to share a single network address. It also feeds back aggregated hardware information to electronic devices based on the unified network address, reducing the occupation of network address resources and saving network address resources.
[0106] In some embodiments, the baseboard management controller is configured with an independent network address corresponding to each container; the baseboard management controller receives management requests sent by electronic devices, including: the baseboard management controller receives management requests sent by electronic devices based on independent network addresses; the baseboard management controller obtains hardware information of the target server hardware system, including: the baseboard management controller calls the container corresponding to the independent URL based on the independent network address used to receive the management request to obtain hardware information.
[0107] For example, as shown in Figure 7, the baseboard management controller is configured with an interface layer for communicating with electronic devices; the interface layer corresponds one-to-one with the containers of the application layer; each interface layer corresponding to each container is configured with an independent network address; each interface layer is used to receive management requests based on the independent network address and send management requests to the corresponding container.
[0108] The independent network address can be an Internet Protocol (IP) address. Different interface layers correspond to different independent network addresses, such as the different Internet Protocol addresses for each interface layer.
[0109] For example, in the baseboard management controller, the interface layer corresponding to each container receives management requests sent by electronic devices based on their respective independent network addresses; each management request may include the identifier of the target server hardware system and the independent network address of the interface layer; after receiving the management request based on the independent network address, each interface layer sends the management request to the corresponding target container; the application in each target container sends the management request to the baseboard management controller, and the baseboard management controller calls the hardware control layer based on the management request to read the hardware information corresponding to each target server hardware system.
[0110] Correspondingly, after reading the hardware information, the hardware control layer can feed it back to the operating system of the baseboard management controller. The operating system then transmits the hardware information to the application in the target container. Each container sends the hardware information to the interface application of the corresponding interface layer. The interface application of the interface layer sends the hardware information to the electronic device based on an independent network address.
[0111] To more clearly describe the interaction process between the baseboard management controller and the electronic device based on an independent network address, Figure 8 shows a schematic diagram of the interaction between the baseboard management controller and the electronic device based on an embodiment of this application. As shown in Figure 8, the interface layer of the baseboard management controller receives management requests sent by the electronic device based on the independent network address, and transmits the management request to the corresponding container based on the target server hardware system and the independent network address, and receives hardware information transmitted by the corresponding container, and sends the hardware information to the electronic device based on the independent network address; based on the same implementation principle as the aforementioned embodiments, it will not be repeated here; this interaction process may include:
[0112] For container 1:
[0113] Step 811: The interface application of the baseboard management controller interface layer receives the first management request sent by the electronic device based on an independent network address.
[0114] Step 812: The interface application of the interface layer sends the first management request to the container corresponding to the interface layer based on the independent network address or the identifier of the target server hardware system in the first management request, such as sending the first management request to container 1 - application.
[0115] The baseboard management controller runs the application of the container and calls the hardware control layer to read the hardware information of the target server hardware system. For example, the operating system of the baseboard management controller calls the hardware control layer based on the application of container 1 to read the first hardware information of the first server hardware system. The operating system feeds back the first hardware information read by the hardware control layer to container 1.
[0116] Step 813: After obtaining the first hardware information, the application in the container sends the first hardware information to the interface application in the interface layer.
[0117] Step 814: The interface application of the interface layer sends the first hardware information to the electronic device based on the independent network interface.
[0118] For container 2:
[0119] Step 821: The interface application of the baseboard management controller interface layer receives the second management request sent by the electronic device based on an independent network address.
[0120] Step 822: The interface application of the interface layer sends the second management request to the container corresponding to the interface layer based on the independent network address or the identifier of the target server hardware system in the second management request, such as sending the second management request to container 2 - application.
[0121] The baseboard management controller runs the application of the container and calls the hardware control layer to read the hardware information of the target server hardware system. For example, the operating system of the baseboard management controller calls the hardware control layer based on the application of container 2 to read the second hardware information of the second server hardware system. The operating system feeds back the second hardware information read by the hardware control layer to container 2.
[0122] Step 823: After obtaining the second hardware information, the application in the container sends the second hardware information to the interface application in the interface layer.
[0123] Step 824: The interface application of the interface layer sends the second hardware information to the electronic device based on the independent network interface.
[0124] This application embodiment deploys application layer applications based on containerization technology, achieving low-cost transformation of the overall BMC software. It can meet the management needs of a single BMC hardware and BMC software for multi-processor servers, reducing software implementation costs based on optimal hardware costs.
[0125] In some embodiments, the method further includes:
[0126] The baseboard management controller periodically acquires hardware information through the container and issues a hardware fault alarm when the hardware information meets the fault conditions.
[0127] For example, the baseboard management controller uses a container-based application to periodically check the server's hardware information and issue a hardware fault alarm when the hardware information does not meet the qualified indicator thresholds. This promptly reminds users to maintain the server's hardware, improving the timeliness and flexibility of server management and enhancing the server's system stability.
[0128] This application embodiment also provides a server 90, as shown in FIG9. The server 90 includes one or more server hardware systems (such as server hardware system 201 and server hardware system 202) and a baseboard management controller 10; the one or more server hardware systems are respectively connected to the baseboard management controller 10, and the baseboard management controller 10 can be connected to the server 90 or integrated into the server 90.
[0129] The baseboard management controller 10 includes at least one processor and a memory storing a computer program that can run on the processor. When the processor executes the computer program, it implements the steps in the above-described server management method embodiments, such as S401 to S402 shown in FIG4. Alternatively, when the processor executes the computer program, it implements the functions of each module / unit in the above-described device embodiments.
[0130] It should be noted that the above server structure is only illustrative. Depending on the application scenario, other entity structures may also be included. No limitation is made on the entity structure of the server here.
[0131] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0132] This application also provides a chip system applied to a substrate management controller. The chip system includes one or more processors, which are used to invoke computer instructions to cause the substrate management controller to perform the steps in the various method embodiments described above.
[0133] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps described in the various method embodiments above.
[0134] This application provides a computer program product that, when run on an electronic device, enables the electronic device to perform the steps described in the various method embodiments above.
[0135] The chip system, substrate management controller, computer storage medium, and computer program product provided in the above embodiments of this application are all used to execute the methods provided above. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects corresponding to the methods provided above, and will not be repeated here.
[0136] The server provided in the above-described embodiments is based on the baseboard management controller provided above. Therefore, the beneficial effects it can achieve can be referred to the beneficial effects corresponding to the baseboard management controller provided above, and will not be repeated here.
[0137] It should be understood that the above description is merely to help those skilled in the art better understand the embodiments of this application, and is not intended to limit the scope of the embodiments of this application. Those skilled in the art can obviously make various equivalent modifications or variations based on the examples given above, or combinations of any two or more of the above embodiments. Such modifications, variations, or combinations also fall within the scope of the embodiments of this application.
[0138] It should also be understood that the methods, situations, categories, and classifications of embodiments in this application are for the convenience of description only and should not constitute a special limitation. Various methods, categories, situations, and features in embodiments can be combined without contradiction.
[0139] It should also be understood that, in the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced by each other, and the technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.
[0140] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0141] In the embodiments provided in this application, it should be understood that the disclosed apparatus / network devices and methods can be implemented in other ways. Furthermore, the couplings or direct couplings or communication connections shown or discussed may be indirect couplings or communication connections through interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0142] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0143] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
[0144] Finally, it should be noted that the above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A server management method characterized by comprising: The method, applied to a baseboard management controller that is communicatively connected to one or more server hardware systems, includes: The baseboard management controller receives a management request sent by an electronic device. The management request is used to query the hardware information of the target server hardware system. The baseboard management controller runs one or more containers, each of which corresponds to the server hardware system. Each container includes an application program for obtaining the hardware information of the corresponding server hardware system. The baseboard management controller acquires the hardware information of the target server hardware system and sends it to the electronic device. The hardware information of the target server hardware system is acquired by the application of the corresponding container.
2. The method of claim 1, wherein, The baseboard management controller is configured with a unified network address for communicating with the electronic device; The baseboard management controller receives management requests sent by the electronic device, including: The baseboard management controller receives management requests sent by the electronic device based on the unified network address; The baseboard management controller acquires hardware information of the target server hardware system, including: The baseboard management controller obtains the hardware information from the corresponding container based on the target server hardware system targeted by the management request.
3. The method of claim 2, wherein, The baseboard management controller acquires the hardware information of the target server hardware system and sends it to the electronic device, including: The baseboard management controller, based on the unified network address, summarizes the hardware information of the target server hardware system and sends it to the electronic device.
4. The method of claim 1, wherein, The baseboard management controller is configured with an independent network address corresponding to each container; The baseboard management controller receives management requests sent by the electronic device, including: The baseboard management controller receives management requests sent by the electronic device based on the independent network address; The baseboard management controller acquires hardware information of the target server hardware system, including: The baseboard management controller uses the independent network address used to receive the management request to call the container corresponding to the independent URL to obtain the hardware information.
5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: The baseboard management controller periodically acquires the hardware information through the container, and issues a hardware fault alarm when the hardware information meets the fault conditions.
6. A baseboard management controller, comprising: The baseboard management controller includes an interface layer, an application layer, and a hardware control layer. The interface layer is connected to the application layer, and the application layer is connected to the hardware control layer. The interface layer is used to interact with electronic devices, and the hardware control layer is used to connect to one or more server hardware systems. One or more containers are deployed in the application layer, and each container corresponds to a server hardware system. Each container includes an application program for obtaining hardware information of the corresponding server hardware system.
7. The baseboard management controller of claim 6, wherein, The interface layer is configured with a unified network address for interacting with the electronic device. The interface layer is used to receive the management request based on the unified network address and to transmit the management request to the container corresponding to the target server hardware system based on the target server hardware system targeted by the management request.
8. The baseboard management controller of claim 7, wherein, The interface layer is also used to receive hardware information collected and transmitted by the operating system of the baseboard management controller, and to send the hardware information to the electronic device based on the unified network address.
9. The baseboard management controller of claim 6, wherein, Each interface layer corresponds one-to-one with a container in the application layer; each interface layer corresponding to each container is configured with an independent network address; each interface layer is used to receive the management request based on the independent network address and send the management request to the corresponding container.
10. A server, characterized by include: One or more server hardware systems and a baseboard management controller; the one or more server hardware systems are respectively connected to the baseboard management controller, the baseboard management controller being used to perform the server management method as described in any one of claims 1 to 5.
11. A server, characterized by include: One or more server hardware systems, and a baseboard management controller as described in any one of claims 6 to 9; The one or more server hardware systems are respectively connected to the baseboard management controller.