Management method and device of baseboard management controller

By parsing and calling the BMC management program on the email processing side, parallel management of including multiple BMC function operations in one email is realized, solving the problem of insufficient flexibility in BMC management in the existing technology, and improving management flexibility and efficiency .

CN119149334APending Publication Date: 2024-12-17SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411170500.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

The existing redfish and IPMI management interfaces lack flexibility when managing BMCs and cannot adjust the management process in real time according to user needs.

Method used

Receive and parse out-of-band mail through the mail processing side, call the transaction management program of the substrate management controller to realize BMC management, and allow multiple BMC function operations to be included in one email to realize parallel operation management.

Benefits of technology

Improves the flexibility of BMC management, allowing multiple functional operations to be included by sending an email, solving the limitation that traditional interfaces can only use one command to implement one functional operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119149334A_ABST
    Figure CN119149334A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a management method and device of a baseboard management controller, the method is applied to the baseboard management controller, a mail processing end of the baseboard management controller is connected with an out-of-band mail proxy end, and the method comprises the following steps: receiving an out-of-band mail from the out-of-band mail proxy end; analyzing the out-of-band mail through the mail processing end to obtain an analysis result; and calling a management program corresponding to a transaction end of the baseboard management controller based on the analysis result, and executing the management program to manage the baseboard management controller. Through the BMC management method and device, the problem that BMC management is not high in flexibility is solved, and the effect of improving the BMC management flexibility is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the computer field, and more specifically, to a management method and device for a baseboard management controller. Background Art

[0002] At present, the out-of-band management interfaces provided by BMC (Baseboard Management Controller) during the management process include redfish and IPMI. Redfish is an open standard management interface, commonly used for remote management and monitoring of server hardware systems. Redfish uses a RESTful API interface that communicates with HTTP and JSON to manage hardware resources such as servers, storage devices, and network devices, and then implements functions such as power control, hardware monitoring, system configuration, and firmware upgrades, providing a foundation for users to remotely manage and monitor the entire hardware ecosystem. IPMI (Intelligent Platform Management Interface) is an industrial standard adopted by peripheral devices used in enterprise systems based on Intel architecture. Users can use IPMI to monitor the physical health characteristics of the server, such as temperature, voltage, fan working status, power status, etc. However, the existing redfish and IPMI cannot adjust the management process in real time according to user needs when managing BMC, and have the defect of being not flexible enough.

[0003] With regard to the problem of low flexibility of BMC management in related technologies, no effective solution has been proposed yet.

[0004] Therefore, it is necessary to improve the related technology to overcome the above-mentioned defects in the related technology. Summary of the invention

[0005] The embodiments of the present application provide a method and device for managing a baseboard management controller, so as to at least solve the problem of low flexibility of BMC management in the related art.

[0006] According to an embodiment of the present application, a management method for a baseboard management controller is provided, which is applied to the baseboard management controller, and the mail processing end of the baseboard management controller is connected to the out-of-band mail proxy end; the method comprises: receiving an out-of-band mail from the out-of-band mail proxy end; parsing the out-of-band mail by the mail processing end to obtain a parsing result; calling a management program corresponding to the transaction end of the baseboard management controller based on the parsing result, and executing the management program to manage the baseboard management controller.

[0007] In an exemplary embodiment, the mail processing end includes at least a first server; the out-of-band mail is parsed by the mail processing end to obtain a parsing result, including: extracting information from the received out-of-band mail by the first server to obtain mail information of the out-of-band mail, wherein the mail information includes at least one of the following: mail subject, mail body, mail attachment, sending information, and receiving information.

[0008] In an exemplary embodiment, the mail processing end further includes a baseboard management controller mail agent; calling the management program corresponding to the transaction end of the baseboard management controller based on the parsing result includes: sending the mail information to the baseboard management controller mail agent; using the baseboard management controller mail agent to obtain the first user name and the first password in the mail subject from the mail information; determining the recipient name from the received mail information; in the case where it is determined that the recipient name belongs to a preset user information table, determining the second user name and the second password corresponding to the recipient name from the preset user information table; comparing the first user name and the second user name to obtain a comparison result; in the case where it is determined that the comparison result is used to indicate that the first user name and the second user name are consistent, comparing the first password and the second password; if it is determined that the first password and the second password are the same, generating input parameter information based on the first user name and the first password; sending a call instruction carrying the input parameter information to the baseboard management controller; calling the security program of the baseboard management controller through the call instruction to perform security authentication on the input parameter information to obtain an authentication result; calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result.

[0009] In an exemplary embodiment, in the process of calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result, the method also includes: when it is determined that the authentication result is used to indicate that the security authentication of the input parameter information is successful, determining that the user authentication corresponding to the input parameter information is successful; obtaining all management programs corresponding to the transaction end from the email body; traversing all management programs, and generating a current call instruction corresponding to the current management program for calling the current management program currently traversed.

[0010] In an exemplary embodiment, the mail processing end also includes a second server, and the service protocol of the second server is different from the service protocol of the first server; based on the authentication result, the management program corresponding to the transaction end of the baseboard management controller is called, including: when it is determined that the authentication result is used to indicate that the security authentication of the input parameter information has failed, determining that the user authentication corresponding to the input parameter information has failed; constructing a first mail through the baseboard management controller mail agent, wherein the mail subject of the first mail is user authentication failure; and using the second server to send the first mail to the out-of-band mail agent.

[0011] In an exemplary embodiment, after executing the management program to manage the baseboard management controller, the method further includes: in a case where it is determined that the execution of the management program has failed, constructing a second email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the second email is user authentication failure; and sending the second email to the out-of-band email agent using a second server included in the email processing end.

[0012] In an exemplary embodiment, after executing the management program to manage the baseboard management controller, the method further includes: when it is determined that the execution of the management program is successful, constructing a third email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the third email is user authentication success; obtaining response information after the execution of the management program, filling the response information in the email body of the third email, and obtaining the target email; and using the second server included in the email processing end to send the third email to the out-of-band email agent.

[0013] According to another embodiment of the present application, a management device for a baseboard management controller is provided, including: a receiving module for receiving an out-of-band email from an out-of-band email agent; a parsing module for parsing the out-of-band email through a mail processing terminal to obtain a parsing result; and a management module for calling a management program corresponding to the transaction terminal of the baseboard management controller based on the parsing result, and executing the management program to manage the baseboard management controller.

[0014] According to another embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when run.

[0015] According to another embodiment of the present application, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0016] According to another embodiment of the present application, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0017] Through the present application, an out-of-band email from the out-of-band email agent is received through a baseboard management controller; the out-of-band email is parsed through the email processing end of the baseboard management controller to obtain a parsing result; based on the parsing result, the management program corresponding to the transaction end of the baseboard management controller is called, and the management program is executed to manage the baseboard management controller. The present application implements BMC management based on the mailbox service provided by the new interface method. Compared with the traditional method of managing BMC through redfish and IPMI interfaces, which can only use one command to implement one functional operation, the interface only needs to send one email to include multiple BMC functional operations. In this way, the present application implements parallel operation management by providing multiple operations in one email. Therefore, the problem of low flexibility of BMC management can be solved, and the effect of improving the flexibility of BMC management can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 It is a hardware structure block diagram of a server device of a baseboard management controller management method according to an embodiment of the present application;

[0019] Figure 2 is a flow chart of a management method of a baseboard management controller according to an embodiment of the present application;

[0020] Figure 3 is a schematic diagram of a management architecture of a baseboard management controller according to an embodiment of the present application;

[0021] Figure 4 is a schematic diagram of a user interacting with a baseboard management controller through a mailbox according to an embodiment of the present application;

[0022] Figure 5 is a schematic diagram of a process of processing out-of-band mail by a baseboard management controller according to an embodiment of the present application;

[0023] Figure 6 It is a structural block diagram of a management device of a baseboard management controller according to an embodiment of the present application. DETAILED DESCRIPTION

[0024] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0026] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking running on a server device as an example, Figure 1 1 is a hardware structure block diagram of a server device of a baseboard management controller management method according to an embodiment of the present application. Figure 1 As shown, the server device may include one or more ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, wherein the server device may also include a transmission device 106 and an input / output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the above server device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.

[0027] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the management method of the baseboard management controller in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, to implement the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the server device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0028] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the server device. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0029] Next, some technical terms involved in this application are explained.

[0030] POP3: Mainly used to support the use of clients to remotely manage emails on the server. The POP3 protocol that provides SSL (Secure Sockets Layer) encryption is called POP3S. SSL is a security protocol used to establish encrypted communication connections on the Internet to protect the privacy and integrity of data transmission. SSL ensures the secure transmission of data between the client (such as a browser) and the server by using key encryption technology. The POP3 protocol allows users to download and receive emails from the mail server, and users can access and manage the inbox on the mail server through client applications (such as Outlook, Thunderbird, etc.).

[0031] 995 secure port: the secure port of the POP3 protocol, a channel encrypted by SSL or TLS.

[0032] SMTP: A protocol that provides reliable and efficient email transmission. SMTP is a mail service built on the FTP file transfer service, mainly used for email information transmission between systems and providing notifications about incoming mail. SMTP is responsible for handling mail routing and transmission, defining the transmission method of email, and is responsible for sending mail from the sender's email server to the recipient's email server, thereby ensuring that the mail can be accurately delivered to the target server.

[0033] 465 secure port: the secure port of the SMTP protocol, a channel encrypted by SSL or TLS.

[0034] BMC: Baseboard Management Controller, is a dedicated controller used to monitor and manage servers. Compared with personal computers, servers have stricter requirements in terms of stability, reliability, security, performance, manageability, etc., so BMC is needed to control the server.

[0035] In this embodiment, a management method of a baseboard management controller is provided, which is applied to the baseboard management controller. The mail processing end of the baseboard management controller is connected to the out-of-band mail proxy end. Figure 2 is a flow chart of a management method of a baseboard management controller according to an embodiment of the present application, such as Figure 2 As shown, the process includes the following steps:

[0036] Step S202, receiving an out-of-band email from the out-of-band email proxy;

[0037] Step S204, parsing the out-of-band email through the email processing terminal to obtain a parsing result;

[0038] Step S206: calling a management program corresponding to the transaction end of the baseboard management controller based on the analysis result, and executing the management program to manage the baseboard management controller.

[0039] Through the above steps, the present application receives the out-of-band email from the out-of-band email agent through the baseboard management controller; parses the out-of-band email through the email processing end of the baseboard management controller to obtain a parsing result; calls the management program corresponding to the transaction end of the baseboard management controller based on the parsing result, and executes the management program to manage the baseboard management controller. The present application implements BMC management based on the mailbox service provided by the new interface method. Compared with the traditional method of managing BMC through redfish and IPMI interfaces, which can only use one command to implement one functional operation, the interface only needs to send one email to include multiple BMC functional operations. In this way, the present application implements parallel operation management by providing multiple operations in one email. Therefore, the problem of low flexibility of BMC management can be solved, and the effect of improving the flexibility of BMC management can be achieved.

[0040] The execution subject of the above steps may be a server, a terminal, etc. configured with a baseboard management controller, but is not limited thereto.

[0041] Optionally, step S202 and step S204 have a fixed execution order, that is, step S202 is executed first, and then step S204 is executed.

[0042] Optionally, the out-of-band mail proxy is, for example, Figure 3 The out-of-band user agent shown in the figure can be used as the input end of the user management BMC command. The out-of-band user agent can be understood as an email agent software such as foxmail, and its direct function is to realize the sending and receiving of emails. Figure 3As shown, an SMPT server (ie, the first server) and a POP3 server (ie, the second server) are deployed as mailbox servers at the mail processing end inside the BMC system.

[0043] Among them, the SMTP server is used to implement the SMTP protocol for sending and receiving emails, the listening port is 465, and SSL or TLS is used for encryption and decryption to ensure the security of the email sending and receiving process.

[0044] Among them, the POP3 server is used to provide out-of-band user agent download mail service (equivalent to receiving mail), the listening port is 995, and SSL or TLS is used for encryption and decryption.

[0045] The BMC user agent performs internal processing after receiving the email (corresponding to calling the BMC transaction end), and sends the email to the out-of-band user agent (corresponding to the output of the user management BMC function instruction).

[0046] The BMC transaction terminal has the ability to implement all the functions of the BMC. This application does not describe in detail and comprehensively the functional programs (which can be understood as the above-mentioned management programs) included in the BMC transaction terminal.

[0047] For example, the following functions are used as examples for explanation: 1. Firmware upgrade program, used to upgrade the firmware of BMC, BIOS (Basic Input / Output System) or CPLD (Complex Programmable Logic Device). 2. Service management program, used to manage services such as http, ssh, kvm, etc. 3. User security program, used to implement user addition, deletion, modification and security. 4. BMC management program, used to implement fan control, power management and other functions.

[0048] Among them, BIOS is a firmware that is responsible for hardware detection, initialization and configuration when the computer starts. It also provides the most basic interface with the operating system, allowing the operating system to control the computer's hardware devices. BIOS is stored in a non-volatile memory (such as ROM or flash memory) on the motherboard.

[0049] Among them, CPLD is an integrated circuit that allows users to program and design digital circuits as needed. CPLD combines technologies such as programmable array logic and general programmable array logic, and has higher integration and flexibility. CPLD is widely used in digital logic design, control systems, and communication equipment.

[0050] In an exemplary embodiment, the mail processing end includes at least a first server, and the process of parsing the out-of-band mail through the mail processing end to obtain the parsing result may specifically include: extracting information from the received out-of-band mail through the first server to obtain mail information of the out-of-band mail, wherein the mail information includes at least one of the following: mail subject, mail body, mail attachment, sending information, and receiving information.

[0051] For example, the first server is Figure 3 The smtp server shown.

[0052] In one embodiment, the email information is set to include a sender (corresponding to the above-mentioned sending information), a recipient (corresponding to the above-mentioned receiving information), a subject (corresponding to the email subject), a body (corresponding to the email body) and an attachment (corresponding to the email attachment). Then, the email information of the out-of-band email sent by the out-of-band user agent to the BMC user agent is shown as follows.

[0053] Sender: Out-of-band User Agent.

[0054] Recipient: BMC User Agent.

[0055] Subject: Username / password combination (for example: admin / admin), mainly for user operation authentication to ensure the security of operation.

[0056] Body: Describes BMC management operations in JSON format, as shown below.

[0057] "{

[0058] BMCUpdate:

[0059] SaveCofig: yes,

[0060] SendProgress: yes}

[0061] User:

[0062] Cmd: add,

[0063] Name: yes,

[0064] PassWord: yes,

[0065] Operator:admin}

[0066] }".

[0067] The description information in the json format is the body of the email. One or more BMC function operations can be added. After the BMC user agent parses the body, it performs the corresponding actions according to the corresponding operations.

[0068] Email attachments: Generally, firmware upgrades and configuration restorations will have attachments. For example, for firmware upgrades, the attachment is the upgrade package of the target firmware, which will be sent to the BMC in the form of an attachment.

[0069] Further, the BMC user agent replies to the out-of-band user agent with the following email information.

[0070] Sender: BMC User Agent.

[0071] Recipient: Out-of-band User Agent.

[0072] Subject: success or failed, which informs the user whether the last BMC operation is successful or failed. If all the last BMC operations are successful, success is returned. If one of them fails, failed is returned.

[0073] Body: The body describes the BMC management operations in JSON format, as shown below.

[0074]

[0075] In the above method of managing BMC, other return results may be further added to the constructed email body.

[0076] In an exemplary embodiment, the mail processing end further includes a baseboard management controller mail agent. The process of calling the management program corresponding to the transaction end of the baseboard management controller based on the analysis result is described by the following steps: sending the mail information to the baseboard management controller mail agent; using the baseboard management controller mail agent to obtain the first user name and the first password in the mail subject from the mail information; determining the recipient name from the received mail information; in the case where it is determined that the recipient name belongs to a preset user information table, determining the second user name and the second password corresponding to the recipient name from the preset user information table; comparing the first user name and the second user name to obtain a comparison result; in the case where it is determined that the comparison result indicates that the first user name and the second user name are consistent, comparing the first password and the second password; if it is determined that the first password and the second password are the same, generating input parameter information based on the first user name and the first password; sending a call instruction carrying the input parameter information to the baseboard management controller; calling the security program of the baseboard management controller through the call instruction to perform security authentication on the input parameter information to obtain an authentication result; calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result. In this embodiment, by verifying the user name and password, generating input parameter information using the verified user name and password, and then performing security authentication on the input parameter information, the reliability and security of the authentication can be improved.

[0077] For example, the baseboard management controller mail agent is as follows: Figure 3 The BMC user agent shown.

[0078] Optionally, in one embodiment, the first user name and the first password in the subject of the email may be directly used to generate input parameter information, and the management program corresponding to the transaction end of the baseboard management controller may be called based on the result of authenticating the input parameter information. This may speed up the management rate of the transaction end at the expense of some security.

[0079] In an exemplary embodiment, in the process of calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result, further, when it is determined that the authentication result is used to indicate that the security authentication of the input parameter information is successful, it can be determined that the user authentication corresponding to the input parameter information is successful; all management programs corresponding to the transaction end are obtained from the body of the email; all management programs are traversed, and for the current management program currently traversed, a current call instruction for calling the corresponding current management program is generated. This embodiment generates the current call instruction only when the authentication is successful, which reduces the risk of using the current call instruction to call the management program in the future and improves security.

[0080] In an exemplary embodiment, the mail processing end further includes a second server, and the service protocol of the second server is different from the service protocol of the first server. A specific implementation process of calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result is further proposed, including: in the case where it is determined that the authentication result is used to indicate that the security authentication of the input parameter information has failed, determining that the user authentication corresponding to the input parameter information has failed; constructing a first mail through the baseboard management controller mail agent, wherein the mail subject of the first mail is user authentication failure; and using the second server to send the first mail to the out-of-band mail agent. This embodiment facilitates users to grasp the management status of the baseboard management controller in real time by sending the result of the authentication failure to the out-of-band mail agent.

[0081] For example, the second server is Figure 4 The POP3 server shown, combined with Figure 4 Implement the following process:

[0082] 1. The out-of-band user agent constructs the email sender, recipient, subject, body, and attachments, corresponding to the BMC operations to be performed.

[0083] 2. The out-of-band user agent connects to the BMC SMTP server through the 465 security port and sends the email to the SMTP server inside the BMC.

[0084] 3. The SMTP server inside the BMC receives the email, parses it to obtain the email information, and sends the email information to the BMC user agent.

[0085] 4. The BMC user agent obtains the user name and password from the email subject in the email message, takes the user name and password as input parameters, and calls the user security program from the BMC transaction end (i.e. the above-mentioned transaction end) for authentication.

[0086] 5. The BMC user agent constructs an email based on the call result sent by the BMC transaction end and sends it to the POP3 server.

[0087] 6. The POP3 server sends the constructed email to the out-of-band user agent through the 995 security terminal.

[0088] Through the above process, the BMC management function is realized through the mailbox service, and the management of BMC is more flexible.

[0089] In an exemplary embodiment, after executing the management program to manage the baseboard management controller, if it is determined that the execution of the management program fails, a second email can be constructed through the baseboard management controller email agent included in the email processing end, wherein the email subject of the second email is user authentication failure; and the second email is sent to the out-of-band email agent using the second server included in the email processing end. This embodiment can feed back the message of user authentication failure to the user in real time, thereby improving the real-time management efficiency of the baseboard management controller.

[0090] Optionally, based on the steps of the above embodiment, the process of executing the management program to manage the baseboard management controller further includes: sending a control instruction to the baseboard management controller to control the baseboard management controller to call the current management program using the current call instruction.

[0091] In an exemplary embodiment, after the management program is executed to manage the baseboard management controller, further, when it is determined that the execution of the management program is successful, a third email is constructed through the baseboard management controller email agent included in the email processing end, wherein the email subject of the third email is user authentication success; the response information after the execution of the management program is obtained, and the response information is filled in the email body of the third email to obtain the target email; and the third email is sent to the out-of-band email agent using the second server included in the email processing end. This embodiment fills the response information into the email body and sends the authenticated third email to the out-of-band email agent. On the one hand, this embodiment provides feedback to the user on the management status of the baseboard management controller, and on the other hand, it can synchronize the management results to the user to improve the user's management and control capabilities.

[0092] Furthermore, in one embodiment, it is also possible to combine Figure 5 The process shown in the figure illustrates the process of managing BMC based on the email service. Specifically, the implementation steps are as follows:

[0093] Step 1: The SMTP server inside the BMC receives the email and parses the email subject, body, and attachments.

[0094] Step 2: The parsed result of the SMTP server is sent to the BMC user agent.

[0095] Step 3: The BMC user agent takes the user name and password in the email subject as input parameters and calls the user security program for authentication.

[0096] Step 4: If the user authentication fails, the BMC user agent constructs an email with the subject "failed".

[0097] Step 5: If the user authentication is successful, the BMC user agent parses the email body.

[0098] Step 6: Use the POP3 server to send the failed email to the out-of-band user agent.

[0099] Step 7: The BMC user agent calls the corresponding programs of the BMC transaction end in sequence according to the parsed email body.

[0100] Step 8, determine whether the returned result is that the program corresponding to the BMC transaction end is executed successfully; if the program corresponding to the BMC transaction end is executed successfully, execute step 9. If the program corresponding to the BMC transaction end fails to execute, execute steps 4 and 6, and the BMC user agent constructs an email with the subject "failed" and uses the POP3 server to send the email of the failed operation to the out-of-band user agent.

[0101] Step 9: If the program corresponding to the BMC transaction end is executed successfully, the BMC user agent constructs an email with the subject "success" and uses the POP3 server to fill the email body with the program return result.

[0102] Step 10: The POP3 server sends the email indicating successful operation to the out-of-band user agent.

[0103] Through the above steps, by deploying the smpt server and POP3 server as the mailbox server inside the BMC system, and constructing the email subject, body and attachments, BMC management can be performed through the mailbox service. The body of an email can be used in parallel to perform multiple BMC operations. The corresponding processing process can also be changed when the number of BMC transaction end programs changes, thereby improving the flexibility and efficiency of BMC management.

[0104] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0105] In this embodiment, a management device of a baseboard management controller is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0106] Figure 6 is a structural block diagram of a management device of a baseboard management controller according to an embodiment of the present application, such as Figure 6 As shown, the device comprises:

[0107] The receiving module 62 is used to receive out-of-band emails from the out-of-band email agent;

[0108] The parsing module 64 is used to parse the out-of-band email through the email processing terminal to obtain a parsing result;

[0109] The management module 66 is used to call the management program corresponding to the transaction end of the baseboard management controller based on the analysis result, and execute the management program to manage the baseboard management controller.

[0110] Through the above-mentioned device, the present application receives an out-of-band email from the out-of-band email agent through a baseboard management controller; parses the out-of-band email through the email processing end of the baseboard management controller to obtain a parsing result; calls the management program corresponding to the transaction end of the baseboard management controller based on the parsing result, and executes the management program to manage the baseboard management controller. The present application implements BMC management based on the mailbox service provided by the new interface method. Compared with the traditional method of managing BMC through redfish and IPMI interfaces, which can only use one command to implement one functional operation, the interface only needs to send one email to include multiple BMC functional operations. In this way, the present application implements parallel operation management by providing multiple operations in one email. Therefore, the problem of low flexibility of BMC management can be solved, and the effect of improving the flexibility of BMC management can be achieved.

[0111] In an exemplary embodiment, the email processing end includes at least a first server; the parsing module 64 is also used to: extract information from the received out-of-band email through the first server to obtain email information of the out-of-band email, wherein the email information includes at least one of the following: email subject, email body, email attachment, sending information, and receiving information.

[0112] In an exemplary embodiment, the mail processing end also includes a baseboard management controller mail agent; the management module 66 is further used to: send the mail information to the baseboard management controller mail agent; use the baseboard management controller mail agent to obtain the first user name and the first password in the mail subject from the mail information; determine the recipient name from the received information; when it is determined that the recipient name belongs to a preset user information table, determine the second user name and the second password corresponding to the recipient name from the preset user information table; compare the first user name and the second user name to obtain a comparison result; when it is determined that the comparison result is used to indicate that the first user name and the second user name are consistent, compare the first password and the second password; if it is determined that the first password and the second password are the same, generate input parameter information based on the first user name and the first password; send a call instruction carrying the input parameter information to the baseboard management controller; call the security program of the baseboard management controller through the call instruction to perform security authentication on the input parameter information to obtain an authentication result; call the management program corresponding to the transaction end of the baseboard management controller based on the authentication result.

[0113] In an exemplary embodiment, the management module 66 is also used to: in the process of calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result, when it is determined that the authentication result is used to indicate that the security authentication of the input parameter information is successful, determine that the user authentication corresponding to the input parameter information is successful; obtain all management programs corresponding to the transaction end from the email body; traverse all the management programs, and for the current management program currently traversed, generate a current call instruction corresponding to the current management program for calling the current management program.

[0114] In an exemplary embodiment, the mail processing end also includes a second server, and the service protocol of the second server is different from the service protocol of the first server; the management module 66 is also used to: when it is determined that the authentication result is used to indicate that the security authentication of the input parameter information has failed, determine that the user authentication corresponding to the input parameter information has failed; construct a first mail through the baseboard management controller mail agent, wherein the mail subject of the first mail is user authentication failure; and use the second server to send the first mail to the out-of-band mail agent.

[0115] In an exemplary embodiment, the management device of the baseboard management controller also includes: a first sending module, which is used to, after executing the management program to manage the baseboard management controller, when it is determined that the execution of the management program has failed, construct a second email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the second email is user authentication failure; and use the second server included in the email processing end to send the second email to the out-of-band email agent.

[0116] In an exemplary embodiment, the management device of the baseboard management controller also includes: a second sending module, which is used to, after the execution of the management program to manage the baseboard management controller, when it is determined that the execution of the management program is successful, construct a third email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the third email is user authentication success; obtain response information after the execution of the management program, fill in the response information in the email body of the third email, and obtain the target email; and use the second server included in the email processing end to send the third email to the out-of-band email agent.

[0117] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.

[0118] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.

[0119] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.

[0120] An embodiment of the present application further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0121] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0122] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any one of the above method embodiments are implemented.

[0123] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0124] The embodiments of the present application also provide a computer program, which includes computer instructions, which are stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in any one of the above method embodiments.

[0125] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail herein.

[0126] Obviously, those skilled in the art should understand that the above modules or steps of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.

[0127] Although the implementation methods described in the present application are as above, the above description content and definitions are only for the purpose of facilitating the understanding of the implementation methods of the present application, and are not intended to limit the present application. Any modifications and changes made without departing from the spirit and scope of the present application, especially the management method of the baseboard management controller, and the modifications and changes in the way of constructing the email subject, body and attachments, and not limited to the field of BMC equipment, are within the scope of protection of the present application.

[0128] The above description is only the preferred embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present application shall be included in the protection scope of the present application.

Claims

1. A management method for a baseboard management controller, characterized in that: Applied to a baseboard management controller, the mail processing terminal of the baseboard management controller is connected to the out-of-band mail proxy terminal; include: Receiving out-of-band emails from the out-of-band email agent; Parsing the out-of-band email through the email processing terminal to obtain a parsing result; A management program corresponding to the transaction end of the baseboard management controller is called based on the analysis result, and the management program is executed to manage the baseboard management controller.

2. The method according to claim 1, characterized in that The mail processing end includes at least a first server; The parsing of the out-of-band email by the email processing terminal to obtain a parsing result includes: The first server extracts information from the received out-of-band email to obtain email information of the out-of-band email, wherein the email information includes at least one of the following: email subject, email body, email attachment, email sending information, and email receiving information.

3. The method according to claim 2, characterized in that The mail processing end also includes a baseboard management controller mail agent end; Calling a management program corresponding to the transaction end of the baseboard management controller based on the analysis result includes: Sending the email information to the baseboard management controller email agent; Using the baseboard management controller email agent to obtain the first user name and the first password in the email subject from the email information; Determining the name of the recipient from the received information; In the case where it is determined that the recipient name belongs to the preset user information table, determining a second user name and a second password corresponding to the recipient name from the preset user information table; Comparing the first user name and the second user name to obtain a comparison result; When it is determined that the comparison result indicates that the first user name and the second user name are consistent, comparing the first password and the second password; If it is determined that the first password and the second password are the same, generating input parameter information based on the first user name and the first password; Sending a call instruction carrying the input parameter information to the baseboard management controller; Calling the security program of the baseboard management controller through the calling instruction to perform security authentication on the input parameter information to obtain an authentication result; A management program corresponding to the transaction end of the baseboard management controller is called based on the authentication result.

4. The method according to claim 3, characterized in that In the process of calling the management program corresponding to the transaction end of the baseboard management controller based on the authentication result, the method further includes: In a case where it is determined that the authentication result indicates that the security authentication of the input parameter information is successful, determining that the user authentication corresponding to the input parameter information is successful; Obtaining all management programs corresponding to the transaction end from the email body; All the hypervisors are traversed, and for the current hypervisor currently traversed, a current calling instruction corresponding to the current hypervisor is generated for calling the current hypervisor.

5. The method according to claim 3, characterized in that: The mail processing terminal further includes a second server, wherein the service agreement of the second server is different from the service agreement of the first server; Calling a management program corresponding to the transaction end of the baseboard management controller based on the authentication result includes: In a case where it is determined that the authentication result indicates that the security authentication of the input parameter information has failed, determining that the user authentication corresponding to the input parameter information has failed; Constructing a first email through the baseboard management controller email agent, wherein the email subject of the first email is user authentication failure; The first email is sent to the out-of-band email agent by using the second server.

6. The method according to claim 1, characterized in that After executing the management program to manage the baseboard management controller, the method further includes: In the case of determining that the execution of the management program fails, constructing a second email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the second email is user authentication failure; The second mail is sent to the out-of-band mail proxy terminal by using the second server included in the mail processing terminal.

7. The method according to claim 1, characterized in that After executing the management program to manage the baseboard management controller, the method further includes: In the case of determining that the execution of the management program is successful, constructing a third email through the baseboard management controller email agent included in the email processing end, wherein the email subject of the third email is user authentication success; Acquire response information after executing the management program, fill the response information in the email body of the third email, and obtain the target email; The third mail is sent to the out-of-band mail proxy terminal by utilizing the second server included in the mail processing terminal.

8. A management device for a baseboard management controller, characterized in that: include: A receiving module, used for receiving out-of-band mails from an out-of-band mail agent; A parsing module, used for parsing the out-of-band email through the email processing terminal to obtain a parsing result; The management module is used to call the management program corresponding to the transaction end of the baseboard management controller based on the analysis result, and execute the management program to manage the baseboard management controller.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program implements the steps of the method described in any one of claims 1 to 7 when executed by a processor.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method described in any one of claims 1 to 7 are implemented.