Method and apparatus for dynamic adjustment of resources, electronic device and storage medium

By obtaining virtual machine network configuration items and using a logic programming engine to predict network load, the optimal target node is selected for migration, thus solving the problem of not considering network impact in the DRS scheme and achieving network load minimization and stability.

CN118972390BActive Publication Date: 2025-11-28CHINA MOBILE (SUZHOU) SOFTWARE TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410989374.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-23
Publication Date
2025-11-28
Estimated Expiration
2044-07-23

AI Technical Summary

Technical Problem

Existing DRS solutions do not consider network impacts when scheduling virtual machines, which may increase the network load on compute nodes after cloud host creation, leading to problems such as network latency, packet loss, and jitter.

Method used

By acquiring the configuration items of the virtual network where the virtual machine resides, including control plane and forwarding plane configuration items, and using a logic programming engine to perform deductive reasoning, the network load of the virtual machine being migrated to each compute node is predicted. The target compute node with the lowest network load is selected for migration, and the migration process is monitored by a network visualization system to ensure that the network load is within the threshold.

Benefits of technology

It effectively reduces the impact of virtual machine migration on network load, ensures stable network performance, and avoids network latency, packet loss, and jitter issues.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118972390B_ABST
    Figure CN118972390B_ABST
Patent Text Reader

Abstract

The disclosure discloses a method for dynamically adjusting resources, obtaining configuration items of each computing node in a virtual network where a to-be-migrated virtual machine is located; based on the configuration items, obtaining values of each network element factor contained in the configuration items of a first computing node where the to-be-migrated virtual machine is currently located; based on the values of each network element factor, respectively predicting network loads of the to-be-migrated virtual machine migrated to a plurality of second computing nodes in the virtual network, and determining a target computing node where the to-be-migrated virtual machine finally migrates according to the network loads of each second computing node. Through the values of each network element factor, the network loads of the to-be-migrated virtual machine migrated to the plurality of second computing nodes are respectively predicted, and a second computing node is selected as the target computing node where the to-be-migrated virtual machine finally migrates according to the network loads of the second computing nodes, the target computing node is the optimal migration scheduling node of the to-be-migrated virtual machine, and the network load caused by the migration of the to-be-migrated virtual machine is minimized.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of data processing, and particularly relates to a resource dynamic adjustment method and device, electronic equipment and storage medium. BACKGROUND

[0002] The dynamic resource scheduling (DRS) dynamically balances system resource utilization according to system resource utilization. The DRS dynamically migrates a virtual machine on a computing node with a high CPU usage rate to a computing node with a relatively low CPU usage rate according to the CPU usage rate of the computing node, so as to ensure that the virtual machine can efficiently run on the computing node with the low CPU usage rate.

[0003] The DRS scheme specifically includes: 1, setting a host starting the DRS, and only the virtual machine on the host can be dynamically migrated; 2, setting a measurement rule: when the host starting the DRS exceeds a threshold value for three times (configurable) in continuous checking, triggering the DRS optimization scheduling; 3, selection of the virtual machine to be migrated: selecting a virtual machine with the smallest resource usage rate to migrate, and only one virtual machine is migrated each time; 4, selection of the target host: selecting a host with the smallest resource usage rate as the target host, and the resource usage rate of the target host plus the resource usage rate of the migrated virtual machine should not exceed the threshold value.

[0004] The above adjustment method can realize resource scheduling, but when scheduling and allocating the virtual machine instance, the DRS scheme does not consider the influence of the virtual machine scheduling on the service from the network aspect, which may cause the network load of the computing node to increase after the cloud host creation and scheduling are completed, and cause the network delay, packet loss, jitter and other problems of the cloud host or the entire computing node after the cloud host creation is completed. SUMMARY

[0005] The present disclosure provides a resource dynamic adjustment method, device, electronic equipment and storage medium. The main purpose is to solve the problem that the DRS scheme does not consider the influence of the virtual machine scheduling on the service from the network aspect, which may cause the network load of the computing node to increase after the cloud host creation and scheduling are completed, and cause the network delay, packet loss, jitter and other problems of the cloud host or the entire computing node after the cloud host creation is completed.

[0006] According to a first aspect of the present disclosure, a resource dynamic adjustment method is provided, which includes:

[0007] obtaining configuration items of each computing node in a virtual network where a virtual machine to be migrated is located; the configuration items include at least one of a control plane configuration item and a forwarding plane configuration item;

[0008] based on the configuration item, obtaining respective values of each network element element in the configuration item of the first computing node where the to-be-migrated virtual machine currently resides;

[0009] based on the respective values of each network element element, respectively predicting network loads of the to-be-migrated virtual machine migrating to each second computing node in the virtual network, and determining a target computing node for the to-be-migrated virtual machine to migrate to according to the network loads of each second computing node.

[0010] In some embodiments, the based on the respective values of each network element element, respectively predicting network loads of the to-be-migrated virtual machine migrating to each second computing node in the virtual network comprises:

[0011] based on the logical programming engine adopting a deductive reasoning manner to the respective values of each network element element, respectively predicting network loads of the to-be-migrated virtual machine migrating to each second computing node.

[0012] In some embodiments, the obtaining the configuration item of each computing node in the virtual network where the to-be-migrated virtual machine resides comprises:

[0013] determining a control plane network element abstract data set and a forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling control plane configuration items and forwarding plane configuration items of the virtual network where the to-be-migrated virtual machine resides;

[0014] the based on the configuration item, obtaining respective values of each network element element contained in the configuration item of the to-be-migrated virtual machine comprises:

[0015] collecting a network snapshot of each computing node of the virtual network where the to-be-migrated virtual machine resides, the network snapshot being respective values of each network element element contained in the control plane configuration item and / or the forwarding plane configuration item.

[0016] In some embodiments, the based on the logical programming engine adopting a deductive reasoning manner to the respective values of each network element element, respectively predicting network loads of the to-be-migrated virtual machine migrating to each second computing node comprises:

[0017] According to a pre-set conversion relationship between different network element elements and logical programming engine semantic values, converting the values of the network element elements in the network snapshot into corresponding logical programming engine semantic values;

[0018] deductively reasoning each of the logical programming engine semantic values to respectively predict network loads of the to-be-migrated virtual machine migrating to a plurality of second computing nodes.

[0019] In some embodiments, the predicting, by each of the logical programming engine semantics value, the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes comprises:

[0020] substituting each of the logical programming engine semantics value into the control plane network element abstract data set and the forwarding plane network element abstract data set, respectively;

[0021] based on the control plane network element abstract data set and the forwarding plane network element abstract data set substituted with the logical programming engine semantics value, reasoning and solving the network load function to predict the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes, respectively.

[0022] In some embodiments, the determining, according to the network load of each of the second computing nodes, the target computing node to which the to-be-migrated virtual machine is finally migrated comprises:

[0023] selecting, from the logical programming engine semantics value corresponding to each of the second computing nodes, the semantics value matching the optimal solution, and taking the second computing node corresponding to the selected semantics value as the target computing node to which the to-be-migrated virtual machine is finally migrated.

[0024] In some embodiments, the predicting, by each of the logical programming engine semantics value, the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes comprises:

[0025] based on the logical programming engine semantics value corresponding to the value of the network element element in the network snapshot of a target computing node, reasoning and solving the network load function to obtain the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes.

[0026] In some embodiments, the determining, according to the network load of each of the second computing nodes, the target computing node to which the to-be-migrated virtual machine is finally migrated comprises:

[0027] obtaining the logical programming engine semantics value corresponding to the global optimal solution of the network load function greater than or equal to the pre-set network load threshold value;

[0028] selecting, from the logical programming engine semantics value corresponding to each of the second computing nodes, the semantics value matching the optimal solution, and taking the second computing node corresponding to the selected semantics value as the target computing node to which the to-be-migrated virtual machine is finally migrated.

[0029] In some embodiments, the determining the control plane network element abstract data set and the forwarding plane network element abstract data set comprises:

[0030] in response to the migration instruction of the to-be-migrated virtual machine, obtaining the control plane configuration item and the forwarding plane configuration item of the virtual network where the to-be-migrated virtual machine is located.

[0031] Formalize modeling of the network element elements in the control plane configuration item and the forwarding plane configuration item respectively to obtain the control plane network element abstract data set and the forwarding plane network element abstract data set.

[0032] In some embodiments, after determining the target computing node to which the to-be-migrated virtual machine is finally migrated according to the network load of each second computing node, the method further comprises:

[0033] migrating the to-be-migrated virtual machine from the first computing node to the target computing node;

[0034] monitoring the overall network load condition through a network visualization system, and ending the migration after monitoring that the network load is less than a preset disturbance threshold.

[0035] In some embodiments, the monitoring the overall network load condition through the network visualization system, and ending the migration after monitoring that the network load is less than a preset disturbance threshold comprises:

[0036] monitoring the traffic of each computing node in the virtual network, and analyzing the network load usage of each computing node;

[0037] globally previewing the network load and the network snapshot based on the network visualization system constructed by prometheus;

[0038] monitoring whether the network load is less than the preset disturbance threshold;

[0039] in a case where it is determined that the network load is less than the preset disturbance threshold, completing the migration of the to-be-migrated virtual machine.

[0040] According to a second aspect of the present disclosure, a resource dynamic adjustment apparatus is provided, comprising:

[0041] a first obtaining unit configured to obtain configuration items of each computing node in a virtual network in which a to-be-migrated virtual machine is located; the configuration items comprise at least one of a control plane configuration item and a forwarding plane configuration item;

[0042] a second obtaining unit configured to obtain, based on the configuration items, values of each network element element in the configuration items of a first computing node in which the to-be-migrated virtual machine is currently located;

[0043] a prediction unit configured to respectively predict network loads of each second computing node in the virtual network to which the to-be-migrated virtual machine is migrated, based on the values of each network element element;

[0044] a determination unit configured to determine a target computing node to which the to-be-migrated virtual machine is finally migrated, according to the network load of each second computing node.

[0045] In some embodiments, the prediction unit is further configured to predict, based on the logical programming engine, the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes respectively by using deductive reasoning on the respective value of each of the network element elements.

[0046] In some embodiments, the first obtaining unit is further configured to determine a control plane network element abstract data set and a forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling control plane configuration items and forwarding plane configuration items of a virtual network to which the to-be-migrated virtual machine belongs.

[0047] The second obtaining unit is further configured to collect a network snapshot of each computing node of a virtual network to which the to-be-migrated virtual machine belongs, wherein the network snapshot is the respective value of each of the network element elements contained in the control plane configuration items and / or the forwarding plane configuration items.

[0048] In some embodiments, the prediction unit comprises:

[0049] A conversion module configured to convert the value of each of the network element elements in the network snapshot into a corresponding logical programming engine semantic value according to a preset conversion relationship between different network element elements and logical programming engine semantic values.

[0050] A first prediction module configured to predict, by using deductive reasoning on each of the logical programming engine semantic values, the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes respectively.

[0051] In some embodiments, the first prediction module is further configured to:

[0052] substitute each of the logical programming engine semantic values into the forwarding plane network element abstract data set and the control plane network element abstract data set respectively;

[0053] infer and solve a network load function based on the forwarding plane network element abstract data set and the control plane network element abstract data set substituted with the logical programming engine semantic values, to predict the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes respectively.

[0054] In some embodiments, the determination unit is further configured to determine the second computing node corresponding to the minimum network load as the target computing node to which the to-be-migrated virtual machine is finally migrated.

[0055] In some embodiments, the prediction unit further comprises:

[0056] a second prediction unit, configured to infer a solution of the network load function based on the converted logical programming engine semantic values corresponding to the values of the network element elements in the network snapshot of the target computing node, to obtain a network load of the to-be-migrated virtual machine migrated to each of the second computing nodes.

[0057] In some embodiments, the determining unit is further configured to:

[0058] obtaining a logical programming engine semantic value corresponding to a global optimal solution of the network load function greater than or equal to a preset network load threshold;

[0059] selecting, from the logical programming engine semantic values corresponding to each of the computing nodes, a semantic value matching the logical programming engine semantic value corresponding to the global optimal solution, and taking a second computing node corresponding to the selected semantic value as a target computing node to which the to-be-migrated virtual machine is finally migrated.

[0060] In some embodiments, the first obtaining unit is further configured to:

[0061] in response to a migration instruction of a to-be-migrated virtual machine, obtaining a control plane configuration item and a forwarding plane configuration item of a virtual network on which the to-be-migrated virtual machine is located;

[0062] formalizing modeling of network element elements in the control plane configuration item and the forwarding plane configuration item, respectively, to obtain a control plane network element abstract data set and a forwarding plane network element abstract data set.

[0063] In some embodiments, the apparatus further comprises:

[0064] a migration unit, configured to, after determining the target computing node to which the to-be-migrated virtual machine is finally migrated according to the network load of each of the second computing nodes, migrate the to-be-migrated virtual machine from the first computing node to the target computing node.

[0065] a monitoring unit, configured to monitor an overall network load condition through a network visualization system, and end migration after monitoring that the network load is less than a preset disturbance threshold.

[0066] In some embodiments, the monitoring unit is further configured to:

[0067] monitoring traffic of each computing node in the virtual network, and analyzing network load usage of each of the computing nodes;

[0068] the network visualization system constructed based on prometheus performs global preview on the network load and the network snapshot;

[0069] monitoring whether the network load is less than the preset disturbance threshold;

[0070] In a case where it is determined that the network load is less than the preset disturbance threshold, migration of the virtual machine to be migrated is completed.

[0071] According to a third aspect of the present disclosure, an electronic device is provided, comprising:

[0072] at least one processor; and

[0073] a memory connected with the at least one processor in communication; wherein,

[0074] The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method of the first aspect.

[0075] According to a fourth aspect of the present disclosure, a non-transitory computer readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to perform the method of the first aspect.

[0076] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the method of the first aspect.

[0077] The method, device, electronic device and storage medium provided by the present disclosure obtain configuration items of each computing node in a virtual network where a virtual machine to be migrated is located; the configuration items include at least one of control plane configuration items and forwarding plane configuration items; based on the configuration items, values of each network element element of the configuration items of a first computing node where the virtual machine to be migrated is currently located are obtained; based on the values of each network element element, network loads of each second computing node in the virtual network where the virtual machine to be migrated is migrated are respectively predicted, and a target computing node where the virtual machine to be migrated is finally migrated is determined according to the network loads of each second computing node. The embodiment of the present disclosure predicts the network loads of each second computing node where the virtual machine to be migrated is migrated by the values of each network element element, and selects one of the second computing nodes as the target computing node where the virtual machine to be migrated is finally migrated according to the network loads of the second computing nodes. The target computing node is the optimal migration scheduling node of the virtual machine to be migrated, and minimizes the network load caused by migration of the virtual machine to be migrated.

[0078] 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 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

[0079] The accompanying drawings are used to better understand the present scheme, and do not constitute a limitation on the present disclosure. Among them:

[0080] Figure 1 A flowchart of a resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 1.

[0081] Figure 2 A flowchart of another resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 2.

[0082] Figure 3 A flowchart of another resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 3.

[0083] Figure 4 A flowchart of another resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 4.

[0084] Figure 5 A flowchart of another resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 5.

[0085] Figure 6 A flowchart of another resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 6.

[0086] Figure 7 A structural diagram of a resource dynamic adjustment device provided by an embodiment of the present disclosure is shown in FIG. 7.

[0087] Figure 8 A structural diagram of another resource dynamic adjustment device provided by an embodiment of the present disclosure is shown in FIG. 8.

[0088] Figure 9 A schematic block diagram of an example electronic device provided by an embodiment of the present disclosure is shown in FIG. 9. DETAILED DESCRIPTION

[0089] Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, which include various details of the embodiments of the present disclosure to help understanding, and should be considered as merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Also, in order to be clear and concise, descriptions of well-known functions and structures are omitted in the following description.

[0090] The resource dynamic adjustment method, device, electronic device and storage medium of the embodiments of the present disclosure are described below with reference to the accompanying drawings.

[0091] Figure 1 A flowchart of a resource dynamic adjustment method provided by an embodiment of the present disclosure is shown in FIG. 1.

[0092] As Figure 1As shown, the method comprises the following steps:

[0093] In step 101, configuration items of each computing node in a virtual network where the virtual machine to be migrated is located are acquired; the configuration items include at least one of control plane configuration items and forwarding plane configuration items.

[0094] The virtual machine migration scheduling server (referred to as server) receives a migration instruction initiated by the virtual machine to be migrated; or, the server synchronously acquires configuration items of a virtual network where the virtual machine to be migrated is located after monitoring that there currently exists the virtual machine to be migrated, the configuration items described in the embodiments of the present application include but are not limited to at least one of control plane configuration items and forwarding plane configuration items.

[0095] In some embodiments, the control plane configuration items described in the embodiments of the present application include but are not limited to one or more of the following: a routing protocol, a Neutron configuration item, and the like; the forwarding plane configuration items include but are not limited to one or more of the following: a flow table, a session table, a routing table, and a network ACI configuration item, and the like.

[0096] In step 102, based on the configuration items, values of each network element element included in the configuration items of the first computing node where the virtual machine to be migrated is currently located are acquired.

[0097] An ovs-exporter is installed on all computing nodes of the virtual network where the virtual machine to be migrated is located, and a collection period is set, for example, 5 minutes, network reachability, bandwidth fluctuation, number of new sessions, and number of concurrent sessions, and other network attribute information of the computing nodes are collected, the ovs-exporter plug-in is configured to interface with prometheus, and a computing node network snapshot is formed through data management. Based on the deployment of the ovs-exporter plug-in of the computing node, collection and visual display of T+0 computing node network index information are realized.

[0098] In the embodiments of the present application, when the values of each network element element included in the configuration items of the first computing node where the virtual machine to be migrated is currently located are acquired, the values of each network element element of the first computing node are collected by a virtual network collection module in the first computing node.

[0099] The server collects real-time network snapshots of multiple computing nodes, denoted as (j, k, l...). Wherein, j represents a real-time network snapshot of a computing node, k represents a real-time network snapshot of another computing node, and so on.

[0100] In some embodiments, the network snapshot can be in the form of a table.

[0101] In a specific application, the collected network snapshot can be the specific values of each network element element included in the forwarding plane configuration item and the control panel configuration item. For example, the network snapshot of a certain computing node can include the specific values of one or more network element elements such as the flow table, routing table, ACL, and session table of the computing node, and the specific values of one or more network element elements such as the configuration items of the flow table, session table, routing table, and network ACL of the computing node.

[0102] In step 103, based on the values of each network element element, the network load of the to-be-migrated virtual machine migrated to each second computing node in the virtual network is predicted respectively, and the target computing node to which the to-be-migrated virtual machine is finally migrated is determined according to the network load of each second computing node.

[0103] In order to minimize the network load caused by the migration of the to-be-migrated virtual machine, the network load of the to-be-migrated virtual machine migrated to each second computing node in the virtual network is predicted respectively, and the target computing node to which the to-be-migrated virtual machine is finally migrated is determined from all the network loads.

[0104] The method for dynamically adjusting resources provided by the present disclosure includes: obtaining configuration items of each computing node in a virtual network in which a to-be-migrated virtual machine is located; the configuration items include at least one of a control plane configuration item and a forwarding plane configuration item; based on the configuration items, obtaining the values of each network element element included in the configuration items of a first computing node in which the to-be-migrated virtual machine is currently located; based on the values of each network element element, predicting the network load of the to-be-migrated virtual machine migrated to each second computing node in the virtual network respectively, and determining the target computing node to which the to-be-migrated virtual machine is finally migrated according to the network load of each second computing node. The embodiment of the present disclosure predicts the network load of the to-be-migrated virtual machine migrated to multiple second computing nodes respectively through the values of each network element element, selects one of the multiple second computing nodes as the target computing node to which the to-be-migrated virtual machine is finally migrated according to the network load of the second computing node, and minimizes the network load caused by the migration of the to-be-migrated virtual machine.

[0105] The embodiment of the present disclosure also provides a method for dynamically adjusting resources, which can be implemented by, but is not limited to, the following modes, as shown in FIG. 6, which includes the following steps: Figure 2

[0106] ​Step 201, determining a control plane network element abstract data set and a forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling control plane configuration items and forwarding plane configuration items of a virtual network in which the virtual machine to be migrated is located.

[0107] The server performs formal modeling of network forwarding plane behavior based on forwarding plane configuration items (flow table / route table / ACL / session table, etc. network element elements), specifically, the network element elements in the forwarding plane configuration items are converted into a forwarding plane network element abstract data set according to the formal modeling method. For example, the forwarding plane network element abstract data set can be represented as A(x, y, z), wherein x, y, and z respectively represent a forwarding plane configuration item such as a flow table, an ACL, and a session table. Similarly, the control plane configuration items of the virtual machine to be migrated are also converted into a corresponding control plane network element abstract data set B(a, b, c) in a similar manner.

[0108] The forwarding plane network element abstract data set A(x, y, z) and the control plane network element abstract data set B(a, b, c) are equivalent to the data framework set to be filled with specific values. Subsequently, the corresponding data values of the network snapshot will be filled in as the values of x, y, and z in A(x, y, z) and the values of a, b, and c in B(a, b, c).

[0109] The definition of how network components in OpenStack forward packets is converted into a formal specification, real-time network configuration is extracted from the existing network to build a configuration snapshot, and virtual network environment / network snapshot / component forwarding behavior is converted into a satisfiability problem, which specifically includes:

[0110] Network control plane modeling: based on routing protocols and OpenStack network environment configuration, the control plane packet forwarding logic is converted into a formal model.

[0111] Network forwarding plane modeling: based on forwarding plane configuration (routing table, network ACL configuration, etc.), the network component forwarding plane behavior is converted into a formal model.

[0112] In the embodiments of the present disclosure, the formal model is a mathematical form-based technology used to divide and analyze a system, which can effectively describe dynamic system parameters in the system, use mathematical equations and functions to describe various system behaviors, and construct effective computer models to achieve simulation and analysis effects. The core of the formal model is a system description, such as quantitative description, graphical description, text-based description, and graph-based description, etc.

[0113] In step 202, a network snapshot of each computing node of the virtual network where the to-be-migrated virtual machine is located is collected, and each network element element in the control plane configuration item and / or the forwarding plane configuration item contains a respective value;

[0114] A virtual network collection module (ovs-exporter) is installed on all computing nodes of the virtual network where the to-be-migrated virtual machine is located, and a collection period is set, for example, 5 minutes, to collect network attribute information such as network reachability, bandwidth fluctuation, new session number, and concurrent session number of the computing node, configure the ovs-exporter plug-in to interface with prometheus, and form a computing node network snapshot through data governance. Based on the deployment of the computing node ovs-exporter plug-in, the collection and visual display of T+0 computing node network index information are realized.

[0115] The server collects real-time network snapshots of a plurality of computing nodes, denoted as (j, k, l...). Wherein, j represents a real-time network snapshot of a computing node, k represents a real-time network snapshot of another computing node, and so on.

[0116] In some embodiments, the network snapshot can be in the form of a table.

[0117] In a specific application process, the collected network snapshot can be the specific value of each network element element contained in the forwarding plane configuration item and the control plane configuration item. For example, the network snapshot of a certain computing node can include the specific value of one or more network element elements such as the flow table / routing table / ACL / session table of the computing node, and the specific value of one or more network element elements such as the configuration item of the flow table / session table / routing table and network ACL of the computing node.

[0118] For ease of understanding, taking the specific value in the routing table as an example, it is assumed that the specific value in the routing table can be 255.255.255.255. The above is only an example, and the specific value corresponding to the network element element is not limited in the embodiments of the present disclosure.

[0119] In step 203, the logical programming engine is used to predict the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes by using a deductive reasoning method.

[0120] In the execution of this step, the method shown in the following table can be used, but is not limited to Figure 3 The method shown in the following table, comprising:

[0121] In step 2031, the value of the network element element in the network snapshot is converted into a corresponding logical programming engine semantic value according to a pre-set conversion relationship between different network element elements and logical programming engine semantic values.

[0122] The server invokes the logic programming pydatalog engine to perform: according to the preset conversion relationship between different network element factors and pydatalog semantic values, converting the values of the network element factors in the network snapshot of each computing node into corresponding pydatalog semantic values.

[0123] As an example of step 202, 255.255.255.255 in the routing table contained in the network snapshot can be converted into a numerical value. Specifically, 255.255.255 can be mapped to a 32-bit binary number.

[0124] It should be clear that the above examples are only illustrative and not a limitation on the conversion form and specific numerical value of the semantic value.

[0125] Step 2032, respectively predicting the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes through deductive reasoning of each of the logic programming engine semantic values.

[0126] Based on the above-mentioned preparation work of "network knowledge modeling" and "network attribute modeling", the migration scheme can be implemented in the following two ways for the processing scheme of the to-be-migrated virtual machine migration:

[0127] The first way, as shown in Figure 4 , specifically includes:

[0128] Step 301, respectively substituting each of the logic programming engine semantic values into the forwarding plane network element abstract data set and the control plane network element abstract data set.

[0129] The first way is a forward reasoning way.

[0130] The network load problem is converted into a multi-order first-order logic formula, and after the to-be-migrated virtual machine triggers the migration action, the network snapshot of the migration target node is used as an input parameter, based on knowledge graph deductive reasoning / forward reasoning (based on rule discovery new facts), and the pydatalog engine is used to solve the overall load of the virtual network after the virtual machine migration.

[0131] The server substitutes the pydatalog semantic values corresponding to the values of the network element factors in the network snapshot of each computing node obtained by conversion into the corresponding forwarding plane network element abstract data set and the control plane network element abstract data set.

[0132] Step 302, based on the forwarding plane network element abstract data set and the control plane network element abstract data set substituted with the logic programming engine semantic values, reasoning and solving the network load function to respectively predict the network load of the to-be-migrated virtual machine migrated to each of the second computing nodes.

[0133] The server infers and solves the specific implementation process of the network load function (equation f(A, B)) based on the pydatalog semantic value: the pydatalog semantic value corresponding to the value of the network element element in the network snapshot of a computing node is taken as the input corresponding to A(x, y, z), B(a, b, c), that is, the pydatalog semantic value is taken as the specific numerical value of x, y, z, a, b, c, and the value of the function f(A, B) is calculated. The value of the calculated function f(A, B) represents the network load of migrating the to-be-migrated virtual machine to the second computing node.

[0134] Step 303: Taking the second computing node corresponding to the minimum network load as the target computing node for the final migration of the to-be-migrated virtual machine.

[0135] Method two, as shown in Figure 5 , specifically includes:

[0136] Step 401: Based on the pydatalog semantic value corresponding to the value of the network element element in the network snapshot of a target computing node, the network load function is inferred and solved to obtain the network load of migrating the to-be-migrated virtual machine to each second computing node.

[0137] Method two is a reverse solving method. The expected network load and the network model parameter to be solved are encoded into a logical equation, converted into a satisfiability problem, and the SMT solver is used to search for network model parameters that meet the conditions for the next round of deductive reasoning. Until the network load result converges to the global optimal solution, the optimal migration node network parameter solution is obtained, that is, the optimal migration node is obtained.

[0138] The server infers and solves the equation f(A, B) based on the pydatalog semantic value corresponding to the value of the network element element in the network snapshot of a certain computing node, to obtain the network load after migrating the virtual machine to the computing node.

[0139] Step 402: Reverse solving the global optimal solution of the network load function greater than or equal to the pre-set network load threshold, obtaining the logical programming engine semantic value corresponding to the optimal solution.

[0140] Reverse solving the global optimal solution of the network load function greater than or equal to the pre-set network load threshold, obtaining the pydatalog semantic value corresponding to the optimal solution.

[0141] Step 403, from the logical programming engine semantic values corresponding to each computing node, selecting a semantic value matching the logical programming engine semantic value corresponding to the optimal solution, and taking the second computing node corresponding to the selected semantic value as the target computing node for the final migration of the virtual machine to be migrated.

[0142] Step 401, determining whether the network load is greater than a preset network load threshold P; if yes, then solving the equation f(A, B) <= P by using a backward satisfiability solving mode.

[0143] Specifically, the solving process of the equation is to search for a formalized model input set meeting the condition by using an SMT solver to perform a round of deductive reasoning, until the network load result converges to a global optimal solution, and then an optimal migration node network parameter is obtained, that is, a pydatalog semantic value corresponding to the optimal solution f(A, B) is obtained; based on the pydatalog semantic value corresponding to the optimal solution, from the pydatalog semantic values corresponding to each computing node, a semantic value most matching the optimal solution is selected, and the second computing node corresponding to the selected semantic value is taken as the target computing node to which the virtual machine to be migrated will be migrated.

[0144] Specifically, a network visualization system is constructed based on prometheus to realize dynamic management of network snapshots and visualization monitoring of network load conditions. The overall network load condition is monitored through the network visualization system, and the migration is ended after the network load is monitored to be less than the preset disturbance threshold, as shown in Figure 6 , which includes

[0145] Step 501, monitoring the traffic of each computing node in the virtual network and analyzing the network load usage of each computing node.

[0146] The traffic of the computing node is monitored by using ovs-exporter to analyze the network resource usage.

[0147] Step 502, globally previewing the network load and the network snapshot based on the network visualization system constructed by prometheus.

[0148] The network resource global preview is realized by accessing the network visualization system by prometheus.

[0149] Step 503, monitoring whether the network load is less than the preset disturbance threshold.

[0150] Step 504, completing the migration of the virtual machine to be migrated in a case where it is determined that the network load is less than the preset disturbance threshold.

[0151] The embodiments of the present application have the following beneficial effects:

[0152] The present application provides a method for realizing resource dynamic adjustment by using network monitoring technology in Openstack, which supports monitoring of computing node traffic and network node traffic, analyzes by combining specific services, and realizes dynamic adjustment of network resources to reduce the risk of network becoming a bottleneck.

[0153] Specifically, it refers to:

[0154] 1. The computing node traffic is monitored by using ovs-exporter, the network resource usage is analyzed, the network resource global preview is realized by accessing the network visualization platform through prometheus;

[0155] 2. The network control plane, forwarding plane and network snapshot are formalized modeled by network modeling technology;

[0156] 3. The virtual machine scheduling migration simulation analysis is carried out by deductive reasoning, the optimal migration scheduling node is calculated by forward reasoning / posterior solution, and the network load caused by virtual machine migration is minimized.

[0157] Corresponding to the above-mentioned resource dynamic adjustment method, the application also provides a resource dynamic adjustment device. Since the device embodiment of the application corresponds to the above-mentioned method embodiment, the details not disclosed in the device embodiment can be referred to the above-mentioned method embodiment, which will not be described in detail in the application.

[0158] Figure 7 A structural schematic diagram of a resource dynamic adjustment device provided by the embodiment of the present application is shown in Figure 6 As shown in the figure, it comprises:

[0159] The first acquisition unit 61 is configured to acquire the configuration items of each computing node in the virtual network where the virtual machine to be migrated is located; the configuration items comprise at least one of control plane configuration items and forwarding plane configuration items;

[0160] The second acquisition unit 62 is configured to acquire the values of each network element element based on the configuration items;

[0161] The prediction unit 63 is configured to predict the network load of each second computing node in the virtual network where the virtual machine to be migrated is located based on the values of each network element element;

[0162] The determination unit 64 is configured to determine the target computing node of the virtual machine to be migrated according to the network load of each second computing node.

[0163] The device, the electronic device and the storage medium provided by the present disclosure are used for dynamically adjusting resources. Configuration items of each computing node in a virtual network where a to-be-migrated virtual machine is located are acquired. The configuration items include at least one of a control plane configuration item and a forwarding plane configuration item. Based on the configuration items, values of each network element element in the configuration items of a first computing node where the to-be-migrated virtual machine is currently located are acquired. Based on the values of each network element element, network loads of each second computing node in the virtual network where the to-be-migrated virtual machine is migrated are respectively predicted, and a target computing node where the to-be-migrated virtual machine is finally migrated is determined according to the network loads of each second computing node. In the present disclosure, the values of each network element element are used to respectively predict the network loads of each second computing node where the to-be-migrated virtual machine is migrated, and a second computing node is selected as the target computing node where the to-be-migrated virtual machine is finally migrated according to the network loads of the second computing nodes. The target computing node is the optimal migration scheduling node of the to-be-migrated virtual machine, and the network load caused by migration of the to-be-migrated virtual machine is minimized.

[0164] Further, in a possible implementation manner of the present disclosure, Figure 8 as shown in the figure, the prediction unit 63 is further configured to predict the network loads of each second computing node where the to-be-migrated virtual machine is migrated based on the values of each network element element by using a deductive reasoning manner of a logic programming engine.

[0165] Further, in a possible implementation manner of the present disclosure, Figure 8 as shown in the figure, the first acquisition unit 61 is further configured to determine a control plane network element abstract data set and a forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling control plane configuration items and forwarding plane configuration items of the virtual network where the to-be-migrated virtual machine is located.

[0166] The second acquisition unit 62 is further configured to collect a network snapshot of each computing node of the virtual network where the to-be-migrated virtual machine is located, and the network snapshot is the value of each network element element included in the control plane configuration items and / or the forwarding plane configuration items.

[0167] Further, in a possible implementation manner of the present disclosure, Figure 8 as shown in the figure, the prediction unit 63 includes:

[0168] A conversion module 631 is configured to convert the value of each network element element in the network snapshot into a corresponding logic programming engine semantic value according to a preset conversion relationship between different network element elements and logic programming engine semantic values.

[0169] The first prediction module 632 is configured to respectively predict network loads of the to-be-migrated virtual machine migrated to the second computing nodes by substituting each of the logical programming engine semantic values into the forwarding plane network element abstract data set and the control plane network element abstract data set.

[0170] Further, in a possible implementation of the embodiment of the present disclosure, as shown in Figure 8 The first prediction module 632 is further configured to:

[0171] substitute each of the logical programming engine semantic values into the forwarding plane network element abstract data set and the control plane network element abstract data set;

[0172] infer and solve the network load function based on the forwarding plane network element abstract data set and the control plane network element abstract data set substituted with the logical programming engine semantic values, and respectively predict network loads of the to-be-migrated virtual machine migrated to the second computing nodes.

[0173] Further, in a possible implementation of the embodiment of the present disclosure, as shown in Figure 8 The determining unit 64 is further configured to take the second computing node corresponding to the minimum network load as the target computing node to which the to-be-migrated virtual machine is finally migrated.

[0174] Further, in a possible implementation of the embodiment of the present disclosure, as shown in Figure 8 The prediction unit 63 further includes:

[0175] The second prediction unit 633 is configured to infer and solve the network load function based on the logical programming engine semantic value corresponding to the value of the network element element in the network snapshot of one target computing node obtained through the conversion, and obtain network loads of the to-be-migrated virtual machine migrated to the second computing nodes.

[0176] Further, in a possible implementation of the embodiment of the present disclosure, as shown in Figure 8 The determining unit 64 is further configured to:

[0177] obtain the logical programming engine semantic value corresponding to the global optimal solution of the network load function greater than or equal to the preset network load threshold;

[0178] select, from the logical programming engine semantic values corresponding to each of the computing nodes, a semantic value matched with the logical programming engine semantic value corresponding to the optimal solution, and take the second computing node corresponding to the selected semantic value as the target computing node to which the to-be-migrated virtual machine is finally migrated.

[0179] Further, in a possible implementation of the embodiment of the present disclosure, as shown in Figure 8 The first obtaining unit 61 is further configured to:

[0180] in response to a migration instruction of a to-be-migrated virtual machine, obtaining a control plane configuration item and a forwarding plane configuration item of a virtual network where the to-be-migrated virtual machine is located;

[0181] respectively performing formal modeling on network element elements in the control plane configuration item and the forwarding plane configuration item, to obtain a control plane network element abstract data set and a forwarding plane network element abstract data set.

[0182] Further, in a possible implementation manner of the embodiment of the present disclosure, as shown in the figure, Figure 8 The apparatus further includes:

[0183] The migration unit 65 is configured to, after determining the target computing node to which the to-be-migrated virtual machine is finally migrated according to the network load of each second computing node, migrate the to-be-migrated virtual machine from the first computing node to the target computing node.

[0184] The monitoring unit 66 is configured to monitor the overall network load condition through a network visualization system, and end the migration after detecting that the network load is less than a preset disturbance threshold.

[0185] Further, in a possible implementation manner of the embodiment of the present disclosure, as shown in the figure, Figure 8 The monitoring unit 66 is further configured to:

[0186] monitor the traffic of each computing node in the virtual network, and analyze the network load usage of each computing node;

[0187] The network visualization system constructed based on prometheus performs global preview on the network load and the network snapshot;

[0188] monitor whether the network load is less than the preset disturbance threshold;

[0189] In a case where it is determined that the network load is less than the preset disturbance threshold, complete the migration of the to-be-migrated virtual machine.

[0190] It should be noted that the foregoing explanation and description of the method embodiment are also applicable to the apparatus of the embodiment of the present disclosure, and the principle is the same, which is not limited in the embodiment of the present disclosure.

[0191] According to the embodiments of the present disclosure, the present disclosure further provides an electronic device, a readable storage medium and a computer program product.

[0192] Figure 9A schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present disclosure 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, 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 present disclosure described and / or claimed in this document.

[0193] As shown in Figure 9 The device 700 includes a computing unit 701 that can perform various appropriate actions and processes in accordance with a computer program stored in a ROM (Read-Only Memory) 702 or a computer program loaded into a RAM (Random Access Memory) 703 from the storage unit 708. Various programs and data required for the operation of the device 700 can also be stored in the RAM 703. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other through a bus 704. An I / O (Input / Output) interface 705 is also connected to the bus 704.

[0194] A plurality of components in the device 700 are connected to the I / O interface 705, including an input unit 706, such as a keyboard, a mouse, and the like; an output unit 707, such as various types of displays, speakers, and the like; a storage unit 708, such as a magnetic disk, an optical disk, and the like; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver, and the like. The communication unit 709 allows the device 700 to exchange information / data with other devices through a computer network, such as the Internet, and / or various telecommunication networks.

[0195] The computing unit 701 can be various general and / or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a CPU (Central Processing Unit), a GPU (Graphic Processing Unit), various special-purpose AI (Artificial Intelligence) computing chips, various computing units running machine learning model algorithms, a DSP (Digital Signal Processor), and any appropriate processor, controller, microcontroller, etc. The computing unit 701 performs various methods and processes described above, such as the method of resource dynamic adjustment. For example, in some embodiments, the method of resource dynamic adjustment can be implemented as a computer software program, which is tangibly embodied in a machine-readable medium, such as the storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed onto the device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded onto the RAM 703 and executed by the computing unit 701, one or more steps of the methods described above can be performed. Alternatively, in other embodiments, the computing unit 701 can be configured to perform the aforementioned method of resource dynamic adjustment by any other appropriate means, such as by means of firmware.

[0196] Various implementations of the systems and techniques described above herein can be realized in digital electronic circuitry, integrated circuitry, a Field Programmable Gate Array (FPGA), an Application-Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a System on Chip (SoC), a Complex Programmable Logic Device (CPLD), 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.

[0197] Program code for carrying out methods of the present disclosure can be written in any combination of one or more programming languages. The program code can be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the program code, when executed by the processor or controller, produces the functions / operations specified in the flowcharts and / or block diagrams. The program code can be executed entirely on a machine, partially on a machine, partially on a machine and partially on a remote machine or entirely on a remote machine or server.

[0198] In the context of the present disclosure, a machine-readable medium can be a tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable 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. More specific examples of the machine-readable storage medium will include one or more lines of electrical connections, portable computer disks, hard disk drives, RAM, ROM, EPROM (Electrically Programmable Read-Only-Memory), or flash memory, fiber optics, CD-ROM (Compact Disc Read-Only Memory), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0199] To provide for interaction with a user, the systems and techniques described here can be implemented on a computer 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 computer. 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.

[0200] The systems and techniques described here 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 here, 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 LAN (Local Area Network), a WAN (Wide Area Network), the Internet, and a blockchain network.

[0201] The computer system can include clients and servers. The clients and servers are generally remote from each other and typically interact through a communication network. The relationship of client and server is one of communication and distribution, with the server receiving requests from the client and transmitting responses via the communication network. The 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. The server can also be a server of a distributed system, or a server combined with a blockchain.

[0202] It should be noted that artificial intelligence is a discipline that studies enabling computers to simulate some thinking processes and intelligent behaviors of people (such as learning, reasoning, thinking, planning, etc.), which has both hardware and software technologies. Artificial intelligence hardware technology generally includes technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing, etc.; artificial intelligence software technology mainly includes computer vision technology, speech recognition technology, natural language processing technology, and machine learning / deep learning, big data processing technology, knowledge graph technology, etc. several major directions.

[0203] It should be understood that various forms of flow shown above can be used to reorder, add or delete steps. For example, each step described in the present disclosure can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, which is not limited herein.

[0204] The above detailed description does not limit the scope of the disclosure. Various modifications, combinations, sub-combinations and alternatives can be made to the detailed description. Any modification, equivalent replacement and improvement etc. made within the spirit and principle of the disclosure shall be included in the scope of the disclosure.

Claims

1. A method for dynamic resource adjustment, characterized in that, include: Obtain the configuration items of each compute node in the virtual network where the virtual machine to be migrated resides; the configuration items include at least one of control plane configuration items and forwarding plane configuration items; Based on the configuration items, obtain the values ​​of each network element contained in the configuration items of the first computing node where the virtual machine to be migrated is currently located; Based on the values ​​of each network element, the network load of each second computing node in the virtual network to which the virtual machine to be migrated is to be migrated is predicted, and the target computing node to which the virtual machine to be migrated is finally migrated is determined according to the network load of each second computing node. The step of predicting the network load of each second computing node in the virtual network to which the virtual machine to be migrated is migrated, based on the values ​​of each of the network element elements, includes: Based on the logic programming engine, the network load of the virtual machine to be migrated to each of the second computing nodes is predicted by deductive reasoning on the values ​​of each network element. The process of obtaining the configuration items for each compute node in the virtual network where the virtual machine to be migrated resides includes: Determine the control plane network element abstract data set and the forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling the control plane configuration items and forwarding plane configuration items of the virtual network where the virtual machine to be migrated is located; The step of obtaining the values ​​of each network element contained in the configuration item of the virtual machine to be migrated, based on the configuration item, includes: Collect network snapshots of each compute node in the virtual network where the virtual machine to be migrated resides. The network snapshots are the values ​​of each network element contained in the control plane configuration item and / or the forwarding plane configuration item.

2. The method according to claim 1, characterized in that, The logic programming engine uses deductive reasoning to predict the network load of the virtual machine to be migrated to each of the second computing nodes by applying deductive reasoning to the values ​​of each network element. According to the pre-set conversion relationship between different network element elements and semantic values ​​of the logic programming engine, the values ​​of network element elements in the network snapshot are converted into corresponding semantic values ​​of the logic programming engine. By deductive reasoning using the semantic values ​​of each of the logic programming engines, the network load of the virtual machine to be migrated to multiple second computing nodes is predicted.

3. The method according to claim 2, characterized in that, The step of using deductive reasoning to predict the network load of migrating the virtual machine to be migrated to multiple second computing nodes by deducing and reasoning from the semantic values ​​of each of the logic programming engines includes: Substitute the semantic values ​​of each of the logic programming engines into the forwarding plane network element abstract data set and the control plane network element abstract data set, respectively. Based on the abstract data set of forwarding plane network elements with the semantic values ​​of the input logic programming engine and the abstract data set of control plane network elements, the network load function is inferred and solved to predict the network load of the virtual machine to be migrated to each of the second computing nodes.

4. The method according to claim 3, characterized in that, The step of determining the target computing node for the final migration of the virtual machine to be migrated based on the network load of each second computing node includes: The second computing node corresponding to the minimum network load is selected as the final target computing node for the migration of the virtual machine to be migrated.

5. The method according to claim 4, characterized in that, The logic programming engine uses deductive reasoning to predict the network load of the virtual machine to be migrated to each of the second computing nodes by applying deductive reasoning to the values ​​of each network element. Based on the semantic values ​​of the logical programming engine corresponding to the values ​​of network elements in the network snapshot of a target computing node obtained by transformation, the network load function is inferred and solved to obtain the network load of the virtual machine to be migrated to each of the second computing nodes.

6. The method according to claim 5, characterized in that, The step of determining the target computing node for the final migration of the virtual machine to be migrated based on the network load of each second computing node includes: The global optimal solution for the network load function being greater than or equal to a pre-set network load threshold is obtained by reverse calculation, and the semantic value of the logical programming engine corresponding to the optimal solution is obtained. From the semantic values ​​of the logical programming engine corresponding to each computing node, select the semantic value that matches the semantic value of the logical programming engine corresponding to the optimal solution, and take the second computing node corresponding to the selected semantic value as the target computing node for the final migration of the virtual machine to be migrated.

7. The method according to claim 1, characterized in that, The determination of the control plane network element abstract data set and the forwarding plane network element abstract data set includes: In response to the migration command of the virtual machine to be migrated, the control plane configuration items and forwarding plane configuration items of the virtual network where the virtual machine to be migrated is located are obtained; Formal modeling is performed on the network element elements in the control plane configuration items and the forwarding plane configuration items respectively to obtain the abstract data set of the control plane network elements and the abstract data set of the forwarding plane network elements.

8. The method according to any one of claims 1-7, characterized in that, After determining the target compute node for the final migration of the virtual machine to be migrated based on the network load of each second compute node, the method further includes: The virtual machine to be migrated is migrated from the first compute node to the target compute node; The overall network load is monitored through a network visualization system, and the migration ends when the network load is found to be less than the preset disturbance threshold.

9. The method according to claim 8, characterized in that, The step of monitoring the overall network load through a network visualization system and ending the migration after detecting that the network load is less than a preset disturbance threshold includes: Monitor the traffic of each computing node in the virtual network and analyze the network load usage of each computing node; The network visualization system built on Prometheus provides a global preview of the network load and the network snapshot; Monitor whether the network load is less than the preset disturbance threshold; If the network load is determined to be less than the preset disturbance threshold, the migration of the virtual machine to be migrated is completed.

10. A device for dynamic resource adjustment, characterized in that, include: The first acquisition unit is used to acquire the configuration items of each computing node in the virtual network where the virtual machine to be migrated is located; the configuration items include at least one of control plane configuration items and forwarding plane configuration items; The second acquisition unit is used to acquire, based on the configuration item, the values ​​of each network element contained in the configuration item of the first computing node where the virtual machine to be migrated is currently located; The prediction unit is used to predict the network load of each second computing node in the virtual network to which the virtual machine to be migrated is migrated, based on the values ​​of each of the network elements. The determining unit is used to determine the target computing node to be migrated for the virtual machine to be migrated based on the network load of each second computing node. The step of predicting the network load of each second computing node in the virtual network to which the virtual machine to be migrated is migrated, based on the values ​​of each of the network element elements, includes: Based on the logic programming engine, the network load of the virtual machine to be migrated to each of the second computing nodes is predicted by deductive reasoning on the values ​​of each network element. The process of obtaining the configuration items for each compute node in the virtual network where the virtual machine to be migrated resides includes: Determine the control plane network element abstract data set and the forwarding plane network element abstract data set, wherein the control plane network element abstract data set and the forwarding plane network element abstract data set are obtained by modeling the control plane configuration items and forwarding plane configuration items of the virtual network where the virtual machine to be migrated is located; The step of obtaining the values ​​of each network element contained in the configuration item of the virtual machine to be migrated, based on the configuration item, includes: Collect network snapshots of each compute node in the virtual network where the virtual machine to be migrated resides. The network snapshots are the values ​​of each network element contained in the control plane configuration item and / or the forwarding plane configuration item.

11. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-9.

12. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-9.

13. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method according to any one of claims 1-9.

Citation Information

Patent Citations

  • Virtual machine migration method, cloud computing management platform and storage medium

    CN111381928A

  • Virtual machine migration method and related product

    CN114265668A