A server control method, system and storage medium
By establishing connections between management controllers, the transmission of interface images and operation data is realized, which solves the inconvenience of multi-server operation and improves user convenience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
- Filing Date
- 2026-02-28
- Publication Date
- 2026-07-31
AI Technical Summary
In existing technologies, the management controller manages the server in a one-to-one mode, which means that users need to operate multiple servers through different management controllers, causing inconvenience.
By connecting the first management controller and the second management controller, the transmission and processing of interface images and operation data are realized, enabling users to flexibly operate multiple servers within the same management controller.
It improves user convenience, allowing users to view and operate multiple server interfaces simultaneously within the same management controller, and perform remote control.
Smart Images

Figure CN122489463A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of server control, and in particular to a server control method, system, and storage medium. Background Technology
[0002] In related technologies, the management controller manages the servers in a one-to-one manner. When a user needs to operate multiple servers, they must do so through different management controllers. Summary of the Invention
[0003] The purpose of this invention is to provide a server control method, system, and storage medium that can solve the technical problem of how to flexibly operate multiple servers.
[0004] To address the aforementioned technical problems, this invention provides a server control method applied to a first management controller, which is configured on a first server. The first management controller is connected to a second management controller, which is configured on a second server. The method includes: When switching to operate the first server, the system acquires the first interface image sent by the first server and outputs the first interface image to the display device, and receives the first operation data input and sends the first operation data to the first server to operate the first server. When switching to operate the second server, the system receives the second interface image of the second server sent by the second management controller and outputs the second interface image to the display device. It also receives the input second operation data and sends the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server.
[0005] The present invention also provides a server control system, including a first management controller and a second management controller, wherein the first management controller is connected to the second management controller, the first management controller is disposed on a first server, and the second management controller is disposed on a second server; A first management controller is configured to, when switching to operate a first server, acquire a first interface image sent by the first server and output the first interface image to a display device, and receive input first operation data and send the first operation data to the first server to operate the first server; when switching to operate a second server, receive a second interface image of the second server sent by a second management controller and output the second interface image to a display device, and receive input second operation data and send the second operation data to a second management controller, so that the second management controller sends the second operation data to the second server to operate the second server. The second management controller is used to send the second interface image of the second server to the first management controller; receive the second operation data sent by the first management controller, and send the second operation data to the second server.
[0006] The present invention also provides a non-volatile computer-readable storage medium storing computer-executable instructions, which, when loaded and executed by a processor, implement the above-described server control method.
[0007] This invention provides a server control method applied to a first management controller, which is configured on a first server and connected to a second management controller, which is configured on a second server. The method includes: when switching to operate the first server, acquiring a first interface image sent by the first server and outputting the first interface image to a display device, and receiving input first operation data and sending the first operation data to the first server to operate the first server; when switching to operate the second server, receiving a second interface image of the second server sent by the second management controller and outputting the second interface image to a display device, and receiving input second operation data and sending the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server.
[0008] The beneficial effects of this invention are as follows: In this invention, a first management controller is disposed on a first server, and a second management controller is disposed on a second server, and the first management controller can be connected to the second management controller. When the first management controller switches to operate the first server, it can acquire a first interface image sent by the first server and output the first interface image to a display device, and can also receive input first operation data and send the first operation data to the first server to operate the first server. Furthermore, when the first management controller switches to operate the second server, it can receive a second interface image of the second server sent by the second management controller and output the second interface image to a display device, and can also receive input second operation data and send the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server. Thus, the first management controller can display the operation interface of its own first server and operate the first server, and can also display the operation interface of the remote second server and operate the second server. Users can flexibly operate different servers through the first management controller, thereby improving user convenience.
[0009] The present invention also provides a server control system and a non-volatile computer-readable storage medium, which have the above-mentioned beneficial effects. Attached Figure Description
[0010] To more clearly illustrate the technical solutions in the embodiments of the present invention 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 embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0011] Figure 1 A structural block diagram of a server control system provided in an embodiment of the present invention; Figure 2 A flowchart of a server control method provided in an embodiment of the present invention; Figure 3 A flowchart illustrating the operation of one's own server via Web KVM, provided in an embodiment of the present invention; Figure 4 A flowchart illustrating the operation of a remote server via Web KVM provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of another server control system provided in an embodiment of the present invention; Figure 6 An internal structure diagram of a management controller provided in an embodiment of the present invention; Figure 7 This is a structural block diagram of a management controller provided in an embodiment of the present invention. Detailed Implementation
[0012] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0013] The management controller is a crucial component of a server, with a common type being the Baseboard Management Controller (BMC). In related technologies, the management controller manages the server in a one-to-one manner. For example, the server and management controller enable KVM functionality (Keyboard, Video, Mouse), and the user connects a monitor, keyboard, and mouse to the management controller to operate the server. However, this management method becomes inconvenient when a user needs to operate multiple servers, requiring them to connect monitors, keyboards, and mice to different management controllers.
[0014] In view of this, the present invention provides a server control method for addressing the technical problem of how to flexibly operate multiple servers through a single management controller, thereby improving user convenience.
[0015] For easier understanding, please refer to the following: Figure 1 , Figure 1 This is a structural block diagram of a server control system provided in an embodiment of the present invention. The system may include a first management controller and a second management controller. The first management controller is located on a first server, and the second management controller is located on a second server. The first and second management controllers are connected, for example, via a network connection or other wired connection. The first and second management controllers have the same functions. Furthermore, to achieve the effect of flexibly operating multiple servers within the same management controller, both the first and second management controllers have the function of sending the interface image of their respective servers to each other, and sending operation data (such as keyboard operation data and mouse operation data) to each other. For example, when a user uses the first management controller, the second management controller can send the interface image of the second server to the first management controller, and the first management controller can output and display the interface image. At this time, the user can view the operation interface of the second server. In addition, the first management controller can receive input operation data, such as keyboard operation data and mouse operation data, and send this operation data to the second management controller. The second management controller can input this operation data into the second server. At this time, the user can remotely operate the second server. For specific transmission methods of interface images and operation data, please refer to the description of subsequent embodiments.
[0016] It should also be noted that this system does not limit the number of management controllers; the number can be two or more. When more management controllers are configured, these management controllers should be connected to at least the same management controller. For example, when there are a first management controller, a second management controller, and a third management controller, the second and third management controllers are both connected to the first management controller. In this way, users can operate all servers from at least the first management controller. Of course, these management controllers can also be interconnected; for example, the first management controller can be connected to the second and third management controllers, and the second management controller can be connected to the third management controller. In this way, users can operate all servers from any management controller.
[0017] Based on the above structural description, the server control method provided by this invention will be introduced below based on the first management controller. Please refer to... Figure 2 , Figure 2 A flowchart of a server control method provided in an embodiment of the present invention is shown. The method is applied to a first management controller, which is located on a first server. The first management controller is connected to a second management controller, which is located on a second server. The method may include: S10. When switching to operate the first server, acquire the first interface image sent by the first server and output the first interface image to the display device, and receive the input first operation data and send the first operation data to the first server to operate the first server.
[0018] In this embodiment, when the first management controller switches to operating the first server, it can first obtain the first interface image sent by the first server and output the first interface image to the display device.
[0019] The first interface image contains the operation interface of the first server, through which the user operates and controls the first server. The first interface image is generated by the first server and sent to the first management controller. For example, the first management controller may include a VGA module (Video Graphic Array) and video memory, with the VGA module connected to the video memory. The first server can write the first interface image into the video memory of the first management controller through the VGA module. The first management controller can retrieve the first interface image from the video memory and output the image to a connected display device.
[0020] It should be noted that the first management controller can display the first interface image in two ways: 1. The first management controller directly outputs the first interface image through the aforementioned VGA module. At this time, the first management controller can directly output the original first interface image in RGB format.
[0021] 2. Configure the server (KVM Server) and the corresponding client (KVMClient) on the first management controller, connect the client and the server through the network, control the server to send the first interface image to the client, and control the client to output the first interface image to the display device.
[0022] In the second approach, considering the large size of the first interface image in RGB format, to improve network transmission efficiency, the server can be controlled to call the image compression module to compress the first interface image, for example, compressing it into a JPEG image, and then sending the compressed image to the client. Subsequently, the client can be controlled to decompress the compressed image to obtain the restored first interface image, and then output and display the first interface image.
[0023] In the second method, to ensure that the client has enough image data to display, the server can transmit the compressed image only after it has obtained a sufficient amount of compressed image (such as 5 frames of JPEG image).
[0024] Furthermore, when the first management controller switches to operate the first server, it can also receive input first operation data and send the first operation data to the first server to operate the first server. This first operation data may include keyboard operation data and mouse operation data.
[0025] It should be noted that the first management controller can also receive and send the first operation data in two ways: 1. Receive the first operation data using the traditional KVM method and send the first operation data to the first server.
[0026] 2. The control client receives the first operation data and sends it to the server via the network. The control server then sends the first operation data to the first server via a peripheral driver (such as a USB driver) and a peripheral controller (such as a USB device controller, UDC, or USBDevice Controller).
[0027] Based on this, the method may also include: S111. Start the first server on the local machine, create the first client corresponding to the local machine, and control the connection between the first client and the first server.
[0028] In this step, the first server refers to the server in the first management controller. The first client refers to the client created in the first management controller that corresponds to the first management controller.
[0029] Accordingly, acquiring the first interface image sent by the first server and outputting the first interface image to the display device may include: S121. Control the first server to call the image compression module to compress the first interface image in the video memory to obtain a compressed image, and send the compressed image to the first client.
[0030] S122. Control the first client to decompress the compressed image to obtain the first interface image, and output the first interface image to the display device.
[0031] Accordingly, receiving the input first operation data and sending the first operation data to the first server includes: S131. Control the first client to receive the first operation data and send the first operation data to the first server.
[0032] S132, Control the first server to send the first operation data to the first server through the peripheral driver and peripheral controller.
[0033] Furthermore, the first server can also realize remote data transmission. For example, a user can create a third client in the second management controller and connect the third client to the first server. At this time, the first server can send the first interface image to the third client to display the operation interface of the first server in the second management controller, and at the same time, it can also receive the third operation data sent by the third client and send the third operation data to the first server to remotely control the first server in the second management controller.
[0034] Based on this, the method also includes: S141. Control the connection between the first server and the third client in the second management controller.
[0035] S142. Control the first server to send the compressed image to the third client, so that the third client decompresses the compressed image into a first interface image and outputs the first interface image to the display device connected to the second management controller.
[0036] S143. Control the first server to receive the third operation data sent by the third client, and send the third operation data to the first server through the peripheral driver and peripheral controller.
[0037] It should be noted that since the first server may need to transmit compressed images to multiple clients, this could place a significant network load on the first management controller. To address this, the first server can detect the load pressure on the first management controller (such as network load pressure) and adjust the image compression parameters of the image compression module accordingly. For example, when the network load pressure is high, the image compression parameters can be lowered to reduce the image quality of the compressed image, while when the network load pressure is low, the image compression parameters can be increased to improve the image quality of the compressed image. This effectively balances the load pressure on the first management controller.
[0038] Based on this, the method may also include: S151. Control the first server to adjust the image compression parameters of the image compression module according to its own load pressure, so as to reduce or improve the image quality of the compressed image.
[0039] S20. When switching to operate the second server, receive the second interface image of the second server sent by the second management controller, and output the second interface image to the display device, and receive the input second operation data, and send the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server.
[0040] In this embodiment, when the first management controller switches to operate the second server, it can receive and display the second interface image of the second server through the second management controller. It can also receive second operation data and send it to the second management controller, which in turn sends the second operation data to the second server to operate the second server. This allows for remote operation of the second server from within the first management controller.
[0041] As can be seen, since the first management controller can operate and control its own server as well as remotely operate and control other servers, it can achieve the effect of operating and controlling multiple servers in the same management controller, thereby improving the user's convenience.
[0042] The following section describes the transmission method of the second operation data and the second interface image.
[0043] For the second operation data, this embodiment will implement it through a server and a client. Specifically, a second client corresponding to the second management controller can be created in the first management controller, and the second client can be controlled to establish a network connection with the second server in the second management controller. Subsequently, the second client can be controlled to receive the input second operation data and send the second operation data to the second server, so that the second server can send the second operation data to the second server.
[0044] Based on this, the method may also include: S211. Create a second client corresponding to the second management controller, and control the connection between the second client and the second server in the second management controller; Accordingly, receiving the input second operation data and sending the second operation data to the second management controller may include: S221. Control the second client to receive the input second operation data and send the second operation data to the second server.
[0045] For the second interface image, this embodiment can provide two transmission methods: 1. Control the first client in the first management controller to receive the second interface image sent by the second server in the second management controller, and display the second interface image.
[0046] In this approach, considering the large size of the original second interface image, the second server can compress the second interface image to obtain a compressed image, and then send the compressed image to the first client. The first client can decompress the compressed image, restore the second interface image, and output and display the second interface image.
[0047] Based on this, receiving the second interface image from the second server sent by the second management controller and outputting the second interface image to the display device may include: S231. Control the second client to receive the compressed image sent by the second server, decompress the compressed image into a second interface image, and output and display the second interface image.
[0048] 2. The original second interface image is retrieved from the video memory of the second management controller and written to the video memory of the first management controller via remote memory direct access. Then, the first management controller retrieves the second interface image from the video memory and outputs and displays it.
[0049] In this approach, a direct remote memory access connection must first be established between the first and second management controllers. Subsequently, video memory data is transferred based on this connection, thereby sending the original RGB format second interface image from the video memory of the second management controller to the video memory of the first management controller.
[0050] Based on this, the method may also include: S241. Establish a remote direct memory access connection with the second management controller; Accordingly, receiving the second interface image from the second server sent by the second management controller, and outputting the second interface image to the display device, includes: S251. Receive the second interface image sent from the video memory of the second management controller via a remote memory direct access connection, and write the second interface image into the video memory. S252. Obtain the second interface image from the video memory and output the second interface image to the display device.
[0051] It should also be noted that for the second method of transmitting the second interface image, since only one monitor is usually connected to the first management controller, and the first management controller only displays the interface image of one server at a time, it is necessary to add relevant hardware modules inside the first management controller to realize the switching of different server interfaces.
[0052] Specifically, the first management controller may include video memory, a first display module, a second display module, and a multiplexer. The first display module and the second display module are connected to the video memory, and the multiplexer is connected to the first display module and the second display module.
[0053] Both the first display module and the second display module function as VGA modules, but the difference between them is that the first display module is responsible for outputting the display to the first server's display interface, while the second display module is responsible for outputting the display to the second server's display interface.
[0054] The multiplexer is responsible for switching the display interface, and it can be controlled by switching commands. When the switching command indicates switching to the first server, the multiplexer enables the output path corresponding to the first display module, allowing the first display module to output and display the first interface image in its video memory. When the switching command indicates switching to the second server, the multiplexer enables the output path corresponding to the second display module, allowing the second display module to output and display the second interface image in its video memory. Switching commands can be input in various ways, such as by adding a hardware switch for inputting the switching command, or by inputting it via software.
[0055] Based on this, the method may include: S261, Receive switching command; S262. When the switching instruction indicates switching to the first server, the control multiplexer enables the output path of the first display module, and the first display interface in the video memory is output to the display device through the first display module. S263. When the switching instruction indicates switching to the first server, the control multiplexer enables the output path of the second display module, and the second display interface in the video memory is output to the display device through the second display module.
[0056] Furthermore, this embodiment provides two methods for switching between different servers in the first management controller: 1. When the server's interface image is displayed through the client, control windows corresponding to each server can be created via the client. When a control window is activated, the system switches to the server corresponding to that window. For example, a first window can be created corresponding to the first server, and a second window can be created corresponding to the second server. When the user clicks to use the first window, the first management controller switches to operate the first server. When the user clicks to use the second window, the first management controller switches to operate the second server.
[0057] 2. When the server's interface image is transmitted via remote direct memory access and output using different VGA modules, different servers can be switched using a switching command. For example, when the switching command indicates a switch to the first server, the first management controller switches to operating the first server. When the switching command indicates a switch to the second server, the first management controller switches to operating the second server.
[0058] Based on the above embodiments, in this invention, a first management controller is located on a first server, and a second management controller is located on a second server, and the first management controller can be connected to the second management controller. When the first management controller switches to operate the first server, it can acquire a first interface image sent by the first server and output the first interface image to a display device, and it can also receive input first operation data and send the first operation data to the first server to operate the first server. Furthermore, when the first management controller switches to operate the second server, it can receive a second interface image of the second server sent by the second management controller and output the second interface image to a display device, and it can also receive input second operation data and send the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server. In this way, the first management controller can display the operation interface of its own first server and operate the first server, and it can also display the operation interface of the remote second server and operate the second server. Users can flexibly operate different servers through the first management controller, thereby improving user convenience.
[0059] Based on the above embodiments, to enhance security, data between the first management controller and the second management controller can also be transmitted in encrypted form. Therefore, receiving the second interface image from the second server sent by the second management controller and outputting the second interface image to the display device may include: S31. Receive the encrypted interface image sent by the second management controller; S32. Decrypt the encrypted interface image to obtain the second interface image, and output the second interface image to the display device.
[0060] In steps S31 and S32, the second management controller can send the second interface image to the first management controller in encrypted form. The first management controller can decrypt the encrypted interface image to obtain the second interface image and output and display it.
[0061] Sending the second operation data to the second management controller includes: S41. Encrypt the second operation data to obtain encrypted operation data; S42. Send the encrypted operation data to the second management controller.
[0062] In steps S31 and S32, the first management controller can send the second operation data to the second management controller in encrypted form. The second management controller can decrypt the encrypted operation data to obtain the second operation data, and then input the second operation data to the second server.
[0063] It should be noted that this embodiment does not limit how the interface images and operation data are encrypted; the encryption can be set according to the actual application requirements.
[0064] The following is a complete description of the above server operation methods based on specific diagrams.
[0065] This invention relates to two scenarios: Web KVM display and monitor display. Web KVM display involves only software implementation, while monitor display involves both software and hardware implementation.
[0066] 1. Web KVM display scenario: Please refer to Figure 3 , Figure 3 This is a flowchart illustrating how to operate one's own server via Web KVM, as provided in an embodiment of the present invention. Figure 3 In the diagram, 1 to 8 represent steps 1 to 8. The complete process design is as follows: 1) The host accesses the VGA module via a PCIe link (or other links; this invention uses PCIe as an example) and writes data to the VGA video memory (corresponding to...). Figure 3 Steps 1 and 2 in the text).
[0067] 2) The KVM Server acts as the server for the Web KVM Client. When there is no connection between the Web KVM Client and the KVM Server, the KVM Server waits for the Web KVM Client to connect. The Web KVM Client connects to the KVM Server when the user uses Web KVM functionality.
[0068] 3) After the Web KVM Client and KVM Server connect, the KVM Server, acting as the upper-layer application of the JPEG module, compresses a frame of data in the VGA video memory into JPEG data (corresponding to...). Figure 3 Steps 3 and 4 in the text).
[0069] 4) After the KVM Server obtains multiple frames (e.g., 5 frames) of JPEG data, it transmits the multi-frame JPEG data to the Web KVM (i.e., Web KVM) over the network. Figure 3 Web KVM Client (corresponding) Figure 3 (5 steps in the process).
[0070] 5) After receiving the JPEG data, the Web KVM Client converts the JPEG data into RGB data and displays it on the Web KVM at a certain frame rate (e.g., 30fps) for the user to view.
[0071] 6) After a user moves the mouse or presses a key on the KVM interface, KVM needs to transmit the input information back to the BMC KVMServer (corresponding to...). Figure 3 (The 6 steps in the process).
[0072] 7) The KVM Server transmits keyboard and mouse input information back to the Host via the USB driver and USB Device Controller (UDC). The Host receives the input information and processes it (corresponding to...). Figure 3 Steps 7 and 8 in the text.
[0073] The above describes the process of displaying VGA video memory data on a single server's BMC KVM. To allow VGA video memory data from two servers to be displayed on the BMC web interface on one server, the VGA video memory data from one server needs to be compressed into a JPEG image using the JPEG module and transmitted over the network to the BMC web interface on the other server. The BMC web interface on the other server is responsible for converting the JPEG image to RGB data and displaying it on the web KVM at a specific frame rate. For additional interactive steps, please refer to [link / reference]. Figure 4 , Figure 4 This is a flowchart illustrating the operation of a remote server via Web KVM, as provided in an embodiment of the present invention. Figure 4 The numbers 9 and 10 in the text represent additional steps 9 and 10.
[0074] The specific process is described below: 1) The two servers access their respective VGA modules via a PCIE link (or other links; this invention uses PCIe as an example) and write data to the VGA video memory.
[0075] 2) After a KVM Client (KVM Client 1) on server A connects to the KVM Server on server A, the KVM Server on server A acts as the upper-layer application of the JPEG module, compressing a frame of data in the VGA video memory into jpeg data (corresponding to...) through the JPEG module. Figure 3 Steps 3 and 4 in the text).
[0076] 3) After the KVM Server of Server A obtains multiple frames (e.g., 5 frames) of JPEG data, it can encrypt the JPEG data to ensure data security.
[0077] 4) Transmit multiple frames of JPEG data over the network to Web KVM (i.e., Figure 3 Web KVM Client (corresponding) Figure 3 (5 steps in the process).
[0078] 5) After receiving the JPEG data, KVM Client 1 of Server A decrypts the data, converts the JPEG data into RGB data, and displays it on Web KVM at a certain frame rate (e.g., 30fps) for users to view.
[0079] 6) The user clicks "Create New KVM" on the BMC Web, enters the IP address of another server (Server B), enters the username and password. After the username and password are verified, Server A's BMC creates KVM Client 2 to connect to Server B's KVM Server.
[0080] 7) After KVM Client 2 on server A connects to KVM Server on server B, KVM Server on server B acts as the upper-layer application of the JPEG module, compressing a frame of data in the VGA video memory into JPEG data (corresponding to...). Figure 3 Steps 3 and 4 in the text).
[0081] 8) After obtaining multiple frames (e.g., 5 frames) of JPEG data, the KVM Server of Server B can encrypt the JPEG data and transmit the multiple frames of JPEG data over the network to the KVM Client 2 of Server A (i.e., Figure 4 Step 9 in the process.
[0082] 9) After receiving the JPEG data, KVM Client 2 of Server A decrypts the data, converts the JPEG data into RGB data, and displays it on Web KVM at a certain frame rate (e.g., 30fps) for users to view.
[0083] 10) After the user moves the mouse and presses the keyboard in the KVM interface, KVM Client 2 needs to transmit the input information back to the KVM Server on server B (i.e., Figure 4 Step 10 in the process.
[0084] 11) After the user finishes using the service, close the KVM Client 2 display screen on server A, and shut down KVM Client 2 on server A's BMC.
[0085] For a better understanding of the complete forms of BMC1 and BMC2, please refer to [link / reference]. Figure 5 , Figure 5 This is a schematic diagram of another server control system provided in an embodiment of the present invention.
[0086] 2. External monitor display: To display VGA video memory data from multiple servers on an external monitor, a display module needs to be added to the BMC itself (functionally identical to the VGA module, but called a display module to distinguish it). The two BMCs are connected via a network. The software in BMC2 transfers data from its video memory to BMC1, and the software in BMC1 writes the video memory data from BMC2 into the video memory of its own display module. In this scenario, the actual display frame rate of the display module is affected by network conditions. However, considering that the two servers in this scenario are typically on the same local area network, network bandwidth generally does not affect the actual frame rate.
[0087] The BMC1 has two memory modules: VGA memory and display memory. To determine which memory module's data is displayed on the monitor, a switch needs to be added to the BMC to toggle the two display paths. In this invention, this switch can be a VGA signal switcher, a DVI signal switcher, or an HDMI signal switcher, etc., without limitation to any specific interface switch.
[0088] Please refer to Figure 6 , Figure 6 This is a diagram illustrating the internal structure of a management controller according to an embodiment of the present invention. The specific implementation steps are as follows: 1) The host of BMC1 displays the image on the monitor via VGA. At this time, all you need to do is connect BMC1 to the monitor.
[0089] 2) The BMC2's VGA writes image data into the video memory.
[0090] 3) After the BMC2 software starts, it waits for other BMCs to connect, which in this invention is done through a network connection.
[0091] 4) Users need to set the BMC IP to be connected to in BMC1 (i.e., the IP of BMC2). This can be done through the BMC WEB page. After setting it, BMC1 should save the BMC IP to be connected.
[0092] 5) The user triggers the display to switch via a button. After the BMC1 software recognizes the need to switch the display, it connects with BMC2 via the network.
[0093] 6) BMC2 sends the data in its own video memory to BMC1.
[0094] 7) After receiving the video memory data sent by BMC2, BMC1 writes the video memory data into the display video memory.
[0095] 8) BMC1 controls the switching switch (i.e. Figure 6 In the MUX module, switch to the display module to output data to the monitor.
[0096] 9) When the user presses the button again, the BMC1 controls the switch to switch to BMC1 VGA output data to the monitor. The display will switch every time the button is pressed.
[0097] The beneficial effects of this invention are: 1) The WEB KVM display implementation of the present invention realizes multi-screen display of WEB KVM by transmitting data over the network, which can save time, manpower and material resources while ensuring security.
[0098] 2) The external display implementation of the present invention is convenient for operation and maintenance personnel. It can display any server image without wiring, which is convenient and quick, while saving time, manpower and material resources.
[0099] The server control system, management controller, computer-readable storage medium, and computer program product provided in the embodiments of the present invention are described below. The server control system, management controller, computer-readable storage medium, and computer program product described below can be referred to in correspondence with the server control method described above.
[0100] Please refer to Figure 1 , Figure 1This invention provides a structural block diagram of a server control system. The system may include: a first management controller and a second management controller, the first management controller being connected to the second management controller, the first management controller being disposed on a first server, and the second management controller being disposed on a second server. A first management controller is configured to, when switching to operate a first server, acquire a first interface image sent by the first server and output the first interface image to a display device, and receive input first operation data and send the first operation data to the first server to operate the first server; when switching to operate a second server, receive a second interface image of the second server sent by a second management controller and output the second interface image to a display device, and receive input second operation data and send the second operation data to a second management controller, so that the second management controller sends the second operation data to the second server to operate the second server. The second management controller is used to send the second interface image of the second server to the first management controller; receive the second operation data sent by the first management controller, and send the second operation data to the second server.
[0101] Optionally, the first management controller can also be used for: Start the first server on the local machine, create the first client corresponding to the local machine, and control the connection between the first client and the first server; The first server calls the image compression module to compress the first interface image in the video memory to obtain a compressed image, and then sends the compressed image to the first client. The first client is controlled to decompress the compressed image to obtain the first interface image, and the first interface image is output to the display device; Control the first client to receive the first operation data and send the first operation data to the first server; The control unit sends the first operation data to the first server through the peripheral driver and peripheral controller.
[0102] Optionally, the first management controller can also be used for: Controls the connection between the first server and the third client in the second management controller; The first server controls the sending of the compressed image to the third client, so that the third client decompresses the compressed image into a first interface image and outputs the first interface image to a display device connected to the second management controller; The control unit receives the third operation data sent by the third client and sends the third operation data to the first server through the peripheral driver and peripheral controller.
[0103] The second management controller can also be used for: Control the connection between the third client and the first server in the first management controller; The third client receives the compressed image sent by the first server, decompresses the compressed image into a first interface image, and outputs the first interface image to a display device connected to the second management controller. The third client receives the input third operation data and sends the third operation data to the first server.
[0104] Optionally, the first management controller can also be used for: Based on its own load pressure, the image compression module adjusts the image compression parameters to reduce or improve the image quality of the compressed image.
[0105] Optionally, the first management controller can also be used for: Receive the encrypted interface image sent by the second management controller; The encrypted interface image is decrypted to obtain the second interface image, and the second interface image is output to the display device; The second operation data is encrypted to obtain encrypted operation data; The encrypted operation data is sent to the second management controller.
[0106] The second management controller can also be used for: The second interface image is encrypted to obtain an encrypted interface image, and the encrypted interface image is sent to the first management controller; Receive encrypted operation data and decrypt it to obtain the second operation data.
[0107] Optionally, the first management controller can also be used for: Create a second client corresponding to the second management controller, and control the connection between the second client and the second server in the second management controller; Receiving input second operation data and sending the second operation data to the second management controller includes: The second client is controlled to receive the input second operation data and send the second operation data to the second server.
[0108] The second management controller can also be used for: The second server receives the second operation data sent by the second client and sends the second operation data to the second server.
[0109] Optionally, the first management controller can also be used for: The system controls the second client to receive the compressed image sent by the second server, decompress the compressed image into a second interface image, and output and display the second interface image. The second management controller can also be used for: The second server is controlled to compress the second interface image into a compressed image and send the compressed image to the second client.
[0110] Optionally, the first management controller can also be used for: Establish a remote direct memory access connection with the second management controller; Receiving the second interface image from the second server sent by the second management controller, and outputting the second interface image to the display device, including: The system receives the second interface image sent from the video memory of the second management controller via a remote memory direct access connection, and writes the second interface image into the video memory. The second interface image is retrieved from the video memory and output to the display device. The second management controller can also be used for: The second interface image is extracted from the video memory of the second management controller and sent to the video memory of the first management controller.
[0111] Optionally, a first management controller includes video memory, a first display module, a second display module, and a multiplexer. The first display module and the second display module are connected to the video memory, and the multiplexer is connected to the first display module and the second display module. The first management controller can also be used for: Receive switching instructions; When the switching instruction indicates switching to the first server, the control multiplexer enables the output path of the first display module, and the first display interface in the video memory is output to the display device through the first display module. When the switching instruction indicates switching to the first server, the control multiplexer enables the output path of the second display module, and the second display interface in the video memory is output to the display device through the second display module.
[0112] Please refer to Figure 7 , Figure 7 This is a structural block diagram of a management controller provided in an embodiment of the present invention. The embodiment of the present invention provides a management controller 70, including a processor 71 and a memory 72; wherein, the memory 72 is used to store a computer program; the processor 71 is used to execute the server control method provided in the foregoing embodiment when executing the computer program.
[0113] For details regarding the specific process of the above server control method, please refer to the relevant content provided in the foregoing embodiments, which will not be repeated here.
[0114] Furthermore, the memory 72, as a carrier for resource storage, can be a read-only memory, random access memory, disk, or optical disk, and the storage method can be temporary storage or permanent storage.
[0115] In addition, the management controller 70 also includes a power supply 73, a communication interface 74, an input / output interface 75, and a communication bus 76; wherein, the power supply 73 is used to provide operating voltage for each hardware device on the management controller 70; the communication interface 74 can create a data transmission channel between the management controller 70 and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this invention, and is not specifically limited here; the input / output interface 75 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.
[0116] This invention also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the server control method described in the above embodiments.
[0117] Since the embodiments of the computer program product portion correspond to the embodiments of the server control method portion, please refer to the description of the embodiments of the server control method portion for the embodiments of the computer program product portion, and will not be repeated here.
[0118] This invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the server control method described in the above embodiments.
[0119] Since the embodiments of the computer-readable storage medium portion correspond to the embodiments of the server control method portion, the embodiments of the storage medium portion are described in the description of the embodiments of the server control method portion, and will not be repeated here.
[0120] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section.
[0121] Those skilled in the art will further 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, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. 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 implementations should not be considered beyond the scope of this invention.
[0122] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0123] The above provides a detailed description of the server control method, system, and storage medium provided by this invention. Specific examples have been used to illustrate the principles and implementation methods of this invention. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this invention. It should be noted that those skilled in the art can make various improvements and modifications to this invention without departing from its principles, and these improvements and modifications also fall within the protection scope of this invention.
Claims
1. A server control method characterized by comprising: The method, applied to a first management controller located on a first server, and connected to a second management controller located on a second server, includes: When switching to operate the first server, the system acquires the first interface image sent by the first server and outputs the first interface image to the display device, and receives the first operation data input and sends the first operation data to the first server to operate the first server. When switching to operate the second server, the system receives the second interface image of the second server sent by the second management controller and outputs the second interface image to the display device. It also receives the input second operation data and sends the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server.
2. The server control method according to claim 1, characterized by, Also includes: Start the first server on the local machine, create the first client corresponding to the local machine, and control the connection between the first client and the first server; The step of acquiring the first interface image sent by the first server and outputting the first interface image to a display device includes: The first server is controlled to call the image compression module to compress the first interface image in the video memory to obtain a compressed image, and then the compressed image is sent to the first client. The first client is controlled to decompress the compressed image to obtain the first interface image, and the first interface image is output to the display device; The step of receiving input first operation data and sending the first operation data to the first server includes: The system controls the first client to receive the first operation data and send the first operation data to the first server. The first server is controlled to send the first operation data to the first server through the peripheral driver and peripheral controller.
3. The server control method according to claim 2, characterized in that, Also includes: Control the connection between the first server and the third client in the second management controller; The first server is controlled to send the compressed image to the third client, so that the third client decompresses the compressed image into the first interface image and outputs the first interface image to the display device connected to the second management controller; The system controls the first server to receive the third operation data sent by the third client, and sends the third operation data to the first server through the peripheral driver and peripheral controller.
4. The server control method according to claim 1, characterized in that, The step of receiving the second interface image of the second server sent by the second management controller and outputting the second interface image to a display device includes: Receive the encrypted interface image sent by the second management controller; The encrypted interface image is decrypted to obtain the second interface image, and the second interface image is output to the display device. Sending the second operation data to the second management controller includes: The second operation data is encrypted to obtain encrypted operation data; The encrypted operation data is sent to the second management controller.
5. The server control method according to any one of claims 1 to 4, characterized in that, Also includes: Create a second client corresponding to the second management controller, and control the connection between the second client and the second server in the second management controller; The step of receiving the second operation data input and sending the second operation data to the second management controller includes: The second client is controlled to receive the input second operation data and send the second operation data to the second server.
6. The server control method according to claim 5, characterized in that, The step of receiving the second interface image of the second server sent by the second management controller and outputting the second interface image to a display device includes: The second client is controlled to receive the compressed image sent by the second server, decompress the compressed image into the second interface image, and output and display the second interface image.
7. The server control method according to claim 5, characterized in that, Also includes: Establish a remote direct memory access connection with the second management controller; The step of receiving the second interface image of the second server sent by the second management controller and outputting the second interface image to a display device includes: The system receives a second interface image sent from the video memory of the second management controller via the remote memory direct access connection, and writes the second interface image into the video memory. The second interface image is obtained from the video memory and output to the display device.
8. The server control method according to claim 7, characterized in that, The first management controller includes video memory, a first display module, a second display module, and a multiplexer. The first display module and the second display module are connected to the video memory, and the multiplexer is connected to the first display module and the second display module. The method further includes: Receive switching instructions; When the switching instruction indicates a switch to the first server, the multiplexer is controlled to enable the output path of the first display module, and the first display interface in the video memory is output to the display device through the first display module. When the switching instruction indicates a switch to the first server, the multiplexer is controlled to enable the output path of the second display module, and the second display interface in the video memory is output to the display device through the second display module.
9. A server control system, characterized in that, It includes a first management controller and a second management controller, the first management controller is connected to the second management controller, the first management controller is set on a first server, and the second management controller is set on a second server; The first management controller is configured to, when switching to operate the first server, acquire a first interface image sent by the first server and output the first interface image to a display device, and receive input first operation data and send the first operation data to the first server to operate the first server; when switching to operate the second server, receive a second interface image of the second server sent by the second management controller and output the second interface image to a display device, and receive input second operation data and send the second operation data to the second management controller, so that the second management controller sends the second operation data to the second server to operate the second server; The second management controller is used to send the second interface image of the second server to the first management controller; The system receives the second operation data sent by the first management controller and sends the second operation data to the second server.
10. A non-volatile computer-readable storage medium, characterized in that, The non-volatile computer-readable storage medium stores computer-executable instructions, which, when loaded and executed by a processor, implement the server control method as described in any one of claims 1 to 8.