Disclosure of Invention
In view of this, an object of the present application is to provide a BMC debugging method, apparatus, system and embedded device, which are used to improve BMC debugging efficiency and reduce labor cost consumed by debugging.
In order to achieve the above purpose, the present application provides the following technical solutions:
a BMC debugging method is applied to embedded equipment, the embedded equipment is used for being connected with a server and a plurality of BMCs, and the method comprises the following steps:
connecting to a network through an Ethernet interface and receiving an assigned IP address;
sending the IP address and the equipment identifier of the embedded equipment to the server;
receiving a connection request sent by debugging equipment according to the corresponding relation between the IP address and the equipment identification stored in the server, and establishing connection with the debugging equipment according to the connection request;
and receiving a debugging instruction sent by the debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log, and sending the serial port debugging log to the server.
Preferably, before sending the IP address and the device identifier of the embedded device to the server, the method further includes:
and connecting with the server through a pre-configured server address.
Preferably, after connecting with the server, the method further includes:
and prompting the connection state with the server by using a connection indicator lamp.
Preferably, when the target BMC is debugged according to the debugging instruction, the method further includes:
and generating a debugging log corresponding to the target BMC, and sending the debugging log to the server and the debugging equipment.
Preferably, before connecting to the network through the ethernet interface, the method further includes:
and powering on the embedded equipment, and prompting the embedded equipment to be powered on successfully by using a power-on indicator lamp.
Preferably, the embedded device is connected with the BMC through a UART interface;
sending the serial port debugging log to the server, including:
and acquiring the serial port debugging log by using the UART interface, forwarding the serial port debugging log to a fixed network port through the UART interface, and sending the serial port debugging log to the server through the fixed network port.
Preferably, the sending the serial port debugging log to the server includes:
and receiving a serial port debugging log obtaining instruction sent by the server, and sending the serial port debugging log to the server according to the serial port debugging log obtaining instruction.
A BMC debugging device is applied to embedded equipment, the embedded equipment is used for being connected with a server and a plurality of BMCs, and the BMC debugging device comprises:
the first receiving module is used for connecting to a network through an Ethernet interface and receiving the allocated IP address;
the sending module is used for sending the IP address and the equipment identifier of the embedded equipment to the server;
a second receiving module, configured to receive a connection request sent by a debugging device according to a correspondence between the IP address and the device identifier stored in the server, and establish a connection with the debugging device according to the connection request;
and the generation module is used for receiving the debugging instruction sent by the debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log and sending the serial port debugging log to the server.
An embedded device is used for being connected with a server and comprises an Ethernet interface and a connection interface used for being connected with a plurality of BMCs;
wherein the embedded device is used for implementing the steps of the BMC debugging method according to any one of the above items.
A BMC debugging system comprises an embedded device, a server connected with the embedded device and a plurality of BMCs, wherein:
the embedded device is used for realizing the steps of the BMC debugging method;
the server is used for receiving the IP address distributed by the embedded equipment and the equipment identifier of the embedded equipment, which are sent by the embedded equipment, and storing the corresponding relation between the IP address and the equipment identifier; and receiving a serial port debugging log sent by the embedded equipment.
The application provides a BMC (baseboard management controller) debugging method, a BMC debugging device, a BMC debugging system and an embedded device, wherein the method is applied to the embedded device, and the embedded device is used for being connected with a server and a plurality of BMCs (baseboard management controllers) and can comprise the following steps: connecting to a network through an Ethernet interface and receiving an assigned IP address; sending the IP address and the equipment identifier of the embedded equipment to a server; receiving a connection request sent by the debugging equipment according to the corresponding relation between the IP address and the equipment identification stored in the server, and establishing connection with the debugging equipment according to the connection request; and receiving a debugging instruction sent by debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log, and sending the serial port debugging log to a server.
The technical proposal disclosed by the application connects a plurality of BMCs by using an embedded device, the allocated IP address and the device identifier are transmitted to a server by the embedded device, the embedded device is connected with the embedded device according to the corresponding relation between the IP address and the device identifier stored in the server, the BMC connected with the embedded device is debugged, the debugging device can debug a plurality of BMCs by the embedded device without frequently moving and switching the debugging device as in the prior art, thereby reducing the labor cost consumed by BMC debugging and improving the BMC debugging efficiency, in addition, a serial port debugging log can be simultaneously generated during debugging, and the serial port debugging log is transmitted to the server, so that research personnel can obtain the serial port debugging log corresponding to the BMC by the server, therefore, when the BMC serial port has a problem, the serial port debugging log can be timely reproduced, manpower and material resources required by the reproduction of the problem are reduced, the BMC debugging efficiency is improved, and the BMC research and development efficiency is further improved.
Detailed Description
The core of the application is to provide a BMC debugging method, a device, a system and an embedded device, which are used for improving the BMC debugging efficiency and reducing the labor cost consumed by debugging.
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Referring to fig. 1 to fig. 3, in which fig. 1 shows a flowchart of a BMC debugging method provided in the embodiment of the present application, fig. 2 shows a schematic structural diagram of an embedded device provided in the embodiment of the present application, and fig. 3 shows a schematic structural diagram of a BMC debugging system provided in the embodiment of the present application. The BMC debugging method provided in the embodiment of the present application is applied to an embedded device, where the embedded device is used to connect with a server and multiple BMCs, and may include:
s11: connects to the network through an ethernet interface and receives the assigned IP address.
In the application, the embedded device is used for being connected with the server through a network and correspondingly connected with the BMC through a plurality of connection interfaces (at least two connection interfaces) arranged inside, that is, the embedded device can be connected with a plurality of BMCs, and in addition, the embedded device can also be connected with the debugging device through the network. The embedded device is composed of hardware and software, is a device capable of independently operating, and has the advantages of small size and low cost.
It should be noted that the server mentioned here may specifically be a TCP (Transmission Control Protocol, a connection-oriented, reliable transport layer communication Protocol based on byte stream) server, of course, may also be another type of server, and the debugging device mentioned here may specifically be an independent desktop PC, of course, may also be another debugging device, and the present application does not limit the type of the server and the debugging device.
When performing BMC debugging, the embedded device may be connected to a network through an ethernet interface included inside, where the network mentioned herein may be specifically an internal network developed.
After the embedded device is connected to the network, an IP (Internet Protocol Address) Address allocated to the embedded device by the network may be received so as to facilitate mutual communication with the server and the debugging device.
S12: and sending the IP address and the equipment identifier of the embedded equipment to a server.
Based on step S11, the embedded device may send the received IP address and the device identifier of the embedded device itself to the server, so that the server may store the IP address and the device identifier of the embedded device correspondingly, that is, the server may store the corresponding relationship between the IP address and the device identifier of the embedded device, so as to obtain the IP address of the embedded device through the device identifier. The device identifier mentioned above may be specifically an SN (Serial Number) of the embedded device, and of course, may also be other unique identifiers capable of distinguishing the embedded devices.
It should be noted that the server may be connected to a plurality of embedded devices to reduce the number of servers, thereby facilitating reduction of the debugging cost of the BMC, and further facilitating reduction of the development cost of the BMC.
S13: and receiving a connection request sent by the debugging equipment according to the corresponding relation between the IP address and the equipment identifier stored in the server, and establishing connection with the debugging equipment according to the connection request.
On the basis of step S12, when the BMC needs to be debugged, the research and development staff may obtain the device identifier of the embedded device connected to the BMC to be debugged, and input the device identifier into the debugging device. After receiving the device identifier, the debugging device may send an embedded device IP address acquisition instruction (the acquisition instruction includes the received device identifier) to the server, and after receiving the embedded device IP address acquisition instruction, the server may acquire an IP address corresponding to the device identifier included in the embedded device IP address acquisition instruction according to a correspondence between the stored IP address of the embedded device and the device identifier of the embedded device and send the acquired IP address to the debugging device.
The debug device, after receiving the IP address of the embedded device, may send a connection request to the embedded device based on the IP address of the embedded device. After receiving the connection request, the embedded device may establish a connection with the debug device through a network (specifically, an internal network for research and development), and specifically, may establish a wireless connection with the debug device, so that the debug device may implement debugging of the BMC through the embedded device.
S14: and receiving a debugging instruction sent by debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log, and sending the serial port debugging log to a server.
After the embedded device is connected with the debugging device, the debugging device can receive a debugging instruction input by a research and development worker (wherein the debugging instruction comprises a target BMC to be debugged currently), and send the debugging instruction to the embedded device. After receiving the debugging instruction sent by the debugging device, the embedded device can debug the target BMC which is connected with the embedded device and corresponds to the debugging instruction according to the debugging instruction. Compared with the prior art that the debugging equipment is directly connected with the BMC, the BMC is debugged and the BMC serial port needs to be frequently switched, the debugging equipment can debug a plurality of BMCs on one embedded equipment through connection of the debugging equipment and the embedded equipment, the debugging equipment can debug the BMC connected with other embedded equipment only by replacing the IP address of the embedded equipment, and the movement of the debugging equipment and the switching of the BMC serial port do not need to be carried out, therefore, the labor cost consumed by BMC debugging can be reduced, and the debugging efficiency of the BMC can be improved.
In addition, in this application, when debugging the target BMC, a serial port debugging log corresponding to the BMC serial port may be generated (the serial port debugging log includes information related to the BMC serial port debugging), and the generated serial port debugging log may be sent to the server through the network, so that the server may store the serial port debugging log, and the serial port debugging log may be analyzed when the BMC serial port has a problem, so that research and development personnel may reproduce the BMC serial port according to an analysis result, so as to reduce the reproduction difficulty and the reproduction workload, thereby improving the BMC debugging efficiency, and further improving the BMC research and development efficiency. The BMC serial port is generally used for debugging information printing, remote mounting instruction issuing and the like, and the reason of abnormal generation is located through analysis of printing information in the debugging process. In addition, when the serial port debugging log corresponding to the BMC serial port is generated, the serial port debugging log corresponding to the BMC serial port can be generated in real time, so that all information related to BMC serial port debugging in the debugging process can be acquired conveniently.
When analyzing the serial port debugging log, the server can specifically compare the serial port debugging log corresponding to the problem BMC serial port with the serial port debugging log corresponding to the normal BMC serial port, so as to analyze the serial port debugging log corresponding to the problem BMC serial port, and certainly, the server can also analyze the serial port debugging log in other modes. In addition, besides the method of analyzing the serial port debugging log by the server, research and development personnel can obtain the corresponding serial port debugging log from the server and manually analyze the serial port debugging log.
The technical proposal disclosed by the application connects a plurality of BMCs by using an embedded device, the allocated IP address and the device identifier are transmitted to a server by the embedded device, the embedded device is connected with the embedded device according to the corresponding relation between the IP address and the device identifier stored in the server, the BMC connected with the embedded device is debugged, the debugging device can debug a plurality of BMCs by the embedded device without frequently moving and switching the debugging device as in the prior art, thereby reducing the labor cost consumed by BMC debugging and improving the BMC debugging efficiency, in addition, a serial port debugging log can be simultaneously generated during debugging, and the serial port debugging log is transmitted to the server, so that research personnel can obtain the serial port debugging log corresponding to the BMC by the server, therefore, when the BMC serial port has a problem, the serial port debugging log can be timely reproduced, manpower and material resources required by the reproduction of the problem are reduced, the BMC debugging efficiency is improved, and the BMC research and development efficiency is further improved.
Before sending the IP address and the device identifier of the embedded device to the server, the BMC debugging method provided in the embodiment of the present application may further include:
and connecting with the server through a pre-configured server address.
In the application, before the IP address and the device identifier of the embedded device are sent to the server, the embedded device can establish connection with the corresponding server through the pre-configured server address so as to be accurately connected with the server, and the server can smoothly receive and store the IP address and the device identifier of the embedded device. The server address may specifically be configured by a developer according to a requirement, and certainly, may also be automatically configured in other manners, which is not limited in this application.
The BMC debugging method provided in the embodiment of the present application, after connecting with a server, may further include:
and prompting the connection state with the server by using a connection indicator lamp.
In the application, the connection indicator lamp can be arranged inside the embedded device, and the display state of the connection indicator lamp can be utilized to prompt the connection state of the embedded device and the server through the control of the embedded processor, so that research and development personnel can obtain the connection condition of the embedded device and the server according to the display state of the connection indicator lamp, and the research and development personnel can conveniently perform subsequent work.
In addition, after the embedded device is connected with the debugging device, the embedded device can also prompt the connection state of the debugging device through the display state of the connection indicator lamp, so that research and development personnel can obtain the connection condition of the embedded device and the debugging device according to the display state of the connection indicator lamp, and the research and development personnel can send debugging instructions and the like conveniently.
Wherein, embedded equipment can be used for respectively to above-mentioned two kinds of connection condition suggestion through setting up two connection pilot lamps, for example: the connection state with the server can be prompted by setting the red light connection indicating lamp, and the connection state with the debugging equipment can be prompted by setting the green light, so that research personnel can clearly know the connection condition of the embedded equipment through the two connection indicating lamps. Of course, the embedded device may also prompt the two connection situations by setting one connection indicator and displaying different light colors through the one connection indicator, for example: the connection indicator light shows that red color shows that the embedded device is connected with the server but the embedded device is not connected with the debugging device, green color shows that the embedded device is connected with the debugging device but the embedded device is not connected with the server, yellow color shows that the embedded device is connected with the server and the debugging device, and the connection indicator light is in a non-working state and shows that the embedded device is not connected with the server and the debugging device, so that the size of the embedded device is reduced, the cost of the embedded device is reduced, and the BMC debugging cost is reduced conveniently.
The BMC debugging method provided in the embodiment of the present application, when debugging the target BMC according to the debugging instruction, may further include:
and generating a debugging log corresponding to the target BMC, and sending the debugging log to the server and the debugging equipment.
In the application, when the target BMC is debugged according to the debug instruction, besides generating the serial port debug log, a debug log corresponding to the target BMC may be generated (the debug log may not include information related to BMC serial port debugging), and the debug log corresponding to the target BMC may be sent to the server and the debug device, so that research and development personnel may obtain and check the debug log of the target BMC through the server and/or the debug device, obtain debug information related to BMC debugging from the debug log, and be convenient to find abnormality of the BMC in time and take measures to deal with the abnormality of the BMC in time, so as to reduce loss caused by BMC abnormality. When the debugging log corresponding to the target BMC is generated, the debugging log corresponding to the target BMC can be generated in real time, so that BMC debugging information related to the whole BMC debugging process can be conveniently acquired.
It should be noted that the serial port debug log and the debug log may be two independent logs, so that research personnel can obtain the corresponding logs when needed, and the obtaining efficiency and the analysis efficiency of the corresponding parts can be improved. Certainly, the serial port debug log may also be included in the debug log to reduce the occupation of storage resources.
Before connecting to a network through an ethernet interface, a BMC debugging method provided in an embodiment of the present application may further include:
and powering on the embedded equipment, and prompting the embedded equipment to be successfully powered on by using a power-on indicator lamp.
In the application, the embedded device can be internally provided with a power-on indicator lamp, the embedded device can be powered on before being connected to a network through the Ethernet interface, and the power-on indicator lamp in the embedded device is used for prompting the embedded device to be powered on successfully after the embedded device is powered on, so that research personnel can obtain that the embedded device is powered on successfully through the prompt of the power-on indicator lamp, and can perform BMC (baseboard management controller) testing, and the research personnel can perform related work of BMC debugging.
According to the BMC debugging method provided by the embodiment of the application, the embedded device is connected with the BMC through the UART interface;
sending the serial port debugging log to a server may include:
and acquiring a serial port debugging log by using the UART interface, forwarding the serial port debugging log to the fixed network port through the UART interface, and sending the serial port debugging log to the server through the fixed network port.
In this application, the connection interface included in the embedded device may specifically be a UART (Universal Asynchronous Receiver/Transmitter) interface, so as to be correspondingly connected with the BMC through the UART interface. On this basis, the embedded device sends the serial port debugging log to the server specifically can acquire the serial port debugging data corresponding to the BMC in the debugging process by using the UART interface, generate the serial port debugging log, forward the serial port debugging log to the fixed network port of the embedded device through the UART interface, and then the embedded device can send the serial port debugging log to the server through the fixed network port. Where reference herein to a fixed network port is specifically made to a port in the logical sense.
In addition, in the present application, when the debug log is sent to the server and the debug device, a similar method to the above may also be used to perform the debug log, and for a specific process, reference is made to the above detailed description, which is not repeated herein.
The BMC debugging method provided in the embodiment of the present application sends the serial port debugging log to the server, and may include:
and receiving a serial port debugging log obtaining instruction sent by the server, and sending the serial port debugging log to the server according to the serial port debugging log obtaining instruction.
In the application, when the embedded device sends the serial port debugging log to the server, the embedded device may specifically receive the serial port debugging log obtaining instruction sent by the server first, and then send the serial port debugging log to the server according to the received serial port debugging log obtaining instruction, so as to realize active access and obtaining of the serial port debugging log by the server.
Of course, for the debug log, the server and the debug device may also implement active access and acquisition of the debug log in a manner similar to that described above.
The embodiment of the present application further provides a BMC debugging apparatus, which is applied to an embedded device, where the embedded device is used to connect with a server and multiple BMCs, see fig. 4, which shows a schematic structural diagram of the BMC debugging apparatus provided in the embodiment of the present application, and may include:
a first receiving module 41 for connecting to a network through an ethernet interface and receiving an assigned IP address;
a sending module 42, configured to send the IP address and the device identifier of the embedded device to the server;
a second receiving module 43, configured to receive a connection request sent by the debugging device according to a correspondence between the IP address and the device identifier stored in the server, and establish a connection with the debugging device according to the connection request;
the first generating module 44 is configured to receive a debugging instruction sent by the debugging device, debug the target BMC according to the debugging instruction, generate a serial port debugging log, and send the serial port debugging log to the server.
The BMC debugging device provided in the embodiment of the present application may further include:
and the connection module is used for connecting with the server through a pre-configured server address before the IP address and the equipment identifier of the embedded equipment are sent to the server.
The BMC debugging device provided in the embodiment of the present application may further include:
the first prompting module is used for prompting the connection state of the server by using a connection indicating lamp after the server is connected.
The BMC debugging device provided in the embodiment of the present application may further include:
and the second generation module is used for generating a debugging log corresponding to the target BMC when the target BMC is debugged according to the debugging instruction, and sending the debugging log to the server and the debugging equipment.
The BMC debugging device provided in the embodiment of the present application may further include:
and the second prompting module is used for powering on the embedded equipment before the embedded equipment is connected to the network through the Ethernet interface and prompting the embedded equipment to be powered on successfully by utilizing the power-on indicator lamp.
According to the BMC debugging device provided by the embodiment of the application, the embedded device is connected with the BMC through the UART interface;
the first generation module 44 may include:
and the sending unit is used for acquiring the serial port debugging log by using the UART interface, forwarding the serial port debugging log to the fixed network port through the UART interface, and sending the serial port debugging log to the server through the fixed network port.
In an embodiment of the BMC debugging apparatus provided in this application, the first generating module 44 may include:
and the receiving unit is used for receiving the serial port debugging log obtaining instruction sent by the server and sending the serial port debugging log to the server according to the serial port debugging log obtaining instruction.
The embodiment of the present application further provides an embedded device, which may specifically refer to fig. 2, and is configured to connect to a server, and may include an ethernet interface and a connection interface configured to connect to multiple BMCs;
the embedded device is used for realizing the following steps:
connecting to a network through an Ethernet interface and receiving an assigned IP address; sending the IP address and the equipment identifier of the embedded equipment to a server; receiving a connection request sent by the debugging equipment according to the corresponding relation between the IP address and the equipment identification stored in the server, and establishing connection with the debugging equipment according to the connection request; and receiving a debugging instruction sent by debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log, and sending the serial port debugging log to a server.
The embodiment of the present application further provides a BMC debugging system, which may specifically refer to fig. 3, and may include an embedded device, a server connected to the embedded device, and a plurality of BMCs, where:
the embedded device is used for realizing the following steps: connecting to a network through an Ethernet interface and receiving an assigned IP address; sending the IP address and the equipment identifier of the embedded equipment to a server; receiving a connection request sent by the debugging equipment according to the corresponding relation between the IP address and the equipment identification stored in the server, and establishing connection with the debugging equipment according to the connection request; receiving a debugging instruction sent by debugging equipment, debugging the target BMC according to the debugging instruction, generating a serial port debugging log, and sending the serial port debugging log to a server;
the server is used for receiving the IP address distributed by the embedded equipment and the equipment identifier of the embedded equipment, which are sent by the embedded equipment, and storing the corresponding relation between the IP address and the equipment identifier; and receiving a serial port debugging log sent by the embedded equipment.
For a description of a relevant part in a BMC debugging apparatus, a system and an embedded device provided in the embodiment of the present application, reference may be made to a detailed description of a corresponding part in a BMC debugging method provided in the embodiment of the present application, which is not described herein again.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Furthermore, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include elements inherent in the list. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element. In addition, parts of the above technical solutions provided in the embodiments of the present application, which are consistent with the implementation principles of corresponding technical solutions in the prior art, are not described in detail so as to avoid redundant description.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.