Bare metal instruction sending method and device, equipment and storage medium
By establishing a communication connection between the bare metal management service and the bare metal server and using a proxy service device to generate IPMI commands, the problem of the bare metal management service and the bare metal server being unable to communicate directly is solved, enabling normal data and command transmission and improving transmission efficiency and flexibility.
Patent Information
- Application Number
- CN202310678016.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-08
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2043-06-08
AI Technical Summary
The bare metal management service and the bare metal server cannot communicate directly, resulting in data and command transmission failures.
By acquiring node information of bare metal nodes, a communication connection is established, and in the event of a connection failure, IPMI commands are generated using a proxy service device to achieve data and command transmission.
This ensures the normal transmission of data and commands when bare metal nodes and management nodes cannot communicate directly, improving transmission efficiency and flexibility.
Smart Images

Figure CN116567077B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of communication, in particular to a bare metal instruction sending method and device, equipment and storage medium. BACKGROUND
[0002] The bare metal management service is usually a service platform, system or server for managing bare metal. In a conventional deployment mode, the server of the bare metal management service can directly establish a communication connection with the bare metal server. However, considering real factors, there may be reasons such as network planning and network security, which result in that the bare metal management service cannot directly communicate with the server to which the bare metal belongs, thereby causing the bare metal management service and the bare metal server to fail to normally transmit instructions or data. SUMMARY
[0003] The present application provides a bare metal instruction sending method, device, equipment and storage medium, so as to realize normal transmission of data and instructions between nodes in the case that the bare metal node and the bare metal service management node cannot normally communicate.
[0004] According to an aspect of the present application, a bare metal instruction sending method is provided, applied to a bare metal service management node, and the method comprises:
[0005] Obtaining a bare metal operation request; the bare metal operation request comprises node information of a bare metal node;
[0006] According to the node information, a communication connection between the bare metal node is established, and a communication connection establishment result is obtained;
[0007] If the communication connection establishment result meets a preset proxy service transmission condition, request parameter data is generated according to the bare metal operation request;
[0008] The request parameter data is sent to at least one proxy service device, so that the proxy service device generates an intelligent platform management interface (IPMI) instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0009] Optionally, the request parameter data sent by the bare metal service management node is obtained, and an IPMI instruction is generated according to the request parameter data, comprising:
[0010] The request parameter data sent by the bare metal service management node is obtained through a message processing thread pool, and a second thread pool specification of a parameter processing thread pool is obtained;
[0011] According to the data amount of the request parameter data and the second thread pool specification, a second parameter data distribution strategy is determined;
[0012] According to the second parameter data distribution strategy, the request parameter data is sent to the parameter processing thread pool;
[0013] The IPMI instruction is generated by the parameter processing thread pool according to the request parameter data.
[0014] The above technical solution generates a distribution strategy according to the first thread pool specification corresponding to different proxy service devices and the amount of request parameter data, and distributes the request parameter data based on the distribution strategy, thereby improving the distribution efficiency of the request parameter data, and avoiding the situation of data distribution blockage caused by a large amount of request parameter data. The distribution of the parameter data is performed through the generated data distribution strategy, thereby improving the flexibility of the parameter data distribution.
[0015] According to an aspect of the present application, a bare metal instruction sending method is provided, applied to a proxy service device, and the method comprises:
[0016] Request parameter data sent by a bare metal service management node is obtained, and an IPMI instruction is generated according to the request parameter data; wherein the request parameter data is obtained by the bare metal management service node according to node information of a bare metal node in a bare metal operation request, a communication connection between the bare metal node and the bare metal management service node is established, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset proxy service transmission condition.
[0017] The IPMI instruction is sent to the bare metal node.
[0018] The above technical solution sends the generated request parameter data to the proxy service device for processing when the communication connection between the bare metal node and the bare metal service management node meets the proxy service transmission condition, and the proxy service device generates an IPMI instruction according to the request parameter data and distributes it to the bare metal node, thereby realizing the normal transmission of data and instructions between the bare metal node and the bare metal service management node when the communication connection between the bare metal node and the bare metal service management node cannot be normally established.
[0019] Optionally, the obtaining of the request parameter data sent by the bare metal service management node and the generation of the IPMI instruction according to the request parameter data comprise:
[0020] The request parameter data sent by the bare metal service management node is obtained through a message processing thread pool, and a second thread pool specification of a parameter processing thread pool is obtained.
[0021] A second parameter data distribution strategy is determined according to the data amount of the request parameter data and the second thread pool specification.
[0022] According to the second parameter data distribution strategy, the request parameter data is sent to the parameter processing thread pool;
[0023] The IPMI instruction is generated by the parameter processing thread pool according to the request parameter data.
[0024] The above technical solution generates a corresponding distribution strategy according to the data volume of the obtained request parameter data and the second thread pool specification, and performs the distribution of the request parameter data based on the corresponding distribution strategy, thereby improving the distribution efficiency of the proxy service device for the request parameter data. At the same time, the situation of data distribution blockage caused by a large amount of request parameter data is avoided. The distribution of the parameter data is performed by generating a corresponding distribution strategy, thereby improving the flexibility of the parameter data distribution.
[0025] Optionally, the first thread pool specification of the message processing thread pool and the second thread pool specification of the parameter processing thread pool are updated in the following manner:
[0026] The current proxy parameter data of the proxy service device in the current period is obtained;
[0027] The current proxy parameter data is input into a pre-trained specification updating network model to obtain a model output result output by the specification updating network model; the specification updating network model is trained based on historical proxy parameter data of the proxy service device in a historical period;
[0028] The model output result is used to update the first thread pool specification and the second thread pool specification.
[0029] The above technical solution inputs the current proxy parameter data into a pre-trained specification updating network model to obtain a model output result output by the specification updating network model, and uses the model output result to update the first thread pool specification and the second thread pool specification, thereby realizing the dynamic updating of the first thread pool specification and the second thread pool specification. The device performance of the proxy service device is continuously optimized, thereby continuously improving the data processing capability and efficiency for the request parameter data.
[0030] Optionally, the specification updating network model is trained in the following manner:
[0031] The historical proxy parameter data of the proxy service device in a historical period is obtained; the historical proxy parameter data includes historical input parameter data and historical output parameter data;
[0032] The historical proxy parameter data is input into a preset neural network model as a sample training set for model training to obtain the specification updating network model;
[0033] The neural network model comprises a hidden layer; and a number of hidden neurons in the hidden layer is determined based on an input data amount of the historical input parameter data and an output parameter data amount of the historical output parameter data.
[0034] The technical solution described above trains the historical agent parameter data as a sample training set, inputs the sample training set into a preset neural network model to perform model training, and obtains a specification update network model, thereby improving the training accuracy of the specification update network model; the number of hidden neurons in the neural network model is determined based on an input data amount of the historical input parameter data and an output data amount of the historical output parameter data, thereby accurately setting the neural network model, improving the model training accuracy, and further improving the determination accuracy of the thread pool specification.
[0035] According to another aspect of the present application, a bare metal instruction sending device is provided, which is configured in a bare metal service management node and comprises:
[0036] An operation request obtaining module is configured to obtain a bare metal operation request; the bare metal operation request comprises node information of a bare metal node;
[0037] A connection result determining module is configured to establish a communication connection with the bare metal node according to the node information, and obtain a communication connection establishment result;
[0038] A parameter data generating module is configured to generate request parameter data according to the bare metal operation request if the communication connection establishment result meets a preset agent service transmission condition;
[0039] A parameter data sending module is configured to send the request parameter data to at least one agent service device, so that the agent service device generates an intelligent platform management interface (IPMI) instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0040] According to another aspect of the present application, a bare metal instruction sending device is provided, which is configured in a bare metal service management node and comprises:
[0041] An instruction generating module is configured to obtain request parameter data sent by a bare metal service management node, and generate an IPMI instruction according to the request parameter data; wherein the request parameter data is generated by the bare metal service management node according to node information of a bare metal node in an obtained bare metal operation request, a communication connection between the bare metal service management node and the bare metal node is established according to the node information, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset agent service transmission condition;
[0042] The instruction sending module is configured to send the IPMI instruction to the bare metal node.
[0043] According to another aspect of the present application, there is provided an electronic device comprising:
[0044] at least one processor; and
[0045] a memory connected with the at least one processor; wherein
[0046] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the bare metal instruction sending method according to any one of the embodiments of the present application.
[0047] According to another aspect of the present application, there is provided a computer readable storage medium storing computer instructions for enabling a processor to perform the bare metal instruction sending method according to any one of the embodiments of the present application when executed by the processor.
[0048] The technical scheme of the embodiments of the present application establishes a communication connection with the bare metal node according to the node information in the obtained bare metal operation request, obtains a communication connection establishment result, and if the communication connection establishment result meets a preset proxy service transmission condition, generates request parameter data according to the bare metal operation request, sends the request parameter data to at least one proxy service device, so that the proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node. The above technical scheme sends the generated request parameter data to the proxy service device for processing when the communication connection establishment result between the bare metal node meets the proxy service transmission condition, and the proxy service device generates an IPMI instruction according to the request parameter data and sends it to the bare metal node, thereby realizing normal transmission of data and instructions between the bare metal node and the bare metal service management node in the case that direct communication connection between them is impossible.
[0049] It should be understood that the content described in this part is not intended to identify key or important features of the embodiments of the present application, nor is it used to limit the scope of the present application. Other features of the present application will become apparent from the following description. BRIEF DESCRIPTION OF DRAWINGS
[0050] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative labor.
[0051] Figure 1 is a flow chart of a bare metal instruction sending method according to an embodiment of the present application;
[0052] Figure 2 is a flow chart of a bare metal instruction sending method according to an embodiment of the present application;
[0053] Figure 3 is a flow chart of a bare metal instruction sending method according to an embodiment of the present application;
[0054] Figure 4 is a flow chart of a bare metal instruction sending method according to an embodiment of the present application;
[0055] Figure 5 is an interaction schematic diagram of a bare metal instruction sending method according to an embodiment of the present application;
[0056] Figure 6 is a structural schematic diagram of a bare metal instruction sending device according to an embodiment of the present application;
[0057] Figure 7 is a structural schematic diagram of a bare metal instruction sending device according to an embodiment of the present application;
[0058] Figure 8 is a structural schematic diagram of an electronic device implementing a bare metal instruction sending method according to an embodiment of the present application. DETAILED DESCRIPTION
[0059] In order to enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work should fall within the protection scope of the present application.
[0060] It should be noted that the terms "first", "second", and the like in the description and in the claims of the present application and above-described accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a particular chronological or sequential order. It should be understood that the data thus used can be interchanged under appropriate circumstances so that the embodiments of the application described herein can be implemented in other than the order illustrated or described herein. In addition, the terms "comprise" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product, or apparatus that includes a list of steps or units as processes, methods, systems, products, or apparatuses do not have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to such processes, methods, products, or apparatuses.
[0061] Embodiment one
[0062] Figure 1 A flowchart of a bare metal instruction sending method provided for the first embodiment of the present application. This embodiment can be applicable to the case where the bare metal service management node normally sends data and instructions to the bare metal node. The method can be executed by a bare metal instruction sending device, which can be realized in the form of hardware and / or software, and can be configured in the bare metal service management node. As shown in the figure, the method comprises: Figure 1
[0063] S110, obtaining a bare metal operation request; the bare metal operation request comprising node information of the bare metal node.
[0064] The bare metal operation request can be a series of HTTP (Hyper Text Transfer Protocol) requests for operating the bare metal. For example, the bare metal operation request can be a bare metal power operation request, etc.
[0065] The node information of the bare metal node can include node address information, node account information, and node identification information, etc. The node information of the bare metal node can be obtained by performing request analysis on the bare metal operation request.
[0066] The bare metal service management node can be a platform or system server node for managing the bare metal node. For example, the bare metal service management node can be an Ironic service node in the OpenStack open source cloud computing management platform project.
[0067] Exemplarily, a bare metal operation HTTP request sent by the outside world can be monitored, and when the bare metal operation HTTP request is monitored, the HTTP request is parsed to obtain a request parsing result. The request can be parsed by using an existing request parsing manner, and the present embodiment does not limit this. The bare metal service management node obtains node information of the bare metal node from the request parsing result, which can include node address information, node identification information, node account information, and the like.
[0068] S120, according to the node information, a communication connection between the bare metal node is established, and a communication connection establishment result is obtained.
[0069] The node information can include node address information and node identification information of the bare metal node corresponding to the bare metal operation request, and thus the bare metal node for the request operation can be determined by the node address information and the node identification information in the node information.
[0070] Exemplarily, the bare metal service management node can determine the bare metal node for the request operation according to the node identification information in the node information, and establish a communication connection between the bare metal node for the request operation according to the node address information in the node information, to obtain a communication connection establishment result. The communication connection establishment result can include communication connection establishment success and communication connection establishment failure.
[0071] S130, if the communication connection establishment result meets a preset proxy service transmission condition, a request parameter data is generated according to the bare metal operation request.
[0072] The proxy service transmission condition can be preset by a related technical person, for example, the proxy service transmission condition can be that the communication connection establishment result between the bare metal service management node and the bare metal node is communication connection establishment failure.
[0073] It should be noted that in a real scene, due to network planning or network security, there can be a situation that the bare metal service management node and the bare metal node cannot normally establish a communication connection. Therefore, the transmission of data or instructions between the bare metal service management node and the bare metal node can be realized through a third-party proxy service.
[0074] For example, if the communication connection establishment result meets the preset proxy service transmission condition, that is, the communication connection between the bare metal service management node and the bare metal node fails to be established, the bare metal service management node generates request parameter data according to the bare metal operation request; if the communication connection establishment result does not meet the preset proxy service transmission condition, that is, the communication connection between the bare metal service management node and the bare metal node is successfully established, the bare metal service management node can directly generate an IPMI (Intelligent Platform Management Interface) instruction according to the bare metal operation request, and send the IPMI instruction to the bare metal node.
[0075] The request parameter data can be obtained by analyzing the bare metal operation request. For example, the request parameter data can include bare metal drive data and IPMI command parameter data, etc.; the bare metal drive data can further include node address, node port and node account data of the bare metal node, etc.
[0076] Optionally, a path configuration file can be generated in advance and stored in the bare metal service management node. The path configuration file is configured with instruction or data delivery path information, and the path information can include path information of the bare metal node and path information of the proxy service device. The delivery mode of the instruction or data can be determined according to the path information in the configuration file.
[0077] Specifically, in the case that the communication connection between the bare metal service management node and the bare metal node is normal, the path configuration file stored in the node in advance can be obtained, and the delivery mode of the instruction or data can be selected according to the path information in the configuration file. If the configuration file has only the path information of the proxy service device, the request parameter data is delivered based on the path information of the proxy service device; if the configuration file has only the path information of the bare metal node, the IPMI instruction is delivered based on the path information of the bare metal node; if the configuration file has both the path information of the proxy service device and the path information of the bare metal node, the delivery mode of the instruction or data can be determined according to the priority of the corresponding path information. The priority of the path information can be preset by the relevant technical personnel in the path configuration file.
[0078] S140, send the request parameter data to at least one proxy service device, so that the proxy service device generates an intelligent platform management interface (IPMI) instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0079] The proxy service device can successfully establish a communication connection with the bare metal service management node and the bare metal node.
[0080] It should be noted that the bare metal service management node can obtain a large number of bare metal operation requests in the same time, and a large number of request parameter data are generated accordingly. Therefore, the number of proxy service devices can be at least one, and when the amount of request parameter data is large, multiple proxy service devices can process the request parameter data at the same time, thereby improving the efficiency of data processing. It should be noted that the same request is processed by only one proxy service device, and different proxy service devices can process different requests at the same time when there are a large number of requests.
[0081] For example, the bare metal service management node sends the request parameter data to at least one proxy service device, and specifically, the request parameter data can be sent to each proxy service device in a polling manner. For any proxy service device, after receiving the request parameter data, an IPMI instruction is generated according to the request parameter data. Specifically, the request parameter data can be spliced according to the IPMI instruction generation rule to obtain the IPMI instruction, and the generated IPMI instruction is sent to the bare metal node by the proxy service device.
[0082] The technical scheme of the embodiment of the present application establishes a communication connection with the bare metal node according to the node information in the obtained bare metal operation request, obtains a communication connection establishment result, generates request parameter data according to the bare metal operation request if the communication connection establishment result meets the preset proxy service transmission condition, and sends the request parameter data to at least one proxy service device, so that the proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node. The above technical scheme sends the generated request parameter data to the proxy service device for processing when the communication connection between the bare metal node and the bare metal service management node meets the proxy service transmission condition, and the proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node, thereby realizing normal transmission of data and instructions between the bare metal node and the bare metal service management node when direct communication connection between the bare metal node and the bare metal service management node is not available.
[0083] Embodiment two
[0084] Figure 2 A flowchart of a bare metal instruction sending method provided by the second embodiment of the present application is provided, and the present embodiment is optimized and improved on the basis of the above technical schemes.
[0085] Further, the step of "sending the request parameter data to the at least one proxy service device" is further detailed as "obtaining first thread pool specifications of message processing thread pools corresponding to each proxy service device; determining a first parameter data distribution strategy according to the first thread pool specifications and a data volume of the request parameter data; and sending the request parameter data to each proxy service device according to the first parameter data distribution strategy". This improves the sending mode of the request parameter data to each proxy service device. It should be noted that parts not described in detail in the embodiments of the present application can be referred to the descriptions of other embodiments.
[0086] As shown in Figure 2 , the method comprises the following specific steps:
[0087] S210, obtaining a bare metal operation request; the bare metal operation request comprises node information of a bare metal node.
[0088] S220, establishing a communication connection with the bare metal node according to the node information, and obtaining a communication connection establishment result.
[0089] S230, if the communication connection establishment result meets a preset proxy service transmission condition, generating request parameter data according to the bare metal operation request.
[0090] S240, obtaining first thread pool specifications of message processing thread pools corresponding to each proxy service device.
[0091] The message processing thread pool is used to receive the request parameter data sent by the bare metal service management node; the first thread pool specification can be a thread pool size of the message processing thread pool, and is used to represent a data volume or a request number of the request parameter data that can be processed by the message processing thread pool.
[0092] The first thread pool specifications of the message processing thread pools corresponding to each proxy service device can be the same or different, and can be preset by a relevant technical person.
[0093] It can be understood that the bare metal service management node obtains the first thread pool specifications of the message processing thread pools of each proxy service device, so as to subsequently reasonably distribute the request parameter data to each proxy service device, and avoid data congestion.
[0094] S250, determining a first parameter data distribution strategy according to the first thread pool specifications and a data volume of the request parameter data.
[0095] The first parameter data distribution strategy can be a distribution strategy of the data volume of the request parameter data that needs to be distributed by the bare metal service management node to each proxy server device.
[0096] The request parameter data can be sent to the corresponding proxy service device according to the first thread pool specification of each proxy service device, and the amount of data that can be processed by the message processing thread pool is matched.
[0097] For example, if there are proxy service device A, proxy service device B and proxy service device C, according to the first thread pool specification of the message processing thread pool of the proxy service device A, it can be determined that the proxy service device A can process 30 pieces of data; according to the first thread pool specification of the message processing thread pool of the proxy service device B, it can be determined that the proxy service device B can process 50 pieces of data; according to the first thread pool specification of the message processing thread pool of the proxy service device C, it can be determined that the proxy service device C can process 60 pieces of data. According to the amount of data of the request parameter data, it is determined whether it needs to be distributed to three proxy service devices, for example, if the amount of data of the request parameter data is 200 pieces of parameter data, the corresponding first parameter data allocation strategy is to distribute 30 pieces of data in 200 pieces of parameter data to the proxy service device A for processing, distribute 50 pieces of data in 200 pieces of parameter data to the proxy service device B for processing, and distribute 60 pieces of data in 200 pieces of parameter data to the proxy service device A for processing, and the remaining 60 pieces of parameter data are waiting for processing in the message queue. If the amount of data of the request parameter data is 40 pieces of parameter data, the 40 pieces of parameter data can be sent to the proxy service device B or the proxy service device C for processing, and the proxy service device can be selected by polling, which is not limited in the embodiment.
[0098] S260, according to the first parameter data allocation strategy, the request parameter data is sent to each proxy service device, so that the proxy service device generates intelligent platform management interface IPMI instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0099] For example, according to the amount of data of the request parameter data distributed to each proxy service device in the first parameter data allocation strategy, a corresponding amount of request parameter data is sent to each proxy service device, so that each proxy service device generates intelligent platform management interface IPMI instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0100] The technical scheme of the embodiment obtains the first thread pool specification of the message processing thread pool corresponding to each proxy service device, determines a first parameter data distribution strategy according to the first thread pool specification and the data volume of the request parameter data, and sends the request parameter data to each proxy service device according to the first parameter data distribution strategy. The technical scheme generates a distribution strategy according to the first thread pool specification corresponding to different proxy service devices and the volume of the request parameter data, and distributes the request parameter data based on the distribution strategy, thereby improving the distribution efficiency of the request parameter data, avoiding the situation of data distribution blockage caused by a large amount of request parameter data, and improving the flexibility of parameter data distribution through the generated data distribution strategy.
[0101] Embodiment three
[0102] Figure 3 A flowchart of a bare metal instruction sending method provided for the third embodiment of the application. The embodiment can be applied to the case where the bare metal service management node normally sends data and instructions to the bare metal node. The method can be executed by a bare metal instruction sending device, which can be implemented in the form of hardware and / or software, and can be configured in the proxy service device. As shown in the figure, the method comprises the following steps. Figure 3
[0103] S310, obtaining request parameter data sent by the bare metal service management node, and generating an IPMI instruction according to the request parameter data; wherein the request parameter data is obtained by the bare metal management service node according to the node information of the bare metal node in the obtained bare metal operation request, establishing a communication connection with the bare metal node, obtaining a communication connection establishment result, and generating the request parameter data according to the bare metal operation request when the communication connection establishment result meets the preset proxy service transmission condition.
[0104] The bare metal operation request can be a series of HTTP requests for operating the bare metal. For example, the bare metal operation request can be a bare metal power operation request.
[0105] The node information of the bare metal node can include node address information, node account information, node identification information, and the like. The node information of the bare metal node can be obtained by performing request analysis on the bare metal operation request.
[0106] The bare metal service management node can be a platform or a system server node for managing the bare metal node. For example, the bare metal service management node can be an Ironic service node in the OpenStack open source cloud computing management platform project.
[0107] The node information can include node address information and node identification information of the bare metal node corresponding to the bare metal operation request, and thus the bare metal node on which the operation is requested can be determined according to the node address information and the node identification information in the node information.
[0108] The bare metal operation HTTP request sent by the outside world can be monitored, and the HTTP request can be parsed to obtain a request parsing result when the bare metal operation HTTP request is monitored. The request parsing result can be parsed by using an existing request parsing method, and the present embodiment does not limit this. The bare metal service management node obtains node information of the bare metal node from the request parsing result, which can include node address information, node identification information, node account information, and the like.
[0109] The bare metal service management node can determine the bare metal node on which the operation is requested according to the node identification information in the node information, and establish a communication connection between the bare metal service management node and the bare metal node according to the node address information in the node information to obtain a communication connection establishment result. The communication connection establishment result can include communication connection establishment success and communication connection establishment failure.
[0110] The proxy service transmission condition can be preset by a related technical person, for example, the proxy service transmission condition can be that the communication connection establishment result between the bare metal service management node and the bare metal node is communication connection establishment failure.
[0111] The bare metal service management node generates request parameter data according to the bare metal operation request if the communication connection establishment result meets the preset proxy service transmission condition, that is, the communication connection establishment between the bare metal service management node and the bare metal node fails. The bare metal service management node generates an IPMI instruction directly according to the bare metal operation request and sends the IPMI instruction to the bare metal node if the communication connection establishment result does not meet the preset proxy service transmission condition, that is, the communication connection establishment between the bare metal service management node and the bare metal node succeeds.
[0112] The request parameter data can be obtained by parsing the bare metal operation request. For example, the request parameter data can include bare metal drive data and IPMI command parameter data, and the bare metal drive data can further include node address, node port, and node account data of the bare metal node.
[0113] The proxy service device, the bare metal service management node, and the bare metal node can successfully establish communication connections therebetween.
[0114] It should be noted that the bare metal service management node can obtain a large number of bare metal operation requests in the same time, and a large number of request parameter data are generated accordingly. Therefore, the number of proxy service devices can be at least one, and when the amount of request parameter data is large, multiple proxy service devices can process the request parameter data at the same time, thereby improving the efficiency of data processing.
[0115] For example, the bare metal service management node sends the request parameter data to at least one proxy service device, and specifically, the request parameter data can be sent to each proxy service device in a polling manner. For any proxy service device, after receiving the request parameter data, an IPMI instruction is generated according to the request parameter data. Specifically, the request parameter data can be spliced according to an IPMI instruction generation rule to obtain the IPMI instruction; and the generated IPMI instruction is sent to the bare metal node by the proxy service device.
[0116] Optionally, sending the request parameter data to the at least one proxy service device comprises: obtaining a first thread pool specification of a message processing thread pool corresponding to each proxy service device; determining a first parameter data distribution strategy according to the first thread pool specification and the amount of request parameter data; and sending the request parameter data to each proxy service device according to the first parameter data distribution strategy.
[0117] The message processing thread pool is configured to receive the request parameter data sent by the bare metal service management node; and the first thread pool specification can be the thread pool size of the message processing thread pool, which is used to represent the amount of request parameter data or the number of requests that can be processed by the message processing thread pool.
[0118] The first thread pool specification of the message processing thread pool corresponding to each proxy service device can be the same or different, and can be pre-set by a related technical person.
[0119] It can be understood that the bare metal service management node obtains the first thread pool specification of the message processing thread pool of each proxy service device, so as to subsequently reasonably distribute the request parameter data to each proxy service device, thereby avoiding data congestion.
[0120] The first parameter data distribution strategy can be a strategy for the bare metal service management node to distribute the amount of request parameter data to each proxy service device.
[0121] According to the first thread pool specification of each proxy service device, a number of request parameter data that matches the amount of data that can be processed by the message processing thread pool can be sent to the corresponding proxy service device.
[0122] S320, sending the IPMI instruction to the bare metal node.
[0123] Exemplarily, according to the data amount of the request parameter data distributed to each proxy service device in the first parameter data distribution strategy, a corresponding amount of request parameter data is sent to each proxy service device, so that each proxy service device generates an intelligent platform management interface (IPMI) instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node.
[0124] The technical scheme of the embodiment obtains the request parameter data sent by the bare metal service management node, and generates an IPMI instruction according to the request parameter data; wherein the request parameter data is obtained by the bare metal management service node according to the node information of the bare metal node in the obtained bare metal operation request, a communication connection between the bare metal management service node and the bare metal node is established, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset proxy service transmission condition; and the IPMI instruction is sent to the bare metal node. The technical scheme described above sends the generated request parameter data to the proxy service device for processing when the communication connection establishment result between the bare metal node and the bare metal service management node meets the proxy service transmission condition, and the proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node, thereby realizing normal transmission of data and instructions between the bare metal node and the bare metal service management node when direct communication connection between the bare metal node and the bare metal service management node is not available.
[0125] Embodiment Four
[0126] Figure 4 A flowchart of a bare metal instruction sending method provided by Embodiment Four of the present application is provided, and the embodiment is optimized and improved on the basis of the technical schemes described above.
[0127] Further, the step of “obtaining the request parameter data sent by the bare metal service management node, and generating an IPMI instruction according to the request parameter data” is refined as “obtaining the request parameter data sent by the bare metal service management node through a message processing thread pool, and obtaining a second thread pool specification of a parameter processing thread pool; determining a second parameter data distribution strategy according to the data amount of the request parameter data and the second thread pool specification; sending the request parameter data to the parameter processing thread pool according to the second parameter data distribution strategy; and generating an IPMI instruction by the parameter processing thread pool according to the request parameter data.” to perfect the acquisition mode of the request parameter data. It should be noted that the parts not described in detail in the embodiment of the present application can be referred to the descriptions of other embodiments.
[0128] As shown in FIG. 4, the method comprises the following specific steps: Figure 4
[0129] S410, obtaining the request parameter data sent by the bare metal service management node through a message processing thread pool, and obtaining a second thread pool specification of a parameter processing thread pool.
[0130] The request parameter data is obtained by the bare metal management service node according to the node information of the bare metal node in the obtained bare metal operation request, a communication connection between the bare metal management service node and the bare metal node is established, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset proxy service transmission condition.
[0131] The message processing thread pool can be a thread pool for obtaining the request parameter data deployed in the proxy service device. The thread pool size of the message processing thread pool can be a first thread pool specification, which can be pre-set by a related technical personnel according to actual needs. The first thread pool specification is used to represent the data size of the request parameter data that can be obtained.
[0132] The parameter processing thread pool can be a thread pool for processing the request parameter data and generating the IPMI instruction deployed in the proxy service device. The thread pool size of the parameter processing thread pool can be a second thread pool specification, which can be pre-set by a related technical personnel according to actual needs. The second thread pool specification is used to represent the data size of the request parameter data that can be processed.
[0133] Exemplarily, the request parameter data sent by the bare metal service management node is obtained by the message processing thread pool deployed in the proxy service device, and the data flow of the obtained request parameter data is determined. The second thread pool specification of the parameter processing thread pool deployed in the proxy service device can be obtained by the message processing thread pool.
[0134] S420, determining a second parameter data distribution strategy according to the data size of the request parameter data and the second thread pool specification.
[0135] The second parameter data distribution strategy can be a distribution strategy of the data size of the request parameter data that needs to be distributed to the parameter processing thread pool by the message processing thread pool.
[0136] Exemplarily, the distribution batch of the parameter processing thread pool can be determined according to the obtained second thread pool specification and the data size of the request parameter data, so as to obtain the second parameter data distribution strategy. Specifically, if the data size of the obtained request parameter data is 50 data, and according to the second thread pool specification, it can be determined that the parameter processing thread pool can process 20 data at a time, then the request parameter data is divided into three batches, and is sequentially issued to the parameter processing thread pool for processing, so as to avoid thread pool congestion. If the data flow of the obtained request parameter data is 10 data, and according to the second thread pool specification, it can be determined that the parameter processing thread pool can process 20 data at a time, then all the request parameter data can be directly issued to the parameter processing thread pool for processing.
[0137] S430, send the request parameter data to the parameter processing thread pool according to the second parameter data distribution strategy.
[0138] For example, the request parameter data can be sent to the parameter processing thread pool according to the distribution batch determined according to the second parameter data distribution strategy and the data volume of the request parameter data to be distributed in each batch.
[0139] S440, generate an IPMI instruction by the parameter processing thread pool according to the request parameter data.
[0140] S450, send the IPMI instruction to the bare metal node.
[0141] The technical solution of the embodiment obtains the request parameter data sent by the bare metal service management node through the message processing thread pool, and obtains the second thread pool specification of the parameter processing thread pool; determines the second parameter data distribution strategy according to the data volume of the request parameter data and the second thread pool specification; sends the request parameter data to the parameter processing thread pool according to the second parameter data distribution strategy; and generates an IPMI instruction by the parameter processing thread pool according to the request parameter data. The above technical solution generates a corresponding distribution strategy according to the data volume of the obtained request parameter data and the second thread pool specification, and performs distribution of the request parameter data based on the corresponding distribution strategy, thereby improving the distribution efficiency of the proxy service device for distributing the request parameter data. At the same time, the situation of data distribution blockage caused by the existence of a large amount of request parameter data is avoided. The flexibility of parameter data distribution is improved by generating a corresponding distribution strategy for parameter data distribution.
[0142] It should be noted that the first thread pool specification of the message processing thread pool and the second thread pool specification of the parameter processing thread pool of each proxy service device can be pre-set by a related technical person according to actual needs, and the set values of the first thread pool specification and the second thread pool specification corresponding to different proxy service devices can be the same or different. In order to further improve the processing efficiency of the request parameter data of each proxy service device, the first thread pool specification and the second thread pool specification corresponding to each proxy service device can be dynamically updated.
[0143] In an optional embodiment, the first thread pool specification of the message processing thread pool and the second thread pool specification of the parameter processing thread pool are updated as follows: obtaining the current proxy parameter data of the proxy service device in the current period; inputting the current proxy parameter data into a pre-trained specification update network model to obtain a model output result output by the specification update network model; the specification update network model is trained based on historical proxy parameter data of the proxy service device in a historical period; and updating the first thread pool specification and the second thread pool specification by using the model output result.
[0144] The current agent parameter data can include at least one of the number of times of calling the self-agent service device per minute, the rate of change of the number of times of calling the self-agent service device per minute, the data volume of the request parameter data accumulated in the message queue per minute for the self-agent service device, the CPU utilization of the server to which the self-agent service device belongs, and the memory utilization of the server to which the self-agent service device belongs in the current period.
[0145] The rate of change P of the number of times of calling the agent service device i is determined as follows:
[0146]
[0147] wherein a i represents the number of times of calling the agent service device i in the current minute; b i represents the number of times of calling the agent service device i in the previous minute; and c i represents the number of times of calling the agent service device i in the next minute.
[0148] The current agent parameter data further includes the current first thread pool specification and the current second thread pool specification in the current period.
[0149] The specification updating network model can be a network model pre-trained for determining the thread pool specification. For example, the specification updating network model can be a BP (Back-Propagation) network model. Optionally, the BP network model can be trained based on historical agent parameter data in a historical period to obtain a trained specification updating network model.
[0150] For example, the input parameter data in the model training process can be the rate of change of the number of times of calling the self-service device, the number of times of calling, the CPU utilization and the memory utilization of the server to which the self-service device belongs in the historical period; and the output parameter data can be the historical first thread pool specification and the historical second thread pool specification in the historical period.
[0151] The technical scheme of the optional embodiment can input the current agent parameter data into the specification updating network model pre-trained to obtain the model output result output by the specification updating network model, and update the first thread pool specification and the second thread pool specification by using the model output result, so as to dynamically update the first thread pool specification and the second thread pool specification, continuously optimize the device performance of the agent service device, and continuously improve the data processing capacity and efficiency of the request parameter data.
[0152] It should be noted that, in order to further improve the accuracy of updating the first thread pool specification and the second thread pool specification, the specification updating network model can be trained more accurately, thereby improving the model training accuracy of the specification updating model, and further improving the determination accuracy of the thread pool specification.
[0153] In an optional embodiment, the specification updating network model is trained in the following manner: historical agent parameter data of the agent service device in a historical period is obtained; the historical agent parameter data includes historical input parameter data and historical output parameter data; the historical agent parameter data is taken as a sample training set and input into a preset neural network model for model training to obtain the specification updating network model; wherein the neural network model includes a hidden layer; the number of hidden neurons in the hidden layer is determined based on the input data amount of the historical input parameter data and the output data amount of the historical output parameter data.
[0154] The historical agent parameter data can include the historical input parameter data and the historical output parameter data.
[0155] The historical input parameter data can include at least one of the number of times of calling the agent service device itself per minute, the change rate of the number of times of calling the agent service device itself per minute, the data amount of the request parameter data accumulated in the message queue per minute for the agent service device itself, the CPU utilization of the server to which the agent service device itself belongs, and the memory utilization of the server to which the agent service device itself belongs in the historical period.
[0156] The historical agent parameter data includes the historical first thread pool specification and the historical second thread pool specification in the historical period.
[0157] The neural network model can be preset by a related technical person, for example, the neural network model can be a BP network model. The preset BP network model can include three layers, namely an input layer, a hidden layer and an output layer. The hidden layer includes at least one hidden neuron. The number of neurons in the output layer is related to the input data amount of the historical input parameter data; the number of neurons in the output layer is related to the output data amount of the historical input parameter data.
[0158] Exemplarily, if the historical input parameter data respectively include X1, X2, X3, X4 and X5, wherein X1 represents the number of times of calling the self-agent service device per minute in the historical period, X2 represents the rate of change of the number of times of calling the self-agent service device per minute in the historical period, X3 represents the data volume of the request parameter data accumulated in the message queue of the self-agent service device per minute in the historical period, X4 represents the CPU utilization of the server to which the self-agent service device belongs in the historical period, and X5 represents the CPU utilization of the server to which the self-agent service device belongs in the historical period. Correspondingly, the number of neurons in the input layer is 5.
[0159] If the historical output parameter data are Y1 and Y2, wherein Y1 represents the historical first thread pool specification obtained in the historical period, and Y2 represents the historical second thread pool specification obtained in the historical period. Correspondingly, the number of neurons in the output layer is 2.
[0160] It should be noted that each neuron in the input layer is respectively connected with each hidden neuron in the hidden layer by a weight, and each hidden neuron is respectively connected with each neuron in the output layer by a weight, thereby forming a neural network model. The initial weight value between neurons can be preset by a related technical person and is continuously optimized and updated in the training process.
[0161] The number of hidden neurons in the hidden layer is determined based on the input data volume of the historical input parameter data and the output parameter data volume of the historical output parameter data. The number of neurons l in the hidden layer is determined as follows:
[0162]
[0163] wherein n represents the input data volume, that is, the number of parameters of the input parameters; m represents the output data volume, that is, the number of parameters of the output parameters; and a is a constant, and the value range is [0, 10].
[0164] Exemplarily, the historical input parameter data and the historical output parameter data are input into the preset neural network model as a sample training set to perform model training, and a specification updating network model trained is obtained.
[0165] The technical scheme of the optional embodiment inputs the historical agent parameter data as a sample training set into the preset neural network model to perform model training, and obtains a specification updating network model, thereby improving the training accuracy of the specification updating network model. The number of hidden neurons in the neural network model is determined based on the input data volume of the historical input parameter data and the output data volume of the historical output parameter data, thereby accurately setting the neural network model, improving the model training accuracy, and further improving the determination accuracy of the thread pool specification.
[0166] Embodiment five
[0167] Figure 5 An interaction schematic diagram of a bare metal instruction sending method provided for embodiment five of the present application. The present embodiment is based on the above-mentioned embodiments and provides a preferred example.
[0168] As Figure 5 shown, the method comprises the following specific steps:
[0169] S501, the bare metal service management node acquires a bare metal operation request;
[0170] S502, according to the node information of the bare metal node in the bare metal operation request, a communication connection between the bare metal service management node and the bare metal node is established, and a communication connection establishment result is obtained;
[0171] S503A, if the communication connection establishment result does not satisfy the preset proxy service transmission condition, an IPMI instruction is generated according to the bare metal operation request, and the IPMI instruction is sent to the bare metal node;
[0172] S503B, if the communication connection establishment result satisfies the preset proxy service transmission condition, request parameter data is generated according to the bare metal operation request.
[0173] S504, the first thread pool specification of the message processing thread pool corresponding to each proxy service device is acquired;
[0174] S505, according to the first thread pool specification and the data amount of the request parameter data, a first parameter data distribution strategy is determined;
[0175] S506, according to the first parameter data distribution strategy, the request parameter data is sent to each proxy service device;
[0176] S507, the proxy service device acquires the request parameter data sent by the bare metal service management node through the message processing thread pool, and acquires the second thread pool specification of the parameter processing thread pool;
[0177] S508, according to the data amount of the request parameter data and the second thread pool specification, a second parameter data distribution strategy is determined;
[0178] S509, according to the second parameter data distribution strategy, the request parameter data is sent to the parameter processing thread pool;
[0179] S510, the IPMI instruction is generated by the parameter processing thread pool according to the request parameter data;
[0180] S511, the IPMI instruction is sent to the bare metal node.
[0181] Embodiment six
[0182] Figure 6 A structural schematic diagram of a bare metal instruction sending device provided by an embodiment of the present application is provided. The bare metal instruction sending device provided by the embodiment of the present application can be applied to the case that a bare metal service management node normally sends data and instructions to a bare metal node. The bare metal instruction sending device can be realized in the form of hardware and / or software and is configured in the bare metal service management node. As shown in the figure, the device specifically includes an operation request obtaining module 601, a connection result determining module 602, a parameter data generating module 603 and a parameter data sending module 604. Among them, Figure 6
[0183] The operation request obtaining module 601 is used for obtaining a bare metal operation request. The bare metal operation request includes node information of a bare metal node.
[0184] The connection result determining module 602 is used for establishing a communication connection between the bare metal service management node and the bare metal node according to the node information and obtaining a communication connection establishment result.
[0185] The parameter data generating module 603 is used for generating request parameter data according to the bare metal operation request if the communication connection establishment result meets a preset proxy service transmission condition.
[0186] The parameter data sending module 604 is used for sending the request parameter data to at least one proxy service device so that the proxy service device generates an intelligent platform management interface (IPMI) instruction according to the request parameter data and sends the IPMI instruction to the bare metal node.
[0187] The technical scheme of the embodiment of the present application establishes a communication connection between the bare metal service management node and the bare metal node according to the node information in the obtained bare metal operation request and obtains a communication connection establishment result. If the communication connection establishment result meets a preset proxy service transmission condition, request parameter data is generated according to the bare metal operation request. The request parameter data is sent to at least one proxy service device so that the proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node. The above technical scheme sends the generated request parameter data to the proxy service device for processing when the communication connection establishment result between the bare metal node and the bare metal service management node meets the proxy service transmission condition. The proxy service device generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node, thereby realizing the normal transmission of data and instructions between the bare metal node and the bare metal service management node in the case that the two nodes cannot directly communicate.
[0188] Optionally, the parameter data sending module 604 includes:
[0189] The first specification acquisition unit is configured to acquire a first thread pool specification of a message processing thread pool corresponding to each proxy service device.
[0190] The first allocation strategy determination unit is configured to determine a first parameter data allocation strategy according to the first thread pool specification and a data volume of the request parameter data.
[0191] The parameter data sending unit is configured to send the request parameter data to each proxy service device according to the first parameter data allocation strategy.
[0192] The bare metal instruction sending device provided by the embodiment of the application can execute the bare metal instruction sending method provided by any embodiment of the application, and has the corresponding function modules and beneficial effects of the execution method.
[0193] Embodiment seven
[0194] Figure 7 A structural schematic diagram of a bare metal instruction sending device provided by embodiment seven of the application. The bare metal instruction sending device provided by the embodiment of the application can be applied to the case that a bare metal service management node normally sends data and instructions to a bare metal node. The bare metal instruction sending device can be realized in the form of hardware and / or software, and is configured in a proxy service device, such as a bare metal service management node. Figure 7 As shown in the figure, the device specifically includes an instruction generation module 701 and an instruction sending module 702. Wherein,
[0195] The instruction generation module 701 is configured to acquire request parameter data sent by a bare metal service management node, and generate an IPMI instruction according to the request parameter data. The request parameter data is obtained by the bare metal management service node according to node information of a bare metal node in an acquired bare metal operation request, a communication connection between the bare metal management service node and the bare metal node is established, a communication connection establishment result is obtained, and when the communication connection establishment result meets a preset proxy service transmission condition, the IPMI instruction is generated according to the bare metal operation request.
[0196] The instruction sending module 702 is configured to send the IPMI instruction to the bare metal node.
[0197] The technical scheme of the embodiment obtains request parameter data sent by the bare metal service management node, and generates an IPMI instruction according to the request parameter data; wherein the request parameter data is generated according to node information of a bare metal node in a bare metal operation request obtained by the bare metal management service node, a communication connection between the bare metal management service node and the bare metal node is established, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset proxy service transmission condition; and the IPMI instruction is sent to the bare metal node. The technical scheme described above sends the generated request parameter data to the proxy service device for processing when the communication connection establishment result between the bare metal node and the bare metal service management node meets the proxy service transmission condition, and generates an IPMI instruction according to the request parameter data and sends the IPMI instruction to the bare metal node by the proxy service device, thereby realizing normal transmission of data and instructions between the bare metal node and the bare metal service management node when direct communication connection between the bare metal node and the bare metal service management node is not available.
[0198] Optionally, the instruction generation module 701 comprises:
[0199] The second specification acquisition unit is configured to acquire request parameter data sent by a bare metal service management node through a message processing thread pool, and acquire a second thread pool specification of a parameter processing thread pool.
[0200] The second allocation strategy determination unit is configured to determine a second parameter data allocation strategy according to a data volume of the request parameter data and the second thread pool specification.
[0201] The parameter data sending unit is configured to send the request parameter data to the parameter processing thread pool according to the second parameter data allocation strategy.
[0202] The instruction generation unit is configured to generate an IPMI instruction according to the request parameter data by the parameter processing thread pool.
[0203] Optionally, the first thread pool specification of the message processing thread pool and the second thread pool specification of the parameter processing thread pool are updated in the following manner:
[0204] The current proxy parameter data of the proxy service device in a current period is acquired.
[0205] The current proxy parameter data is input into a specification update network model trained in advance to obtain a model output result output by the specification update network model; the specification update network model is trained based on historical proxy parameter data of the proxy service device in historical periods.
[0206] The first thread pool specification and the second thread pool specification are updated by using the model output result.
[0207] Optionally, the specification updating network model is trained in the following manner:
[0208] Obtain historical agent parameter data of the agent service device in a historical period; the historical agent parameter data includes historical input parameter data and historical output parameter data;
[0209] Input the historical agent parameter data as a sample training set into a preset neural network model for model training, to obtain the specification updating network model;
[0210] The neural network model includes a hidden layer; the number of hidden neurons in the hidden layer is determined based on an input data amount of the historical input parameter data and an output data amount of the historical output parameter data.
[0211] The bare metal instruction sending device provided in the embodiment can execute the bare metal instruction sending method provided in any embodiment of the application, and has the corresponding function modules and beneficial effects of the execution method.
[0212] Example Eight
[0213] Figure 8 A structural schematic diagram of an electronic device 80 that can be used to implement embodiments of the application is shown. The electronic device is intended to represent various forms of digital computers, such as laptops, desktops, tablets, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smartphones, wearable devices (e.g., headsets, glasses, watches, etc.), and other similar computing devices. The components shown here, their connections and relationships, and their functions, are meant to be examples only, and are not intended to limit the implementations of the applications described and / or claimed in this document.
[0214] As shown in Figure 8 The electronic device 80 includes at least one processor 81 and a memory, such as a read-only memory (ROM) 82, a random access memory (RAM) 83, etc., which are communicatively connected to the at least one processor 81, where the memory stores computer programs that can be executed by the at least one processor. The processor 81 can perform various appropriate actions and processes according to the computer programs stored in the read-only memory (ROM) 82 or loaded from the storage unit 88 into the random access memory (RAM) 83. In the RAM 83, various programs and data required for the operation of the electronic device 80 can also be stored. The processor 81, the ROM 82, and the RAM 83 are connected to each other through a bus 84. An input / output (I / O) interface 85 is also connected to the bus 84.
[0215] A plurality of components in the electronic device 80 are connected to the I / O interface 85, including: an input unit 86, such as a keyboard, a mouse, etc.; an output unit 87, such as various types of displays, speakers, etc.; a storage unit 88, such as a magnetic disk, an optical disk, etc.; and a communication unit 89, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 89 allows the electronic device 80 to exchange information / data with other devices through a computer network, such as the Internet, and / or various telecommunication networks.
[0216] The processor 81 can be various general and / or special purpose processing components with processing and computing capabilities. Some examples of the processor 81 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 81 performs various methods and processes described above, such as the bare metal instruction sending method.
[0217] In some embodiments, the bare metal instruction sending method can be implemented as a computer program tangibly embodied in a computer readable storage medium, such as the storage unit 88. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 80 via the ROM 82 and / or the communication unit 89. When the computer program is loaded onto the RAM 83 and executed by the processor 81, one or more steps of the bare metal instruction sending method described above can be performed. Alternatively, in other embodiments, the processor 81 can be configured to perform the bare metal instruction sending method by any other appropriate means, such as by means of firmware.
[0218] The various implementations of the systems and techniques described above can be realized in digital electronic circuitry, integrated circuitry, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on a chip (SOC), a programmable logic device (PLD), a computer hardware, firmware, software, and / or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
[0219] Computer programs for implementing the methods of the present application can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer program, when executed, can cause instructions defined in the flow charts and / or block diagrams to be implemented. The computer program can be executed entirely on a machine, partially on a machine, partially on a machine as a stand-alone software package and partially on a remote machine or entirely on a remote machine or server.
[0220] In the context of the present application, a computer readable storage medium can be a tangible medium that can contain or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer readable storage medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, a computer readable storage medium can be a machine readable signal medium. More specific examples of a machine readable storage medium will include one or more lines of a program of instructions in a transitory signal form, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0221] To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the electronic device. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
[0222] The systems and techniques described herein can be implemented in a computing system that includes a back end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front end component, e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described herein, or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0223] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. A server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system, to solve the defects of large management difficulty and weak business scalability in traditional physical host and VPS service.
[0224] It should be understood that the various forms of flow shown above can be re-ordered, added to, or deleted from without departing from the scope of the present disclosure. For example, the steps recited in the present disclosure can be performed in parallel, in series, or in a different order, and the present disclosure is not limited in this regard.
[0225] The specific embodiments described above are not intended to limit the scope of the present disclosure. Those skilled in the art will understand that various modifications, combinations, sub-combinations, and alternatives can be made to the specific embodiments without departing from the spirit and principles of the present disclosure. Any further modifications, equivalents, and / or alternatives come within the scope of the present disclosure as recited by the claims.
Claims
1. A bare metal instruction sending method, characterized by, Applied to a bare metal service management node, comprising: Obtaining a bare metal operation request; The bare metal operation request includes node information of a bare metal node; According to the node information, a communication connection between the bare metal node is established, and a communication connection establishment result is obtained; If the communication connection establishment result meets the preset proxy service transmission condition, the request parameter data is generated according to the bare metal operation request; The request parameter data includes bare metal drive data and IPMI command parameter data; The request parameter data is sent to at least one proxy service device, so that the proxy service device generates an intelligent platform management interface IPMI instruction according to the request parameter data, and sends the IPMI instruction to the bare metal node; Wherein, the request parameter data is sent to at least one proxy service device, comprising: Obtaining the first thread pool specification of the message processing thread pool corresponding to each proxy service device; According to each first thread pool specification and the data amount of the request parameter data, a first parameter data allocation strategy is determined; The first parameter data allocation strategy is the distribution strategy of the data amount of the request parameter data distributed by the bare metal service management node to each proxy service device respectively; According to the first parameter data allocation strategy, the request parameter data is sent to each proxy service device.
2. A bare metal instruction sending method, characterized by, Applied to a proxy service device, comprising: Obtaining the request parameter data sent by the bare metal service management node, and generating an IPMI instruction according to the request parameter data; Wherein, the request parameter data is generated by the bare metal management service node according to the node information of the bare metal node in the obtained bare metal operation request, the communication connection between the bare metal node is established, the communication connection establishment result is obtained, and when the communication connection establishment result meets the preset proxy service transmission condition, the bare metal operation request is generated; The request parameter data includes bare metal drive data and IPMI command parameter data; The IPMI instruction is sent to the bare metal node; Wherein, the bare metal service management node is used for sending the request parameter data to each proxy service device, comprising: Obtaining the first thread pool specification of the message processing thread pool corresponding to each proxy service device; According to each first thread pool specification and the data amount of the request parameter data, a first parameter data allocation strategy is determined; The first parameter data allocation strategy is the distribution strategy of the data amount of the request parameter data distributed by the bare metal service management node to each proxy service device respectively; According to the first parameter data allocation strategy, the request parameter data is sent to each proxy service device.
3. The method of claim 2, wherein, The request parameter data sent by the bare metal service management node is obtained, and the IPMI instruction is generated according to the request parameter data, comprising: Through the message processing thread pool, the request parameter data sent by the bare metal service management node is obtained, and the second thread pool specification of the parameter processing thread pool is obtained; According to the data amount of the request parameter data and the second thread pool specification, a second parameter data allocation strategy is determined; According to the second parameter data distribution strategy, the request parameter data is sent to the parameter processing thread pool; The parameter processing thread pool generates IPMI instructions according to the request parameter data.
4. The method of claim 3, wherein, The first thread pool specification of the message processing thread pool and the second thread pool specification of the parameter processing thread pool are updated in the following manner: Obtain the current proxy parameter data of the proxy service device in the current period; Input the current proxy parameter data into a pre-trained specification updating network model to obtain a model output result output by the specification updating network model; The specification updating network model is trained based on historical proxy parameter data of the proxy service device in historical periods; The model output result is used to update the first thread pool specification and the second thread pool specification.
5. The method of claim 4, wherein, The specification updating network model is trained in the following manner: Obtain historical proxy parameter data of the proxy service device in historical periods; the historical proxy parameter data includes historical input parameter data and historical output parameter data; Input the historical proxy parameter data as a sample training set into a preset neural network model for model training to obtain the specification updating network model; The neural network model includes a hidden layer; the number of hidden neurons in the hidden layer is determined based on the input data amount of the historical input parameter data and the output data amount of the historical output parameter data.
6. A bare metal instruction sending apparatus characterized by comprising: Configured in a bare metal service management node, comprising: An operation request acquisition module for acquiring a bare metal operation request; the bare metal operation request includes node information of a bare metal node; A connection result determination module for establishing a communication connection with the bare metal node according to the node information to obtain a communication connection establishment result; A parameter data generation module for generating request parameter data according to the bare metal operation request if the communication connection establishment result meets a preset proxy service transmission condition; the request parameter data includes bare metal drive data and IPMI command parameter data; A parameter data sending module for sending the request parameter data to at least one proxy service device, so that the proxy service device generates intelligent platform management interface (IPMI) instructions according to the request parameter data and sends the IPMI instructions to the bare metal node; The parameter data sending module includes: A first specification acquisition unit for acquiring the first thread pool specification of the message processing thread pool corresponding to each proxy service device; A first distribution strategy determination unit for determining a first parameter data distribution strategy according to the first thread pool specification of each proxy service device and the data amount of the request parameter data; the first parameter data distribution strategy is a distribution strategy of the data amount of the request parameter data that the bare metal service management node needs to distribute to each proxy service device respectively; A parameter data sending unit for sending the request parameter data to each proxy service device according to the first parameter data distribution strategy.
7. A bare metal instruction sending apparatus characterized by comprising: Configured in a proxy service device, comprising: The instruction generation module is configured to obtain request parameter data sent by the bare metal service management node, and generate IPMI instructions according to the request parameter data; wherein the request parameter data is obtained by the bare metal management service node according to node information of a bare metal node in a bare metal operation request, a communication connection between the bare metal management service node and the bare metal node is established, a communication connection establishment result is obtained, and the request parameter data is generated according to the bare metal operation request when the communication connection establishment result meets a preset proxy service transmission condition; the request parameter data includes bare metal drive data and IPMI command parameter data; The instruction sending module is configured to send the IPMI instructions to the bare metal node; The bare metal service management node is configured to send the request parameter data to each proxy service device, and includes the following steps: Obtain a first thread pool specification of a message processing thread pool corresponding to each proxy service device; Determine a first parameter data distribution strategy according to each first thread pool specification and a data amount of the request parameter data; the first parameter data distribution strategy is a distribution strategy of a data amount of the request parameter data that needs to be distributed by the bare metal service management node to each proxy service device respectively; Send the request parameter data to each proxy service device according to the first parameter data distribution strategy.
8. An electronic device, comprising: The electronic device includes: At least one processor; and A memory connected with the at least one processor in communication; wherein The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the bare metal instruction sending method in any one of claims 1 and / or claims 2-5.
9. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions for enabling the processor to execute the bare metal instruction sending method in any one of claims 1 and / or claims 2-5 when executed.
Citation Information
Patent Citations
Method and device for communication between devices
CN104518959A
Realization method of distributed message queue oriented to internet of things
CN109379443A