A monitoring system, method, server and product
By establishing serial and high-speed serial communication channels in the server's substrate management controller and switching the monitoring host, the problem of low component monitoring efficiency in dual HOST-single BMC systems is solved, and efficient monitoring effect is achieved.
Patent Information
- Application Number
- CN202411124514.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-16
- Publication Date
- 2025-01-03
- Estimated Expiration
- 2044-08-16
Smart Images

Figure CN118642923B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the technical field of servers, and in particular, to a monitoring system, method, server and product. Background Art
[0002] When the host is used as a server, a large number of devices will be connected, such as hard disks, RAID cards (Redundant Array of Independent Disks) and network cards to provide necessary storage or network capabilities. These devices can be collectively referred to as "components". The BMC (Baseboard Management Controller) in the server is used to monitor the server status and perform necessary control, and the "components" connected to the server are one of the resource objects that need to be monitored.
[0003] At present, monitoring components are generally managed through the MCTP protocol (Management Component Transport Protocol). The MCTP message format based on the PCIe (peripheral component interconnect express, a high-speed serial computer expansion bus standard) bus is recorded as MCTP over PCIe, and the MCTP message format based on the IIC bus (Inter-Integrated Circuit, integrated circuit bus) is recorded as MCTP over IIC.
[0004] However, in a server system consisting of dual hosts and a single BMC, when one BMC is used to manage and monitor two hosts at the same time, because the BMC often has only one PCIe EP (Endpoint) to implement the MCTP over PCIe function, in the dual hosts and a single BMC system, the BMC can only monitor the PCIe components in one of the hosts through MCTP over PCIe at the same time. If the MCTP over IIC monitoring method is used alone in the dual hosts and a single BMC, the transmission rate of the IIC protocol is lower than the transmission rate of the PCIe protocol, resulting in low monitoring efficiency of the components. Summary of the invention
[0005] The embodiments of the present application provide a monitoring system, method, server and product, which are intended to improve the efficiency of component monitoring in a dual-HOST-single BMC system.
[0006] In a first aspect, an embodiment of the present application provides a monitoring system, which is applied to a baseboard management controller in a server, wherein a connection channel based on a serial communication bus is established between the baseboard management controller and a first host and a second host in the server, and the monitoring system comprises:
[0007] A first monitoring subsystem, used for monitoring monitoring data of components in the first host based on a connection channel of the serial communication bus;
[0008] A second monitoring subsystem, used for monitoring monitoring data of components in the second host based on a connection channel of a high-speed serial computer expansion bus;
[0009] The monitoring switching subsystem is used to switch the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to a monitoring switching instruction. When responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host and establishes a connection channel based on the high-speed serial computer expansion bus with the first host.
[0010] Optionally, the first monitoring subsystem is used to:
[0011] Create and run a first monitoring process, the first monitoring process comprising:
[0012] When it is detected that the first host is powered on, a first device node on the first host is turned on, wherein the first device node is used to connect a connection channel based on a serial communication bus between the first host and the baseboard management controller;
[0013] A first component information list in the first host is obtained, monitoring data of each component in the first component information list is monitored respectively, and the monitoring data is stored in a target location in the baseboard management controller.
[0014] Optionally, in the process of acquiring the first component information list in the first host and respectively monitoring the monitoring data of each component in the first component information list, the first monitoring process is used to:
[0015] Obtain component information of any component in the first component information list in the first host;
[0016] Determine whether the component supports the management component transfer protocol;
[0017] When the component does not support the management component transmission protocol, obtaining a next component in the first component information list in the first host;
[0018] When the component supports the management component transmission protocol, determining a first monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component;
[0019] Run the first monitoring sub-thread corresponding to the component to obtain the monitoring data corresponding to the component.
[0020] Optionally, when any component supports the management component transmission protocol, the first monitoring process is further used to:
[0021] Get the manufacturer information and type information of the component;
[0022] If the manufacturer information and type information of the component have been stored in the component information library, obtaining the first monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database;
[0023] If the manufacturer information and type information of the component are not stored in the component information library, the monitoring interface function for monitoring the component is obtained in the preset monitoring interface function library according to the manufacturer information and type information of the component, and the first monitoring sub-thread corresponding to the component is created and stored in the monitoring sub-thread database.
[0024] Optionally, during the running of the first monitoring process, the first monitoring process is further used to monitor in real time the first monitoring stop signal and the first monitoring sub-thread stop signal of any component;
[0025] When the first monitoring stop signal is monitored, stopping the first monitoring process;
[0026] When a stop signal of the first monitoring sub-thread of any component is monitored, the first monitoring sub-thread of the component is stopped.
[0027] Optionally, when it is monitored that the first host is turned on, the first monitoring process is further used to set and store a first target number for the first host currently monitored by the first monitoring subsystem.
[0028] Optionally, the second monitoring subsystem is used to:
[0029] Create and run a second monitoring process, wherein the second monitoring process includes:
[0030] When it is detected that the second host is powered on, a second device node on the second host is turned on, wherein the second device node is used to connect a connection channel based on a high-speed serial computer expansion bus between the second host and the baseboard management controller;
[0031] A second component information list in the second host is obtained, monitoring data of each component in the second component information list is monitored respectively, and the monitoring data is stored in a target location in the baseboard management controller.
[0032] Optionally, in the process of acquiring the second component information list in the second host and respectively monitoring the monitoring data of each component in the second component information list, the second monitoring process is used to:
[0033] Obtain component information of any component in the second component information list in the second host;
[0034] Determine whether the component supports the management component transfer protocol;
[0035] When the component does not support the management component transmission protocol, obtaining a next component from the second component information list in the second host;
[0036] When the component supports the management component transmission protocol, determining the second monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component;
[0037] Run the second monitoring sub-thread corresponding to the component to obtain the monitoring data corresponding to the component.
[0038] Optionally, when any component supports the management component transmission protocol, the second monitoring process is further used to:
[0039] Get the manufacturer information and type information of the component;
[0040] If the manufacturer information and type information of the component have been stored in the component information library, obtaining the second monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database;
[0041] If the manufacturer information and type information of the component are not stored in the component information library, the monitoring interface function for monitoring the component is obtained in the preset monitoring interface function library according to the manufacturer information and type information of the component, and a second monitoring sub-thread corresponding to the component is created and stored in the monitoring sub-thread database.
[0042] Optionally, during the running of the second monitoring process, the second monitoring process is further used to monitor in real time the second monitoring stop signal and the second monitoring sub-thread stop signal of any component;
[0043] When the second monitoring stop signal is monitored, stopping the second monitoring process;
[0044] When a stop signal of the second monitoring sub-thread of any component is monitored, the second monitoring sub-thread of the component is stopped.
[0045] Optionally, after monitoring that the second host is powered on, the second monitoring process is further used to set and store a second target number for the second host currently monitored by the second monitoring subsystem.
[0046] Optionally, the monitoring switching subsystem includes a first monitoring switching subsystem and a second monitoring switching subsystem;
[0047] The first monitoring switching subsystem is used to switch the first monitoring subsystem to monitor the monitoring data of the components in the first host or the second host;
[0048] The second monitoring switching subsystem is used to switch the second monitoring subsystem to monitor the monitoring data of the components in the first host or the second host.
[0049] Optionally, when performing host monitoring switching, the second monitoring switching subsystem is used to:
[0050] In response to a monitoring switching instruction from a user, determining a target host corresponding to the second monitoring subsystem;
[0051] Closing the second device node of the current monitoring host corresponding to the second monitoring subsystem, and opening the second device node of the target host corresponding to the second monitoring subsystem, the second device node being used to connect a connection channel based on a high-speed serial computer expansion bus between any host and the baseboard management controller;
[0052] Sending a second monitoring stop signal to the second monitoring subsystem, where the second monitoring subsystem is used to stop the monitoring process of the current monitoring host in response to the second monitoring stop signal;
[0053] Sending a switching instruction carrying the number of the switching host to the first monitoring switching subsystem, where the number of the switching host is the second target number set by the second monitoring subsystem for the current monitoring host;
[0054] When the second monitoring subsystem interacts with the target host successfully, a second monitoring start signal is sent to the second monitoring subsystem, so that the second monitoring subsystem restarts the second monitoring process to monitor the components in the target host.
[0055] Optionally, the first monitoring switching subsystem is used to:
[0056] In response to the switching instruction carrying the number of the switching host sent by the second monitoring switching subsystem, verifying the number of the switching host;
[0057] When the number of the switching host is not the first target number set by the first monitoring subsystem for its own current monitoring host, closing the first device node of the current monitoring host corresponding to the first monitoring subsystem, and opening the first device node of the switching host, the first device node being used to connect a connection channel based on a serial communication bus between any host and the baseboard management controller;
[0058] Sending a first monitoring stop signal to the first monitoring subsystem, wherein the first monitoring subsystem is used to stop the monitoring process of the current monitoring host in response to the first monitoring stop signal;
[0059] When the first monitoring subsystem interacts with the switching host successfully, a first monitoring start signal is sent to the first monitoring subsystem, so that the first monitoring subsystem restarts the first monitoring process to monitor the components in the switching host.
[0060] Optionally, the first monitoring subsystem is arranged on the first core of the baseboard management controller;
[0061] The second monitoring subsystem is arranged on the second core of the baseboard management controller;
[0062] After obtaining monitoring data of any component in the first host through monitoring, the first monitoring subsystem sends the monitoring data to the second core of the baseboard management controller.
[0063] In a second aspect, an embodiment of the present application provides a monitoring method, which is applied to a baseboard management controller in a server, wherein a connection channel based on a serial communication bus is established between the baseboard management controller and a first host and a second host in the server, and a first monitoring subsystem, a second monitoring subsystem and a monitoring switching subsystem are provided on the baseboard management controller, and the method includes:
[0064] The first monitoring subsystem monitors monitoring data of components in the first host based on a connection channel of the serial communication bus;
[0065] The second monitoring subsystem monitors the monitoring data of the components in the second host based on the connection channel of the high-speed serial computer expansion bus;
[0066] The monitoring switching subsystem switches the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to the monitoring switching instruction;
[0067] When responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host, and establishes a connection channel based on the high-speed serial computer expansion bus with the first host.
[0068] In a third aspect, an embodiment of the present application provides a server, the server comprising a baseboard management controller, a first host and a second host, the baseboard management controller comprising the monitoring system described in the first aspect of the embodiment.
[0069] In a fourth aspect, an embodiment of the present application provides a computer device, comprising: at least one processor, and a memory, wherein the memory stores a computer program that can be run on the processor, wherein when the processor executes the computer program, the monitoring method described in the second aspect of the embodiment is performed.
[0070] In a fifth aspect, an embodiment of the present application provides a non-volatile readable storage medium, wherein the non-volatile readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the monitoring method described in the second aspect of the embodiment is performed.
[0071] In a sixth aspect, an embodiment of the present application provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the monitoring method described in the second aspect of the embodiment.
[0072] Beneficial effects:
[0073] The monitoring system provided in this embodiment is applied to a baseboard management controller in a server, and a connection channel based on a serial communication bus is established between the baseboard management controller and the first host and the second host in the server. The first monitoring subsystem monitors the monitoring data of the components in the first host based on the connection channel of the serial communication bus; the second monitoring subsystem is used to monitor the monitoring data of the components in the second host based on the connection channel of the high-speed serial computer expansion bus.
[0074] When it is necessary to switch the monitoring objects of the first monitoring subsystem and the second monitoring subsystem, the monitoring switching subsystem responds to the monitoring switching instruction to switch the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem, and in response to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host, and establishes a connection channel based on the high-speed serial computer expansion bus with the first host.
[0075] In a scenario where the server includes a dual-HOST-single BMC system, the components of one host are monitored based on a high-speed serial computer expansion bus, namely, PCIe. When switching to monitor any of the two hosts based on PCIe, the PCIe-based connection channel between the BMC and the host currently monitored by the second monitoring subsystem is disconnected, and a PCIe-based channel between the BMC and the other host is established. The other of the two hosts that has not established a PCIe connection channel can monitor the components based on the connection channel of the serial communication bus, namely, the IIC protocol. Compared with simply using the MCTP over IIC monitoring method to monitor the components of the two hosts, the component monitoring efficiency can be improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0076] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art.
[0077] Figure 1 A schematic diagram of a monitoring system provided by an embodiment of the present application is shown;
[0078] Figure 2 A schematic diagram showing the structure of a server provided in an embodiment of the present application is shown;
[0079] Figure 3 A monitoring flow chart of a first monitoring subsystem provided in an embodiment of the present application is shown;
[0080] Figure 4 A monitoring flow chart of a second monitoring subsystem provided in an embodiment of the present application is shown;
[0081] Figure 5 A switching flow chart of a first monitoring switching subsystem provided in an embodiment of the present application is shown;
[0082] Figure 6 A switching flow chart of a second monitoring switching subsystem provided in an embodiment of the present application is shown;
[0083] Figure 7 A flowchart showing the steps of the monitoring method provided by an embodiment of the present application is shown;
[0084] Figure 8 A schematic diagram of a computer device provided in an embodiment of the present application is shown;
[0085] Fig. 9 A schematic diagram of a non-volatile readable storage medium provided in an embodiment of the present application is shown;
[0086] Fig.10 A schematic diagram of a computer program product provided by an embodiment of the present application is shown. DETAILED DESCRIPTION
[0087] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0088] To make the purpose, technical scheme and advantages of the embodiments of the present application clearer, each embodiment of the present application will be described in detail below in conjunction with the accompanying drawings. However, it will be appreciated by those skilled in the art that in each embodiment of the present application, many technical details are proposed in order to enable the reader to better understand the present application. However, even without these technical details and various changes and modifications based on the following embodiments, the technical scheme claimed in the present application can also be implemented. The division of the following embodiments is for the convenience of description, and the specific implementation of the present application should not constitute any limitation, and the various embodiments can be combined with each other and referenced on the premise of no contradiction.
[0089] HOST: Host refers to the main body of the computer except for the input and output devices;
[0090] BMC: Baseboard Management Controller, a dedicated controller used to monitor and manage servers;
[0091] IIC: Inter-Integrated Circuit, integrated circuit bus, is a serial communication bus using a master-slave architecture;
[0092] PCIe: peripheral component interconnect express, or PCI-Express, is a high-speed serial computer expansion bus standard;
[0093] MCTP: Management Component Transport Protocol, a protocol independent of physical media, used for information exchange between components in a computer system;
[0094] MCTP over IIC: data format transmitted by the MCTP protocol on the IIC bus;
[0095] MCTP over PCIe: The data format transmitted by the MCTP protocol on the PCIe bus;
[0096] VGA: Video Graphics Array, the foreign name of video graphics array is VGA;
[0097] PCIe EP: PCIe endpoint.
[0098] When the host HOST is used as a server, a large number of devices will be connected, such as hard disks, RAID cards, network cards, etc. to provide necessary storage or network capabilities. These devices can be collectively referred to as "components". The role of BMC on the server is to monitor the server status and perform necessary control. Among them, the "components" connected to the server are one of the resource objects that need to be monitored.
[0099] At present, components based on the PCIe protocol are generally managed through the MCTP protocol. The MCTP message format based on the PCIe bus is MCTP over PCIe, and the MCTP message format based on the IIC bus is MCTP over IIC.
[0100] In the current single-HOST-single-BMC system, a BMC is generally used to manage and monitor a single host. In this scenario, a single BMC can manage components on a HOST through MCTP over PCIe or MCTP over IIC.
[0101] However, in a system consisting of two hosts and a single BMC, that is, a scenario where one BMC is used to manage and monitor two hosts at the same time, continuing to use the above methods to monitor components will increase costs or reduce performance, because the BMC often has only one PCIe EP (Endpoint) to implement the MCTP over PCIe function. Therefore, in a system with two hosts and a single BMC, the BMC can only monitor the components of one host through MCTP over PCIe at the same time. If a PCIe EP is added to the BMC to implement two-way MCTP over PCIe, the cost will increase, and the monitoring method of simply using MCTP over IIC is relatively inefficient.
[0102] Therefore, in order to improve the component monitoring efficiency of a system consisting of dual HOSTs and a single BMC, an embodiment of the present application provides a monitoring system.
[0103] Reference Figure 1 , showing a framework schematic diagram of a monitoring system provided in an embodiment of the present application, the monitoring system includes a first monitoring subsystem, a second monitoring subsystem and a monitoring switching subsystem, and the monitoring system can be applied in a server including dual HOSTs and a single BMC, wherein the dual hosts in the server include a first host, a second host and a baseboard management controller, namely, a BMC.
[0104] The first monitoring subsystem is used to monitor the monitoring data of each component in the first host based on the connection channel of the serial communication bus; that is, the first monitoring subsystem is used to monitor the components in the first host based on the monitoring method of MCTP over IIC.
[0105] The second monitoring subsystem is used to monitor the monitoring data of the components in the second host based on the connection channel of the high-speed serial computer expansion bus; that is, the second monitoring subsystem is used to monitor the components in the second host based on the monitoring method of MCTP over PCIe.
[0106] Specifically, the monitoring data of a component is related to the type of the component. For example, when the component is a GPU card, the monitoring data may include the temperature of the GPU card and configuration information of the GPU, such as the number of cores and the size of video memory space. If the device type is a Raid card, the monitoring data may include the temperature of the Raid card, the number of physical disks, the number of logical disks, etc. In the actual implementation process, the type of monitoring data of any component can be set according to the needs of the actual application, and this embodiment does not impose any restrictions.
[0107] And the monitoring host of the first monitoring subsystem and the second monitoring subsystem can be switched, that is, the monitoring mode of the host can be switched. Switching the host means disconnecting the PCIe EP from the current host in the BMC and connecting it to another host, wherein the disconnection and connection of the PCIe EP both depend on the PCIe hot plug function. Since the VGA function depends on the PCIe channel, and the VGA function is an important function of each host, the VGA function of each host can only be realized by switching the host. Therefore, a specified monitoring mode cannot be used for any host in a fixed manner, and the monitoring mode of the host needs to be switched to realize the normal operation of the server. Therefore, the monitoring system provided in this embodiment also includes a monitoring switching subsystem.
[0108] The monitoring switching subsystem is used to switch the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to a monitoring switching instruction. When responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host and establishes a connection channel based on the high-speed serial computer expansion bus with the first host.
[0109] Furthermore, in a scenario where the server includes a dual-HOST-single BMC system, the components in the dual hosts can be monitored based on the MCTP over PCIe monitoring method and the MCTP over IIC monitoring method. When switching to monitor either of the two hosts based on PCIe, the PCIe-based connection channel between the BMC and the host currently monitored by the second monitoring subsystem will be disconnected, and a PCIe-based channel between the BMC and the other host will be established. Compared with simply using the MCTP over IIC monitoring method to monitor the components of the two hosts, the component monitoring efficiency can be improved.
[0110] Reference Figure 2 , shows a structural schematic diagram of a server provided by an embodiment of the present application, wherein the server includes a first host, a second host and a baseboard management controller, namely, a BMC. Since there is only one PCIe EP in the BMC, the BMC can only monitor components of one host at a time by using MCTP over PCIe. A switch is provided in the server, and the switch can be a PCIe MUX (Multiplexer) to switch and establish a connection channel based on a high-speed serial computer expansion bus, namely, a PCIe channel, between the BMC and any host; and a connection channel based on a serial communication bus, namely, an IIC channel, is established between the BMC and the first host and the second host at the same time.
[0111] When the second monitoring subsystem based on the MCTP over PCIe monitoring method switches from monitoring the second host to monitoring the first host, the BMC controls the PCIe MUX to establish a PCIe channel between the BMC and the first host, and then the PCIe channel between the BMC and the second host is disconnected, so that the second monitoring subsystem monitors the components of the first host based on the MCTP over PCIe monitoring method; then the first monitoring subsystem can monitor the components of the second host based on the MCTP over IIC monitoring method through the IIC channel between the BMC and the second host.
[0112] In a feasible implementation, the BMC is divided into a first core and a second core, wherein the first core is a small core for running small systems such as RTOS, and the second core is a large core for running large systems such as Linux; data can be exchanged between the two cores of the BMC; the first monitoring subsystem is set on the first core of the baseboard management controller; the second monitoring subsystem is set on the second core of the baseboard management controller.
[0113] By using the big and small core architecture on the BMC side, the BMC is always connected to the two hosts through the IIC channel, and the BMC has only one PCIe channel, which is connected to one of the hosts through the PCIe channel. That is, only one host can be monitored using the MCTP over PCIe method at the same time, and the other host is monitored using the MCTP over IIC method. The small core is responsible for monitoring a host component using the MCTP over IIC method, and the large core monitors the components of another host using the MCTP over PCIe method. The two cores of the BMC are responsible for one monitoring method. During the switching of the monitoring method, the monitoring subsystems running in the large core and the small core only need to change the monitored host to switch to the corresponding host.
[0114] The first monitoring subsystem is used to create and run a first monitoring process, and the first monitoring process includes: when monitoring that the first host is turned on, setting and storing a first target number for the first host currently monitored by the first monitoring subsystem. For example, the first monitoring subsystem can set the first target number to 0 for the currently monitored host.
[0115] Then, a first device node on the first host is opened, and the first device node is used to connect a connection channel based on a serial communication bus between the first host and the baseboard management controller; then, a first component information list in the first host is obtained, and monitoring data of each component in the first component information list is monitored respectively, and stored in a target location in the baseboard management controller. For example, the target location is a shared memory of the BMC, and the monitoring data of the component is sent to the second core, i.e., the large core, of the BMC for processing.
[0116] In the process of obtaining the first component information list in the first host and monitoring the monitoring data of each target component in the first component information list respectively, the first monitoring process is used to: obtain the component information of any component in the first component information list in the first host; determine whether the component supports the management component transmission protocol; when the component does not support the management component transmission protocol, obtain the next component in the first component information list in the first host; when the component supports the management component transmission protocol, determine the first monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component; run the first monitoring sub-thread corresponding to the component, obtain the monitoring data corresponding to the component, and store it in the target location in the baseboard management controller. By way of example, the target location can be the shared memory of the BMC.
[0117] Specifically, when any component supports the management component transmission protocol, the first monitoring process is also used to: obtain the manufacturer information and type information of the component; if the manufacturer information and type information of the component have been stored in the component information library, obtain the first monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database; if the manufacturer information and type information of the component are not stored in the component information library, obtain the monitoring interface function for monitoring the component in the preset monitoring interface function library according to the manufacturer information and type information of the component, and create the first monitoring sub-thread corresponding to the component and store it in the monitoring sub-thread database.
[0118] Since different components have different vendor information and type information, the monitoring interface functions of different components are also different. The monitoring interface configuration information of the component can be determined according to the vendor information and type information of the component, and the corresponding first monitoring sub-thread can be determined.
[0119] When it is detected that the manufacturer information and type information of a component are not in the component information library, it indicates that the component is being monitored for the first time. The manufacturer information and type information of the component are stored in the component information library, and the monitoring interface function of the component provided by the manufacturer is obtained in the preset monitoring interface function library. Then, the first monitoring sub-thread corresponding to the component is created and stored in the monitoring sub-thread database. In subsequent detections, the first monitoring sub-thread of the component can be directly called in the monitoring sub-thread database according to the monitoring interface configuration information of the component.
[0120] During the actual implementation, when the first monitoring process is running, the first monitoring process is also used to monitor the first monitoring stop signal and the first monitoring sub-thread stop signal of any component in real time; when the first monitoring stop signal is monitored, the first monitoring process is stopped and the resources of the first monitoring process are released.
[0121] In addition to stopping the first monitoring process of the first monitoring subsystem as a whole, the first monitoring subthread of any component of the first host can also be paused. When the stop signal of the first monitoring subthread of any component is monitored, the first monitoring subthread of the component is stopped and the resources of the first monitoring subthread of the component are released.
[0122] The second monitoring subsystem is used to create and run a second monitoring process, and the second monitoring process includes: when monitoring that the second host is turned on, setting and storing a second target number for the second host currently monitored by the second monitoring subsystem. For example, the second monitoring subsystem can set the second target number to 1 for the currently monitored host.
[0123] Then, a second device node on the second host is opened, and the second device node is used to connect a connection channel based on a high-speed serial computer expansion bus between the second host and the baseboard management controller; a second component information list in the second host is obtained, and monitoring data of each component in the second component information list is monitored respectively, and stored in a target location in the baseboard management controller. For example, the target location can be a shared memory of the BMC.
[0124] In the process of obtaining the second component information list in the second host and monitoring the monitoring data of each component in the second component information list respectively, the second monitoring process is used to: obtain the component information of any component in the second component information list in the second host; determine whether the component supports the management component transmission protocol; when the component does not support the management component transmission protocol, obtain the next component in the second component information list in the second host; when the component supports the management component transmission protocol, determine the second monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component; run the second monitoring sub-thread corresponding to the component to obtain the monitoring data corresponding to the component.
[0125] Specifically, when any component supports the management component transmission protocol, the second monitoring process is also used to: obtain the manufacturer information and type information of the component; if the manufacturer information and type information of the component have been stored in the component information library, obtain the second monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database; if the manufacturer information and type information of the component are not stored in the component information library, obtain the monitoring interface function for monitoring the component in the preset monitoring interface function library according to the manufacturer information and type information of the component, and create a second monitoring sub-thread corresponding to the component and store it in the monitoring sub-thread database.
[0126] During the actual implementation, while running the second monitoring process, the second monitoring process is also used to monitor the second monitoring stop signal and the second monitoring sub-thread stop signal of any component in real time; when the second monitoring stop signal is monitored, the second monitoring process is stopped and the resources of the second monitoring process are released.
[0127] When a stop signal of the second monitoring sub-thread of any component is monitored, the second monitoring sub-thread of the component is stopped, and the resources of the second monitoring sub-thread of the component are released.
[0128] In a feasible implementation, the monitoring switching subsystem includes a first monitoring switching subsystem and a second monitoring switching subsystem, and the first monitoring switching subsystem and the first monitoring subsystem are both arranged on the first core of the baseboard management controller; the second monitoring switching subsystem and the second monitoring subsystem are both arranged on the second core of the baseboard management controller.
[0129] The first monitoring switching subsystem is used to switch the first monitoring subsystem to monitor the monitoring data of the components in the first host or the second host; the second monitoring switching subsystem is used to switch the second monitoring subsystem to monitor the monitoring data of the components in the first host or the second host.
[0130] The first monitoring switching subsystem on the first core, i.e., the small core of the BMC, is mainly responsible for the process of hot-inserting the PCIe EP on the BMC into the host. The switching process of the first monitoring switching subsystem and the first monitoring process in the first monitoring subsystem are created at the same time; the second monitoring switching subsystem on the second core, i.e., the large core of the BMC, is mainly responsible for the process of hot-plugging the PCIe EP on the BMC from the host. The switching process of the second monitoring switching subsystem and the second monitoring process in the second monitoring subsystem are created at the same time.
[0131] Specifically, when performing host monitoring switching, the second monitoring switching subsystem responds to the user's monitoring switching instruction and determines the target host corresponding to the second monitoring subsystem. The monitoring switching instruction from the user does not contain the number of the target host, but because there are only two hosts, the numbers are either 0 or 1. The second monitoring subsystem can determine the number of the target host based on the second target number of the host currently monitored by itself; for example, the second target number of the second monitoring subsystem is 1, then the host with the first target number of 0 is used as the number of the target host, that is, the second monitoring subsystem uses the current first host as the target host.
[0132] Then the second monitoring switching subsystem closes the second device node of the current monitoring host corresponding to the second monitoring subsystem, and opens the second device node of the target host corresponding to the second monitoring subsystem, and the second device node is used to connect the connection channel based on the high-speed serial computer expansion bus between any host and the baseboard management controller.
[0133] In order to avoid confusion of monitoring data, the second monitoring switching subsystem sends a second monitoring stop signal to the second monitoring subsystem. The second monitoring subsystem is used to stop the monitoring process of the current monitoring host in response to the second monitoring stop signal. At this time, the second monitoring subsystem and the target host enter an interactive process.
[0134] The second monitoring switching subsystem sends a switching instruction carrying the number of the switching host to the first monitoring switching subsystem to notify the first monitoring subsystem to perform host switching. The number of the switching host is the second target number set by the second monitoring subsystem for the current monitoring host; that is, the second host numbered 1 is used as the host that the first monitoring subsystem needs to switch monitoring.
[0135] When the second monitoring subsystem and the target host interact successfully, the second monitoring switching subsystem sends a second monitoring start signal to the second monitoring subsystem, so that the second monitoring subsystem restarts the second monitoring process to monitor the components in the target host; at this time, the number of the monitoring host of the second monitoring subsystem has changed from 1 to 0, so when continuing to monitor, the second monitoring subsystem monitors the first host after the switch.
[0136] The first monitoring switching subsystem responds to the switching instruction carrying the switching host number sent by the second monitoring switching subsystem, and verifies the switching host number; that is, if the first target number currently set for the host by the first monitoring subsystem is 0, and the switching host number is 1, the verification passes.
[0137] When the number of the switching host is not the first target number set by the first monitoring subsystem for its own current monitoring host, the first monitoring switching subsystem closes the first device node of the current monitoring host corresponding to the first monitoring subsystem, and opens the first device node of the switching host. The first device node is used to connect a connection channel based on a serial communication bus between any host and the baseboard management controller. At this time, the first monitoring subsystem and the switching host enter an interactive process.
[0138] The first monitoring switching subsystem sends a first monitoring stop signal to the first monitoring subsystem, and the first monitoring subsystem is used to stop the monitoring process of the current monitoring host in response to the first monitoring stop signal; when the first monitoring subsystem and the switching host interact successfully, a first monitoring start signal is sent to the first monitoring subsystem to enable the first monitoring subsystem to restart the first monitoring process to monitor the components in the switching host. At this time, the number of the monitoring host of the first monitoring subsystem has changed from 0 to 1. Therefore, when continuing to monitor, the first monitoring subsystem monitors the second host after switching.
[0139] In a feasible implementation, unlike MCTP over IIC messages, the data volume of MCTP over PCIe messages is large due to the strong data transmission capability of the PCIe bus. There is a dedicated target hardware module in the BMC to process PCIe type messages. However, since there is only one target hardware module, after the host is switched, the second monitoring subsystem can reset the target hardware module in the BMC and put the target hardware module in an initial state. If the target hardware module is still in the state before the switch, data confusion may occur.
[0140] Reference Figure 3 , shows a monitoring flow chart of the first monitoring subsystem provided in an embodiment of the present application, wherein the first monitoring subsystem includes the following processes:
[0141] A1: Perform environment detection and initialization.
[0142] A2: Create and run the first monitoring process.
[0143] A3: Perform power-on detection on the current monitoring host.
[0144] Specifically, a default host for starting default monitoring may be set for the first monitoring subsystem and the second monitoring subsystem. For example, the default host of the first monitoring subsystem may be set to be the first host.
[0145] A4: Determine whether the current monitoring host is turned on.
[0146] When the current monitoring host is not detected to be powered on, continue to step A3;
[0147] When it is detected that the current monitoring host is powered on, execute step A5.
[0148] A5: Set the first target number for the current monitoring host and save the first target number.
[0149] For example, the first monitoring subsystem may set the number of the default host to 0.
[0150] A6: Monitor whether there is a first monitoring stop signal from the first monitoring switching subsystem.
[0151] When the first monitoring stop signal is monitored, executing step A7;
[0152] When the first monitoring stop signal is not monitored, step A10 is executed.
[0153] A7: Stop the first monitoring process.
[0154] A8: Monitor whether there is a first monitoring start signal from the first monitoring switching subsystem.
[0155] When there is a first monitoring start signal from the first monitoring switching subsystem, executing step A9;
[0156] When there is a first monitoring start signal from the first monitoring switching subsystem, execute A7.
[0157] A9: Wait for the first monitoring switching subsystem to update and save the number of the switching host.
[0158] Then, execute step A10.
[0159] A10: Open the first device node on the current monitoring host.
[0160] Specifically, the first device node, namely the IIC device node, establishes a connection channel, namely the IIC channel, based on the serial communication bus between the current host and the BMC.
[0161] A11: Get the component information list on the current host.
[0162] A12: Get the component information of any component in the component information list of the current host.
[0163] A13: Determine whether the component supports the management component transfer protocol.
[0164] If not supported, go to step A12.
[0165] If yes, execute step A14.
[0166] A14: Determine the manufacturer information and type information of the component.
[0167] A15: Create the first monitoring sub-thread of the component.
[0168] A16: Check whether there is a stop signal of the first monitoring sub-thread of the component.
[0169] If it exists, execute step A17;
[0170] If not present, execute step A18.
[0171] A17: Stop the stop signal of the first monitoring sub-thread of the component and release the resources of the first monitoring sub-thread of the component.
[0172] Then, step A12 is executed to continue monitoring the next component.
[0173] A18: Get the monitoring data of the component and store it in the shared memory.
[0174] A19: Synchronize the monitoring data of the component to the second core.
[0175] Then, step A12 is executed to continue acquiring monitoring data of the next component.
[0176] Reference Figure 4 , shows a monitoring flow chart of the second monitoring subsystem provided in an embodiment of the present application, wherein the second monitoring subsystem includes the following processes:
[0177] B1: Perform environment detection and initialization.
[0178] B2: Create and run the second monitoring process.
[0179] B3: Perform power-on detection on the current monitoring host.
[0180] For example, the default host of the second monitoring subsystem may be set to be the second host.
[0181] B4: Determine whether the current monitoring host is turned on.
[0182] When the current monitoring host is not detected to be powered on, continue to step B3;
[0183] When it is detected that the current monitoring host is powered on, step B5 is executed.
[0184] B5: Set the second target number for the current monitoring host and save the second target number.
[0185] For example, the second monitoring subsystem may set the default host to be numbered 1.
[0186] B6: Monitor whether there is a second monitoring stop signal from the second monitoring switching subsystem.
[0187] When the second monitoring stop signal is monitored, executing step B7;
[0188] When the second monitoring stop signal is not monitored, step B10 is executed.
[0189] B7: Stop the second monitoring process.
[0190] B8: Monitor whether there is a second monitoring start signal from the second monitoring switching subsystem.
[0191] When there is a second monitoring start signal from the second monitoring switching subsystem, executing step B9;
[0192] When there is a second monitoring start signal from the second monitoring switching subsystem, execute B7.
[0193] B9: Wait for the second monitoring switching subsystem to update and save the target host number.
[0194] Then, execute step B10.
[0195] B10: Open the second device node on the current monitoring host.
[0196] Specifically, the second device node, namely the PCIe device node, establishes a connection channel, namely the PCIe channel, based on a high-speed serial computer expansion bus between the current host and the BMC.
[0197] B11: Reset the target hardware module.
[0198] B12: Get the component information list on the current host.
[0199] B13: Get the component information of any component in the component information list of the current host.
[0200] B14: Determine whether the component supports the management component transfer protocol.
[0201] If not supported, go to step B13.
[0202] If supported, execute step B115.
[0203] B15: Determine the manufacturer information and type information of the component.
[0204] B16: Create the second monitoring sub-thread of this component.
[0205] B17: Detect whether there is a stop signal of the second monitoring sub-thread of the component.
[0206] If it exists, execute step B18;
[0207] If not present, execute step B19.
[0208] B18: Stop the second monitoring sub-thread of the component and release the resources of the second monitoring sub-thread of the component.
[0209] Then continue to step B13 to monitor the next component.
[0210] B19: Get the monitoring data of the component and store it in the shared memory.
[0211] Then execute step B13.
[0212] Reference Figure 5 , shows a switching flow chart of the first monitoring switching subsystem provided in an embodiment of the present application. In a feasible implementation, the switching process of the first monitoring switching subsystem includes:
[0213] C1: Create a switching process for the first monitoring switching subsystem.
[0214] C2: Wait for the switching instruction carrying the number of the switching host sent by the second monitoring switching subsystem.
[0215] C3: Determine whether there is a switching instruction.
[0216] If not, execute step C2;
[0217] If yes, execute step C4.
[0218] C4: Determine whether the host number is correct.
[0219] If it is incorrect, execute step C2;
[0220] If correct, go to step C5.
[0221] C5: Open the first device node of the switching host.
[0222] That is, the IIC device node of the first device node of the switching host is opened.
[0223] C6: Organize the interactive messages with the switching host according to the protocol.
[0224] C7: Sending a first monitoring stop signal to the first monitoring subsystem.
[0225] C8: Interact with the switch host.
[0226] C9: Update and save the host number of the switch.
[0227] C10: Send a first monitoring start signal to the first monitoring subsystem.
[0228] The first monitoring start signal can enable the first monitoring subsystem to restart the first monitoring process to monitor the components in the switching host.
[0229] Reference Figure 6 , shows a switching flow chart of the second monitoring switching subsystem provided in an embodiment of the present application. In a feasible implementation manner, the switching process of the second monitoring switching subsystem includes:
[0230] D1: Create a switching process for the second monitoring switching subsystem.
[0231] D2: Waiting for monitoring switching instruction.
[0232] D3: Determine whether there is a monitoring switching instruction.
[0233] If not, execute step D2;
[0234] If yes, execute step D4.
[0235] D4: Determine the target host number.
[0236] The second monitoring subsystem may determine the number of the target host according to the second target number of the host currently monitored by itself; for example, the second target number of the second monitoring subsystem is 1, and the host numbered 0 is used as the number of the target host.
[0237] D5: Open the second device node of the target host.
[0238] That is, the PCIe device node of the second device node of the target host is opened.
[0239] D6: Organize the interactive messages with the target host according to the protocol.
[0240] D7: Send a second monitoring stop signal to the second monitoring subsystem.
[0241] D8: Interact with the target host.
[0242] D9: Send a switching instruction carrying the number of the switching host to the first monitoring switching subsystem.
[0243] D10: Update and save the target host ID.
[0244] D11: Send a second monitoring start signal to the second monitoring subsystem.
[0245] The second monitoring start signal can enable the second monitoring subsystem to restart the second monitoring process to monitor the components in the target host.
[0246] Reference Figure 7 , shows a flow chart of the steps of a monitoring method provided by an embodiment of the present application, wherein the baseboard management controller applied to the server, the baseboard management controller and the first host and the second host in the server are connected with a serial communication bus based connection channel, the baseboard management controller is provided with a first monitoring subsystem, a second monitoring subsystem and a monitoring switching subsystem, and the method comprises:
[0247] S101: The first monitoring subsystem monitors monitoring data of components in the first host based on a connection channel of a serial communication bus.
[0248] S102: The second monitoring subsystem monitors monitoring data of components in the second host based on a connection channel of a high-speed serial computer expansion bus.
[0249] S103: The monitoring switching subsystem switches the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to the monitoring switching instruction.
[0250] When responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host, and establishes a connection channel based on the high-speed serial computer expansion bus with the first host.
[0251] The monitoring system and monitoring method provided in this embodiment can monitor the components of two hosts in a server with dual HOSTs and a single BMC, solve the problem of component monitoring in the scenario of dual HOSTs and a single BMC, avoid the cost problem caused by adding PCIe EP to the BMC, and compared with simply using the MCTP over IIC monitoring method to monitor the components of the two hosts, the system and the method can improve the efficiency of component monitoring.
[0252] The BMC in the server adopts a big-and-small core architecture. The big core is responsible for the monitoring mode of MCTP over PCIe, and the small core is responsible for the monitoring mode of MCTP over IIC. When the host needs to be switched, only the PCIe device nodes and IIC device nodes on the corresponding two hosts need to be changed, which reduces the complexity of software implementation. In addition, since the component monitoring tasks of the two hosts are distributed on the two cores of the BMC, the load of the big core can also be effectively reduced.
[0253] Reference Figure 8 , shows a schematic diagram of a computer device provided in an embodiment of the present application, a computer device comprising: at least one processor 801, and a memory 802, wherein the memory 802 stores a computer program that can be run on the processor 801, wherein the processor 801 executes the monitoring method described in this embodiment when executing the computer program.
[0254] Reference Fig. 9 , shows a schematic diagram of a non-volatile readable storage medium provided in an embodiment of the present application, wherein the non-volatile readable storage medium 900 stores a computer program 901, wherein the computer program executes the monitoring method described in this embodiment when executed by a processor.
[0255] Reference Fig.10 , shows a schematic diagram of a computer program product provided in an embodiment of the present application, wherein the computer program product 1000 includes a computer program / instruction 1001, which implements the monitoring method described in this embodiment when executed by a processor.
Claims
1. A monitoring system, characterized in that: A baseboard management controller is applied to a server, wherein a connection channel based on a serial communication bus is established between the baseboard management controller and a first host and a second host in the server, and the monitoring system comprises: A first monitoring subsystem, used for monitoring monitoring data of components in the first host based on a connection channel of the serial communication bus; A second monitoring subsystem, used for monitoring monitoring data of components in the second host based on a connection channel of a high-speed serial computer expansion bus; A monitoring switching subsystem, used to switch the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to a monitoring switching instruction, wherein when responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host, and establishes a connection channel based on the high-speed serial computer expansion bus with the first host; Among them, when the host monitoring switching is performed, the second monitoring switching subsystem in the monitoring switching subsystem is used to respond to the user's monitoring switching instruction, determine the target host corresponding to the second monitoring subsystem, close the second device node of the current monitoring host corresponding to the second monitoring subsystem, which is used to connect the connection channel based on the high-speed serial computer expansion bus between any host and the baseboard management controller, and open the second device node of the target host; send a second monitoring stop signal to the second monitoring subsystem to enable the second monitoring subsystem to stop the monitoring process of the current monitoring host; send a switching instruction carrying the number of the switching host to the first monitoring switching subsystem in the monitoring switching subsystem, and the number of the switching host is the second target number set by the second monitoring subsystem for the current monitoring host; when the second monitoring subsystem and the target host interact successfully, send a second monitoring start signal to the second monitoring subsystem so that the second monitoring subsystem restarts the second monitoring process to monitor the components in the target host.
2. The monitoring system according to claim 1, characterized in that: The first monitoring subsystem is used for: Create and run a first monitoring process, the first monitoring process comprising: When it is detected that the first host is powered on, a first device node on the first host is turned on, wherein the first device node is used to connect a connection channel based on a serial communication bus between the first host and the baseboard management controller; A first component information list in the first host is obtained, monitoring data of each component in the first component information list is monitored respectively, and the monitoring data is stored in a target location in the baseboard management controller.
3. The monitoring system according to claim 2, characterized in that: In the process of obtaining the first component information list in the first host and respectively monitoring the monitoring data of each component in the first component information list, the first monitoring process is used to: Obtain component information of any component in the first component information list in the first host; Determine whether the component supports the management component transfer protocol; When the component does not support the management component transmission protocol, obtaining a next component in the first component information list in the first host; When the component supports the management component transmission protocol, determining a first monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component; Run the first monitoring sub-thread corresponding to the component to obtain the monitoring data corresponding to the component.
4. The monitoring system according to claim 3, characterized in that: When any component supports the management component transmission protocol, the first monitoring process is further used for: Get the manufacturer information and type information of the component; If the manufacturer information and type information of the component have been stored in the component information library, obtaining the first monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database; If the manufacturer information and type information of the component are not stored in the component information library, the monitoring interface function for monitoring the component is obtained in the preset monitoring interface function library according to the manufacturer information and type information of the component, and the first monitoring sub-thread corresponding to the component is created and stored in the monitoring sub-thread database.
5. The monitoring system according to claim 4, characterized in that: During the running of the first monitoring process, the first monitoring process is further used to monitor the first monitoring stop signal and the first monitoring sub-thread stop signal of any component in real time; When the first monitoring stop signal is monitored, stopping the first monitoring process; When a stop signal of the first monitoring sub-thread of any component is monitored, the first monitoring sub-thread of the component is stopped.
6. The monitoring system according to claim 2, characterized in that: When the first host is detected to be powered on, the first monitoring process is further used to set and store a first target number for the first host currently monitored by the first monitoring subsystem.
7. The monitoring system according to claim 1, characterized in that: The second monitoring subsystem is used for: Create and run a second monitoring process, wherein the second monitoring process includes: When it is detected that the second host is powered on, a second device node on the second host is turned on, wherein the second device node is used to connect a connection channel based on a high-speed serial computer expansion bus between the second host and the baseboard management controller; A second component information list in the second host is obtained, monitoring data of each component in the second component information list is monitored respectively, and the monitoring data is stored in a target location in the baseboard management controller.
8. The monitoring system according to claim 7, characterized in that: In the process of obtaining the second component information list in the second host and respectively monitoring the monitoring data of each component in the second component information list, the second monitoring process is used to: Obtain component information of any component in the second component information list in the second host; Determine whether the component supports the management component transfer protocol; When the component does not support the management component transmission protocol, obtaining a next component from the second component information list in the second host; When the component supports the management component transmission protocol, determining the second monitoring sub-thread corresponding to the component according to the monitoring interface configuration information of the component; Run the second monitoring sub-thread corresponding to the component to obtain the monitoring data corresponding to the component.
9. The monitoring system according to claim 8, characterized in that: When any component supports the management component transmission protocol, the second monitoring process is further used for: Get the manufacturer information and type information of the component; If the manufacturer information and type information of the component have been stored in the component information library, obtaining the second monitoring sub-thread corresponding to the monitoring interface configuration information of the component in the monitoring sub-thread database; If the manufacturer information and type information of the component are not stored in the component information library, the monitoring interface function used to monitor the component is obtained in the preset monitoring interface function library according to the manufacturer information and type information of the component, and a second monitoring sub-thread corresponding to the component is created and stored in the monitoring sub-thread database.
10. The monitoring system according to claim 9, characterized in that: During the running of the second monitoring process, the second monitoring process is further used to monitor the second monitoring stop signal and the second monitoring sub-thread stop signal of any component in real time; When the second monitoring stop signal is monitored, stopping the second monitoring process; When a stop signal of the second monitoring sub-thread of any component is monitored, the second monitoring sub-thread of the component is stopped.
11. The monitoring system according to claim 7, characterized in that: After monitoring that the second host is turned on, the second monitoring process is also used to set and store a second target number for the second host currently monitored by the second monitoring subsystem.
12. The monitoring system according to claim 1, characterized in that: The monitoring switching subsystem includes a first monitoring switching subsystem and a second monitoring switching subsystem; The first monitoring switching subsystem is used to switch the first monitoring subsystem to monitor the monitoring data of the components in the first host or the second host; The second monitoring switching subsystem is used to switch the second monitoring subsystem to monitor the monitoring data of the components in the first host or the second host.
13. The monitoring system according to claim 1, characterized in that: The first monitoring switching subsystem is used for: In response to the switching instruction carrying the number of the switching host sent by the second monitoring switching subsystem, verifying the number of the switching host; When the number of the switching host is not the first target number set by the first monitoring subsystem for its own current monitoring host, closing the first device node of the current monitoring host corresponding to the first monitoring subsystem, and opening the first device node of the switching host, the first device node being used to connect a connection channel based on a serial communication bus between any host and the baseboard management controller; Sending a first monitoring stop signal to the first monitoring subsystem, wherein the first monitoring subsystem is used to stop the monitoring process of the current monitoring host in response to the first monitoring stop signal; When the first monitoring subsystem interacts with the switching host successfully, a first monitoring start signal is sent to the first monitoring subsystem, so that the first monitoring subsystem restarts the first monitoring process to monitor the components in the switching host.
14. The monitoring system according to any one of claims 1 to 13, characterized in that: The first monitoring subsystem is arranged on the first core of the baseboard management controller; The second monitoring subsystem is arranged on the second core of the baseboard management controller; After obtaining monitoring data of any component in the first host through monitoring, the first monitoring subsystem sends the monitoring data to the second core of the baseboard management controller.
15. A monitoring method, characterized in that: A baseboard management controller is applied to a server, wherein a connection channel based on a serial communication bus is established between the baseboard management controller and a first host and a second host in the server, and a first monitoring subsystem, a second monitoring subsystem and a monitoring switching subsystem are arranged on the baseboard management controller, and the method comprises: The first monitoring subsystem monitors monitoring data of components in the first host based on a connection channel of the serial communication bus; The second monitoring subsystem monitors the monitoring data of the components in the second host based on the connection channel of the high-speed serial computer expansion bus; The monitoring switching subsystem switches the monitoring hosts of the first monitoring subsystem and the second monitoring subsystem in response to the monitoring switching instruction; Wherein, when responding to the monitoring switching instruction, the baseboard management controller disconnects the connection channel based on the high-speed serial computer expansion bus with the second host, and establishes a connection channel based on the high-speed serial computer expansion bus with the first host; Among them, when the host monitoring switching is performed, the second monitoring switching subsystem in the monitoring switching subsystem is used to respond to the user's monitoring switching instruction, determine the target host corresponding to the second monitoring subsystem, close the second device node of the current monitoring host corresponding to the second monitoring subsystem, which is used to connect the connection channel based on the high-speed serial computer expansion bus between any host and the baseboard management controller, and open the second device node of the target host; send a second monitoring stop signal to the second monitoring subsystem to enable the second monitoring subsystem to stop the monitoring process of the current monitoring host; send a switching instruction carrying the number of the switching host to the first monitoring switching subsystem in the monitoring switching subsystem, and the number of the switching host is the second target number set by the second monitoring subsystem for the current monitoring host; when the second monitoring subsystem and the target host interact successfully, send a second monitoring start signal to the second monitoring subsystem so that the second monitoring subsystem restarts the second monitoring process to monitor the components in the target host.
16. A server, characterized in that: The server comprises a baseboard management controller, a first host and a second host, and the baseboard management controller comprises the monitoring system according to any one of claims 1 to 14.
17. A computer device, characterized in that: include: At least one processor, and a memory storing a computer program executable on the processor, wherein the processor executes the monitoring method of claim 15 when executing the computer program.
18. A non-volatile readable storage medium, characterized in that: The non-volatile readable storage medium stores a computer program, wherein the computer program performs the monitoring method of claim 15 when executed by a processor.
19. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the monitoring method of claim 15 is implemented.
