A rapid deployment platform for application containers

Through the application container rapid deployment platform, combining hot migration and rapid deployment, the problem of virtual machine instances running a complete operating system and application stack in the hypervisor environment is solved, efficient application container deployment and hot migration are achieved, and deployment efficiency and system performance are improved.

CN114138406BActive Publication Date: 2025-04-29BEIJING YINDUN TAIAN NETWORK TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111316847.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-09
Publication Date
2025-04-29
Estimated Expiration
2041-11-09

AI Technical Summary

Technical Problem

In the prior art, each virtual machine instance in the hypervisor environment needs to run a complete operating system and application stack, resulting in large system overhead, low performance, and long loading and unloading these stacks mirroring time, increasing the number of network connections to the server.

Method used

It provides a rapid deployment platform for application containers, combining hot migration and rapid deployment, and generates and adjusts deployment strategies by requesting modules, determining modules, acquiring modules, and deploying modules, generating and adjusting deployment strategies.

Benefits of technology

Improve the efficiency of application container deployment, reduce the system overhead of the deployment process, maintain the system performance of the deployment process, reduce the running time of the deployment process, and avoid excessive network connections of the container technology server.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114138406B_ABST
    Figure CN114138406B_ABST
Patent Text Reader

Abstract

The present invention provides an application container rapid deployment platform, comprising: a request module, used to generate a corresponding operation request based on an operation instruction input by a user; a determination module, used to determine the preparation resources corresponding to the deployment operation based on the operation request; an acquisition module, used to adjust the nodes to be deployed determined based on the preparation resources, and obtain the corresponding final deployment strategy based on the adjusted nodes to be deployed; a deployment module, used to update the deployment file based on hot migration and the final deployment strategy to achieve rapid deployment; and used to combine hot migration with rapid deployment so that hot migration can be quickly resumed on other hosts or platforms.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of application deployment methods, and in particular to an application container rapid deployment platform. Background Art

[0002] Container technology has attracted widespread attention in the industry, and there is ample evidence that it can greatly improve work efficiency. However, more and more users are finding that hypervisors are actually creating trouble for themselves by providing such a widely supported feature. For a hypervisor environment, each virtual machine instance needs to run a full copy of the client operating system and a large number of applications contained in it. From a practical operation perspective, the heavy load generated will affect its work efficiency and performance. First, each operating system and application stack requires DRAM. For multiple small virtual machine instances running simple applications, this approach can generate a lot of system overhead and reduce performance. Loading and unloading these stack images takes a long time and also increases the number of network connections to the container technology server.

[0003] Live Migration, also known as dynamic migration or real-time migration, refers to preserving the runtime state of the entire container and quickly resuming operation on other hosts or platforms. Container live migration is mainly used in two aspects: first, when there are multiple operating units to perform tasks, live migration can quickly copy and migrate containers to achieve imperceptible operation; second, it can handle the load balancing of clusters in data centers. When a large amount of data is influx and the calculation cannot be performed, live migration can be used to create multiple containers to handle computing tasks, adjust the peak and valley of information data processing, configure and manage the load balancing ratio, and reduce application latency.

[0004] In order to solve the problem of multiple operating systems or application stacks, the present invention proposes an application container rapid deployment platform. Summary of the invention

[0005] The present invention provides an application container rapid deployment platform for combining hot migration and rapid deployment, so that hot migration can be quickly resumed on other hosts or platforms.

[0006] The present invention provides an application container rapid deployment platform, comprising:

[0007] A request module, used to generate a corresponding operation request based on the operation instruction input by the user;

[0008] A determination module, configured to determine, based on the operation request, preparation resources corresponding to the deployment operation;

[0009] An acquisition module, used to adjust the nodes to be deployed determined based on the prepared resources, and acquire the corresponding final deployment strategy based on the adjusted nodes to be deployed;

[0010] The deployment module is used to update the deployment file based on the hot migration and the final deployment strategy to achieve rapid deployment.

[0011] Preferably, the application container rapid deployment platform, the request module, includes:

[0012] A receiving submodule, used for receiving operation instructions input by a user;

[0013] The request submodule is used to parse the application to be operated and the corresponding application operation instruction contained in the operation instruction, and generate an operation request corresponding to each application to be operated based on the application operation instruction.

[0014] Preferably, in the application container rapid deployment platform, the operation request includes an application operation request and a resource access request, and the resource access request is used to request access to corresponding prepared resources in a preset application configuration resource library.

[0015] Preferably, the application container rapid deployment platform, the determination module includes:

[0016] an analysis submodule, configured to receive the operation request, analyze the urgency level of the application operation instruction in the operation request, and establish an operation instruction list based on all received operation requests and corresponding urgency levels;

[0017] A calculation submodule, used to analyze the resource access request corresponding to each application operation instruction and obtain the reliability coefficient of the corresponding resource access request;

[0018] A replacement submodule, used for replacing the application operation instructions whose reliability coefficients do not meet the requirements in the operation instruction list based on a preset safety instruction library, and generating a standard operation instruction list;

[0019] The first calling submodule is used to call the preparation resources corresponding to each standard operation instruction from the preset application configuration resource library in sequence based on the standard operation instruction list.

[0020] Preferably, the application container rapid deployment platform, the acquisition module includes:

[0021] A first generating module, configured to generate a preliminary deployment strategy based on a standard operation instruction list, and determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network;

[0022] A simulation submodule, configured to simulate application deployment in a container corresponding to the first node based on the preliminary deployment strategy;

[0023] The adjustment module is used to monitor the simulated deployment process, and adjust the first node based on the simulated deployment process to generate a final deployment strategy.

[0024] Preferably, the application container rapid deployment platform, the first generation module includes:

[0025] A reading submodule is used to read the node information of all available nodes, determine the target computer corresponding to each standard operation instruction in the standard operation instruction list, and read the location information of the target computer;

[0026] A first generating submodule, configured to generate a preliminary deployment strategy based on the node information and the location information;

[0027] The first determination submodule is used to determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network based on the preliminary deployment strategy.

[0028] Preferably, the application container rapid deployment platform, the adjustment module includes:

[0029] A statistical submodule, used to monitor the simulated deployment process, and count the number of visits to the first node to be deployed in the preliminary deployment network, and determine the first resource carrying capacity in each visit process based on the number of visits;

[0030] The adjustment submodule is used to adjust the first node based on the first resource carrying capacity of the first node during each access process to generate a final deployment strategy.

[0031] Preferably, the application container rapid deployment platform, the deployment module includes:

[0032] A detection submodule, used to determine the target computer to be deployed based on the final deployment strategy, and determine the available memory of the target computer and the bandwidth value of the corresponding deployment interface;

[0033] A judgment module, used for obtaining the occupied space prediction value corresponding to each standard operation instruction, and judging whether the available memory of the target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, sending a start signal, otherwise, controlling the corresponding target computer to perform capacity expansion processing;

[0034] The hot migration submodule is used to determine the second node in the final deployment strategy based on the final deployment strategy when the start signal is received, and to update the application container deployment file corresponding to the second node based on hot migration, and to deploy the application container deployment file of the second node to the corresponding target computer based on hot migration, so that the rapid deployment of the application container takes effect.

[0035] Preferably, the application container rapid deployment platform, the adjustment submodule includes:

[0036] An acquisition submodule is used to determine the topological structure of currently available nodes, and to determine the topological information of the topological structure and the path information between all available nodes;

[0037] A monitoring submodule, configured to monitor the available nodes, obtain the current resource carrying capacity of the available nodes, and obtain the corresponding current available carrying capacity based on the current resource carrying capacity;

[0038] A first screening submodule, configured to determine whether the carrying capacity of the first resource is greater than the current available carrying capacity of the corresponding first node, and if so, to screen out a third node set whose current available carrying capacity is greater than the carrying capacity of the first resource from the remaining second nodes except the first node among the available nodes, and to replace the corresponding first node with the third node set as the total node, and otherwise, to retain the first node until all the first nodes are screened to generate a second deployment network;

[0039] a second screening submodule, configured to determine all adjacent node combinations in the second deployment network, and if the adjacent node combination includes a single node and a main node, determine a first subpath attribute between each first subnode in the corresponding main node and the single node, and determine a first transmission resource attribute between the main node and the single node, and screen out a fourth node set whose first subpath attribute matches the first transmission resource attribute from all first subnodes;

[0040] A third screening submodule is used for determining, if the adjacent node combination includes two main nodes, a second subpath attribute between each second subnode included in the main node and each third subnode included in another main node, and determining a second transmission resource attribute between the two main nodes, and screening out a third subpath set whose corresponding second subpath attribute matches the second transmission resource attribute and an adjacent subnode set corresponding to each third subpath from all second subpaths;

[0041] a fourth screening submodule, for determining, if the adjacent node combination includes two single nodes, a third path attribute between the two single nodes, and a third transmission resource attribute between the two single nodes, and judging whether the third path attribute and the third transmission resource attribute match, and if so, retaining the single node, otherwise, determining a corresponding fifth node set based on a path attribute matching principle;

[0042] A second generation submodule is used to screen out a final node from the reserved single node, all fourth node sets, and all adjacent child node sets based on the shortest transmission distance principle and the preliminary deployment network, and generate a final deployment strategy based on the final node;

[0043] The second generating submodule is further configured to use the preliminary deployment strategy as the final deployment strategy when the first resource carrying capacity is greater than the current available carrying capacity of each first node;

[0044] The adjacent node combination is a combination of adjacent nodes in the second deployment network.

[0045] Preferably, the application container rapid deployment platform, the judgment module includes:

[0046] A second retrieval submodule is used to retrieve corresponding standard operation information based on each standard operation instruction;

[0047] A second determination submodule is used to determine an iterative running memory value and a jump running memory value of a corresponding standard operation instruction in a corresponding target computer based on the jump relationship contained in the standard running information and the jump running memory difference corresponding to each jump relationship, determine the jump running memory value as a first threshold, obtain an occupied space value of a preparation resource corresponding to each standard operation instruction, and use a larger value of the occupied space value and the iterative running memory value as an occupied space prediction value corresponding to each target computer;

[0048] A judgment submodule, used to judge whether the available memory of each target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, send a start signal;

[0049] A first expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is greater than the corresponding first threshold value;

[0050] A second expansion submodule is used to control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold when the available memory of the target computer is greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold;

[0051] The third expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold value, and at the same time, control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold value.

[0052] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention can be realized and obtained by the structures particularly pointed out in the written description, claims, and drawings.

[0053] The technical solution of the present invention is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation of the present invention. In the accompanying drawings:

[0055] Figure 1 This is a system structure diagram of an application container rapid deployment platform in an embodiment of the present invention;

[0056] Figure 2 It is a structural diagram of a request module in an embodiment of the present invention;

[0057] Figure 3 Determine the module structure diagram in the embodiment of the present invention;

[0058] Figure 4 To obtain a module structure diagram in an embodiment of the present invention;

[0059] Figure 5 This is a structural diagram of the first generation submodule in an embodiment of the present invention;

[0060] Figure 6 This is a structural diagram of an adjustment module in an embodiment of the present invention;

[0061] Figure 7 This is a diagram of the deployment module structure in an embodiment of the present invention;

[0062] Figure 8 This is a structural diagram of the adjustment submodule in an embodiment of the present invention;

[0063] Fig. 9 It is a structural diagram of the judgment module in an embodiment of the present invention. DETAILED DESCRIPTION

[0064] The preferred embodiments of the present invention are described below in conjunction with the accompanying drawings. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present invention, and are not used to limit the present invention.

[0065] Embodiment 1:

[0066] The present invention provides an application container rapid deployment platform, such as Figure 1 As shown, including:

[0067] A request module, used to generate a corresponding operation request based on the operation instruction input by the user;

[0068] A determination module, configured to determine, based on the operation request, preparation resources corresponding to the deployment operation;

[0069] An acquisition module, used to adjust the nodes to be deployed determined based on the prepared resources, and acquire the corresponding final deployment strategy based on the adjusted nodes to be deployed;

[0070] The deployment module is used to update the deployment file based on the hot migration and the final deployment strategy to achieve rapid deployment.

[0071] In this embodiment, the application deployment operation instructions input by the user are received from the target computer end (user end), transmitted to the cloud platform or other deployment control platform, the preparation resources corresponding to the deployment operation are determined, and the final deployment strategy is determined. Finally, the cloud platform or other deployment control platform updates the deployment file to the node to be deployed based on hot migration, and then the node to be deployed is deployed to the target computer end (user end).

[0072] In this embodiment, the operation instruction is an application deployment operation instruction input by the user from the target computer end (user end), for example, creating an application frame.

[0073] In this embodiment, the request module is set on the target computer side (user side), the determination module is set in the application configuration resource library of the cloud platform or other deployment control platforms, and the acquisition module and deployment module are set in the cloud platform or other deployment control platforms.

[0074] In this embodiment, the prepared resources include: application configuration files, application configuration image copy files, etc.

[0075] In this embodiment, the nodes to be deployed are nodes that will be passed during the deployment process determined in a preset distributed node network based on the operation instructions input by the user.

[0076] In this embodiment, the final deployment strategy is the deployment strategy finally determined based on the operation instructions input by the user, including the deployment order of each operation instruction, and which nodes the deployment process of each operation execution passes through.

[0077] In this embodiment, the deployment file is the application deployment file included in the container application in the node and the application deployment file included in the target computer.

[0078] The beneficial effects of the above technical solution are: generating corresponding operation requests based on the operation instructions input by the user, and further, determining the corresponding preparation resources, determining the corresponding deployment strategy based on the determined preparation resources, and determining the deployment strategy based on the operation instructions actually input by the user, so as to adjust the deployment path and deployment method according to the actual situation, and avoid the phenomenon that the system crashes due to excessive node load during the deployment process. Finally, hot migration and deployment strategy are combined so that hot migration can be quickly restored on other hosts or platforms, further improving the efficiency of application container deployment, reducing the system overhead of the deployment process, maintaining the system performance of the deployment process, reducing the running time of the deployment process, and avoiding the excessive number of network connections of the container technology server. Based on hot migration, containers can be quickly copied and migrated to achieve imperceptible operation; it can handle the load balancing of clusters in the data center, and can create multiple containers to process computing tasks, adjust the peaks and valleys of information data processing, configure and manage the load balancing ratio, reduce application delays, and solve the problem of multiple operating systems or application stacks.

[0079] Embodiment 2:

[0080] Based on Example 1, the request module, such as Figure 2 As shown, including:

[0081] A receiving submodule, used for receiving operation instructions input by a user;

[0082] The request submodule is used to parse the application to be operated and the corresponding application operation instruction contained in the operation instruction, and generate an operation request corresponding to each application to be operated based on the application operation instruction.

[0083] In this embodiment, the receiving module and the requesting submodule are arranged at the target computer end (user end).

[0084] The beneficial effect of the above technical solution is that: by receiving the operation instruction input by the user, the preparation resources corresponding to the application deployment needs of the user can be determined, which provides a basis for subsequently determining the final deployment strategy.

[0085] Embodiment 3:

[0086] Based on Example 2, the operation request includes an application operation request and a resource access request, and the resource access request is used to request access to corresponding prepared resources in a preset application configuration resource library.

[0087] In this embodiment, the application configuration resource library is a container configuration file corresponding to the application stored in the cloud platform or other deployment control platform and available for users to select for deployment.

[0088] In this embodiment, the application operation request is used to indicate to the cloud platform or other deployment control platform the application to be deployed selected by the user and the operation to be performed on the application to be deployed.

[0089] The beneficial effects of the above technical solution are: by receiving the operation instructions input by the user, on the one hand, it is possible to determine the prepared resources that meet the user's application deployment needs; on the other hand, it is possible to perform security verification on the application operation request based on the resource access request, thereby improving the security of the application deployment process and avoiding the destruction of the application resource library in the cloud platform or other deployment control platforms.

[0090] Embodiment 4:

[0091] Based on Example 1, the determination module is as follows: Figure 3 As shown, including:

[0092] an analysis submodule, configured to receive the operation request, analyze the urgency level of the application operation instruction in the operation request, and establish an operation instruction list based on all received operation requests and corresponding urgency levels;

[0093] A calculation submodule, used to analyze the resource access request corresponding to each application operation instruction and obtain the reliability coefficient of the corresponding resource access request;

[0094] A replacement submodule, used for replacing the application operation instructions whose reliability coefficients do not meet the requirements in the operation instruction list based on a preset safety instruction library, and generating a standard operation instruction list;

[0095] The first calling submodule is used to call the preparation resources corresponding to each standard operation instruction from the preset application configuration resource library in sequence based on the standard operation instruction list.

[0096] In this embodiment, analyzing the urgency level of the application operation instruction in the operation request includes: matching the application operation instruction with a preset application operation instruction urgency level table to determine the urgency level of the application operation instruction in the operation request, wherein the application operation instruction urgency level table is artificially predefined.

[0097] In this embodiment, the standard operation instruction list is an application operation instruction list corresponding to the operation instruction list whose reliability coefficient meets the requirements.

[0098] The beneficial effects of the above technical solution are: determining the corresponding operation instruction list based on the urgency level of the application operation instruction, providing a basis for subsequently determining the deployment strategy, calculating the reliability coefficient of the resource access request, and further confirming the security of the application operation instruction, further improving the security of the application deployment process, and avoiding the destruction of the application resource library in the cloud platform or other deployment control platforms.

[0099] Embodiment 5:

[0100] Based on Example 1, the acquisition module is as follows: Figure 4 As shown, including:

[0101] A first generating module, configured to generate a preliminary deployment strategy based on a standard operation instruction list, and determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network;

[0102] A simulation submodule, configured to simulate application deployment in a container corresponding to the first node based on the preliminary deployment strategy;

[0103] The adjustment module is used to monitor the simulated deployment process, and adjust the first node based on the simulated deployment process to generate a final deployment strategy.

[0104] In this embodiment, the preliminary deployment strategy is a deployment strategy preliminarily determined based on standard operating instructions;

[0105] In this embodiment, the preliminary deployment network is the topological structure between the deployment nodes determined by the preliminary deployment strategy.

[0106] In this embodiment, the first node is a node included in the initially deployed network.

[0107] The beneficial effect of the above technical solution is that the first node is adjusted through a simulated deployment process based on the preliminary deployment strategy, thereby ensuring the feasibility of the final deployment strategy.

[0108] Embodiment 6:

[0109] Based on Example 5, the first generation module, such as Figure 5 As shown, including:

[0110] A reading submodule is used to read the node information of all available nodes, determine the target computer corresponding to each standard operation instruction in the standard operation instruction list, and read the location information of the target computer;

[0111] A first generating submodule, configured to generate a preliminary deployment strategy based on the node information and the location information;

[0112] The first determination submodule is used to determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network based on the preliminary deployment strategy.

[0113] In this embodiment, all available nodes are all available nodes in a cloud platform or other deployment control platform.

[0114] In this embodiment, the node information includes the maximum resource carrying capacity and current resource carrying capacity of the corresponding node and location information.

[0115] In this embodiment, the preliminary deployment strategy is generated based on the node information and the location information, that is, based on the location information of the node and the location information of the target computer and the principle of the shortest transmission distance, the preliminary deployment paths are determined in sequence, which is the preliminary deployment strategy.

[0116] The beneficial effect of the above technical solution is: by obtaining the location information of all available nodes and the location information of the target computer and the principle of the shortest transmission distance, a preliminary deployment strategy is determined, which provides a basis for the subsequent determination of the final deployment strategy.

[0117] Embodiment 7:

[0118] Based on Example 5, the adjustment module is as follows: Figure 6 As shown, including:

[0119] A statistical submodule, used to monitor the simulated deployment process, and count the number of visits to the first node to be deployed in the preliminary deployment network, and determine the first resource carrying capacity in each visit process based on the number of visits;

[0120] The adjustment submodule is used to adjust the first node based on the first resource carrying capacity of the first node during each access process to generate a final deployment strategy.

[0121] In this embodiment, the first resource carrying capacity corresponds to the maximum deployment resource carrying capacity that needs to be borne during the access process.

[0122] The beneficial effect of the above technical solution is: by adjusting the first node based on the maximum deployment resource carrying capacity of each first node during the access process, it is possible to avoid the situation where the deployment strategy may cause some nodes to overload and crash during the deployment process.

[0123] Embodiment 8:

[0124] Based on Example 1, the deployment module is as follows: Figure 7 As shown, including:

[0125] A detection submodule, used to determine the target computer to be deployed based on the final deployment strategy, and determine the available memory of the target computer and the bandwidth value of the corresponding deployment interface;

[0126] A judgment module, used for obtaining the occupied space prediction value corresponding to each standard operation instruction, and judging whether the available memory of the target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, sending a start signal, otherwise, controlling the corresponding target computer to perform capacity expansion processing;

[0127] The hot migration submodule is used to determine the second node in the final deployment strategy based on the final deployment strategy when the start signal is received, and to update the application container deployment file corresponding to the second node based on hot migration, and to deploy the application container deployment file of the second node to the corresponding target computer based on hot migration, so that the rapid deployment of the application container takes effect.

[0128] In this embodiment, the available memory is the maximum available space allocated to the corresponding target computer for this deployment task.

[0129] In this embodiment, the bandwidth value of the deployment interface reflects the maximum transmission volume that can be transmitted simultaneously by the deployment interface of the corresponding target computer.

[0130] In this embodiment, the occupied space prediction value is a judgment value used to judge whether the available memory of the corresponding target computer meets the deployment condition.

[0131] In this embodiment, the first threshold is a judgment value for judging whether the bandwidth value of the deployment interface of the winning target computer meets the deployment condition.

[0132] In this embodiment, the second node is a node included in the final deployment network determined by the final deployment strategy.

[0133] In this embodiment, the application container deployment file is a configuration file that needs to be deployed to the target computer based on the prepared resources.

[0134] The beneficial effect of the above technical solution is: it is used to compare the available memory of the corresponding target computer and the bandwidth value of the deployment interface with the corresponding judgment value, to ensure that the memory and deployment interface of the target computer meet the corresponding deployment conditions, to avoid the failure of the deployment task, and to avoid the situation where the system crashes due to overload.

[0135] Embodiment 9:

[0136] Based on Example 7, the adjustment submodule is as follows: Figure 8 As shown, including:

[0137] An acquisition submodule is used to determine the topological structure of currently available nodes, and to determine the topological information of the topological structure and the path information between all available nodes;

[0138] A monitoring submodule, configured to monitor the available nodes, obtain the current resource carrying capacity of the available nodes, and obtain the corresponding current available carrying capacity based on the current resource carrying capacity;

[0139] A first screening submodule, configured to determine whether the carrying capacity of the first resource is greater than the current available carrying capacity of the corresponding first node, and if so, to screen out a third node set whose current available carrying capacity is greater than the carrying capacity of the first resource from the remaining second nodes except the first node among the available nodes, and to replace the corresponding first node with the third node set as the total node, and otherwise, to retain the first node until all the first nodes are screened to generate a second deployment network;

[0140] a second screening submodule, configured to determine all adjacent node combinations in the second deployment network, and if the adjacent node combination includes a single node and a main node, determine a first subpath attribute between each first subnode in the corresponding main node and the single node, and determine a first transmission resource attribute between the main node and the single node, and screen out a fourth node set whose first subpath attribute matches the first transmission resource attribute from all first subnodes;

[0141] A third screening submodule is used for determining, if the adjacent node combination includes two main nodes, a second subpath attribute between each second subnode included in the main node and each third subnode included in another main node, and determining a second transmission resource attribute between the two main nodes, and screening out a third subpath set whose corresponding second subpath attribute matches the second transmission resource attribute and an adjacent subnode set corresponding to each third subpath from all second subpaths;

[0142] a fourth screening submodule, for determining, if the adjacent node combination includes two single nodes, a third path attribute between the two single nodes, and a third transmission resource attribute between the two single nodes, and judging whether the third path attribute and the third transmission resource attribute match, and if so, retaining the single node, otherwise, determining a corresponding fifth node set based on a path attribute matching principle;

[0143] A second generation submodule is used to screen out a final node from the reserved single node, all fourth node sets, and all adjacent child node sets based on the shortest transmission distance principle and the preliminary deployment network, and generate a final deployment strategy based on the final node;

[0144] The second generating submodule is further configured to use the preliminary deployment strategy as the final deployment strategy when the first resource carrying capacity is greater than the current available carrying capacity of each first node;

[0145] The adjacent node combination is a combination of adjacent nodes in the second deployment network.

[0146] In this embodiment, currently available nodes are all nodes included in the deployment platform or other deployment control platforms, and the first node is a node determined from the currently available nodes according to the preliminary deployment strategy.

[0147] In this embodiment, all first nodes that do not meet the requirements will be replaced by corresponding main nodes. The main nodes and the first nodes correspond one to one, so there may be one, more or no first nodes that do not meet the requirements.

[0148] In this embodiment, the first node is directly determined according to the preliminary deployment strategy, and the first node is screened in order to make judgments and screens in terms of resource carrying capacity, path attributes, etc., and to replace unqualified first nodes.

[0149] In this embodiment, the topology information is the topology structure between currently available nodes.

[0150] In this embodiment, the path information includes path attributes between available nodes.

[0151] In this embodiment, the current resource carrying capacity is the transmission capacity currently carried by the available node.

[0152] In this embodiment, the current available carrying capacity is the value obtained by subtracting the current resource carrying capacity from the maximum transmission capacity that can be carried by the available node.

[0153] In this embodiment, the overall node is to treat the third node set as a large node.

[0154] In this embodiment, the second deployment network is a deployment network formed after the first node is replaced with the main node as required.

[0155] In this embodiment, a single node is an independent node, not a total node composed of multiple nodes, and can also be considered as each first node retained in the second step number network.

[0156] In this embodiment, the first sub-path attribute is the path attribute between each first sub-node in the corresponding main node and the single node, for example: the source attribute indicates the source of the path information; the next hop attribute indicates the next hop IP address to the destination; the AS path attribute is a list of AS numbers that the route to the target network passes through, and the autonomous system notifying the router is at the end of the list.

[0157] In this embodiment, the first transmission resource attribute is the transmission resource attribute between the first node and the single node before the main node is replaced, such as: initial preparation resource attribute, node deployment file attribute, target computer deployment file attribute, wherein the initial preparation resource attribute matches the source attribute in the path attribute, the node deployment file attribute matches the next hop attribute in the path attribute, and the target computer deployment file attribute matches the AS path attribute in the path attribute.

[0158] In this embodiment, the second sub-path attribute is a path attribute between each second sub-node included in the main node and each third sub-node included in another main node.

[0159] In this embodiment, determining the second transmission resource attribute between the two main nodes means: determining the transmission resource attribute between the two first nodes that respectively correspond to each other before the replacement.

[0160] In this embodiment, the third path attribute is the path attribute between two single nodes.

[0161] In this embodiment, the third transmission resource attribute is the transmission resource attribute between two single nodes.

[0162] In this embodiment, based on the shortest transmission distance principle and the preliminary deployment network, the final node is screened out from the retained single node, all fourth node sets, and all adjacent child node sets, and the final deployment strategy is generated based on the final node, including: starting from a cloud platform or other deployment control platform, using the preliminary deployment network as a framework, based on the shortest transmission distance principle, starting from the retained single node, all fourth node sets, and all adjacent child node sets to determine the transmission path (deployment node) in sequence, and generating the final deployment strategy.

[0163] In this embodiment, the final node is a node included in the final deployment network corresponding to the final deployment strategy.

[0164] The beneficial effect of the above technical solution is: the first node is adjusted and replaced based on the resource carrying capacity of the node, the path attributes of the adjacent nodes and the transmission resource attributes, thereby ensuring the feasibility of the final deployment strategy determined.

[0165] Embodiment 10:

[0166] Based on Example 8, the judgment module is as follows: Fig. 9 As shown, including:

[0167] A second retrieval submodule is used to retrieve corresponding standard operation information based on each standard operation instruction;

[0168] A second determination submodule is used to determine an iterative running memory value and a jump running memory value of a corresponding standard operation instruction in a corresponding target computer based on the jump relationship contained in the standard running information and the jump running memory difference corresponding to each jump relationship, determine the jump running memory value as a first threshold, obtain an occupied space value of a preparation resource corresponding to each standard operation instruction, and use a larger value of the occupied space value and the iterative running memory value as an occupied space prediction value corresponding to each target computer;

[0169] A judgment submodule, used to judge whether the available memory of each target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, send a start signal;

[0170] A first expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is greater than the corresponding first threshold value;

[0171] A second expansion submodule is used to control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold when the available memory of the target computer is greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold;

[0172] The third expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold value, and at the same time, control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold value.

[0173] In this embodiment, the standard operation information is the jump relationship corresponding to each standard operation instruction and the jump operation memory difference corresponding to each jump relationship.

[0174] In this embodiment, the jump relationship is the jump relationship between standard operation instructions.

[0175] In this embodiment, the jump running memory difference is the running memory difference between adjacent standard operation instructions corresponding to the jump relationship.

[0176] In this embodiment, based on the jump relationship contained in the standard operation information and the jump operation memory difference corresponding to each jump relationship, determining the iteration operation memory value and the jump operation memory value of the corresponding standard operation instruction in the corresponding target computer includes:

[0177] Based on the determined corresponding standard operation instructions, the corresponding prepared resource memory value and the jump running memory difference, the iterative running memory value in the corresponding target computer is calculated:

[0178]

[0179] Where S is the iterative running memory value in the corresponding target computer, N is the total number of iterations, S0 is the prepared resource memory value corresponding to the standard operation instruction, I is the number of iterations, S I is the jump operation memory difference between the Ith iteration and the (I-1)th iteration;

[0180] For example, the total number of iterations N is 3, the prepared resource memory value S0 corresponding to the standard operation instruction is 100, the jump running memory difference S2 between the second iteration and the first iteration is 10, and the jump running memory difference S3 between the third iteration and the second iteration is 10, then the iterative running memory value S in the corresponding target computer is 32812100;

[0181] Based on the total number of jumps determined by the jump relationship, the prepared resource memory value corresponding to the determined standard operation instruction, and the jump running memory difference, the jump running memory value in the corresponding target computer is calculated:

[0182]

[0183] Where S′ is the jump running memory value in the corresponding target computer, and M is the total number of jumps determined based on the jump relationship;

[0184] For example, the total number of jumps M determined based on the jump relationship is 5, the preparation resource memory value S0 corresponding to the standard operation instruction is 100, the jump running memory difference S2 between the second iteration and the first is 10, the jump running memory difference S3 between the third iteration and the second is 10, the jump running memory difference S2 between the fourth iteration and the third is 5, and the jump running memory difference S3 between the fifth iteration and the fourth is 20, then the corresponding jump running memory value S′ in the target computer is 545.

[0185] In this embodiment, the iterative running memory value is the accumulated memory value required by the generator of the code body as the access resource during the iterative process when it is running.

[0186] In this embodiment, the jump running memory value is the memory required for instruction jump during the deployment process of each standard operation instruction.

[0187] The beneficial effect of the above technical solution is: the iterative running memory value and the corresponding prepared resource occupied space value are compared to determine the corresponding judgment value, taking into account the memory generated by the iterative running process and the occupied memory of the prepared resources, further ensuring that the memory and deployment interface of the target computer meet the corresponding deployment conditions, avoiding the failure of the deployment task, and avoiding the situation where the system crashes due to overload.

[0188] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.

Claims

1. An application container rapid deployment platform, comprising: A request module, used to generate a corresponding operation request based on the operation instruction input by the user; A determination module, configured to determine, based on the operation request, preparation resources corresponding to the deployment operation; An acquisition module, used to adjust the nodes to be deployed determined based on the prepared resources, and acquire the corresponding final deployment strategy based on the adjusted nodes to be deployed; A deployment module, used to update deployment files based on hot migration and the final deployment strategy to achieve rapid deployment; The deployment module includes: a detection submodule, which is used to determine the target computer to be deployed based on the final deployment strategy, and determine the available memory of the target computer and the bandwidth value of the corresponding deployment interface; a judgment module, which is used to obtain the occupied space prediction value corresponding to each standard operation instruction, and judge whether the available memory of the target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, send a start signal, otherwise, control the corresponding target computer to perform capacity expansion processing; a hot migration submodule, which is used to determine the second node in the final deployment strategy based on the final deployment strategy when receiving the start signal, and update the application container deployment file corresponding to the second node based on hot migration, and deploy the application container deployment file of the second node to the corresponding target computer based on hot migration, so that the rapid deployment of the application container takes effect; Wherein, the judgment module includes: A second retrieval submodule is used to retrieve corresponding standard operation information based on each standard operation instruction; A second determination submodule is used to determine an iterative running memory value and a jump running memory value of a corresponding standard operation instruction in a corresponding target computer based on the jump relationship contained in the standard running information and the jump running memory difference corresponding to each jump relationship, determine the jump running memory value as a first threshold, obtain an occupied space value of a preparation resource corresponding to each standard operation instruction, and use a larger value of the occupied space value and the iterative running memory value as an occupied space prediction value corresponding to each target computer; A judgment submodule, used to judge whether the available memory of each target computer is greater than the corresponding occupied space prediction value and whether the bandwidth value of the corresponding deployment interface is greater than a first threshold value, and if so, send a start signal; A first expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is greater than the corresponding first threshold value; A second expansion submodule is used to control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold when the available memory of the target computer is greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold; The third expansion submodule is used to control the corresponding target computer to perform expansion processing according to the corresponding occupied space prediction value when the available memory of the target computer is not greater than the corresponding occupied space prediction value and the bandwidth value of the corresponding deployment interface is not greater than the corresponding first threshold value, and at the same time, control the corresponding deployment interface to perform expansion processing according to the corresponding first threshold value.

2. The application container rapid deployment platform according to claim 1, characterized in that: The request module comprises: A receiving submodule, used for receiving operation instructions input by a user; The request submodule is used to parse the application to be operated and the corresponding application operation instruction contained in the operation instruction, and generate an operation request corresponding to each application to be operated based on the application operation instruction.

3. The application container rapid deployment platform according to claim 2, characterized in that: The operation request includes an application operation request and a resource access request, and the resource access request is used to request access to corresponding prepared resources in a preset application configuration resource library.

4. The application container rapid deployment platform according to claim 1, characterized in that: The determining module comprises: an analysis submodule, configured to receive the operation request, analyze the urgency level of the application operation instruction in the operation request, and establish an operation instruction list based on all received operation requests and corresponding urgency levels; A calculation submodule, used to analyze the resource access request corresponding to each application operation instruction and obtain the reliability coefficient of the corresponding resource access request; A replacement submodule, used for replacing the application operation instructions whose reliability coefficients do not meet the requirements in the operation instruction list based on a preset safety instruction library, and generating a standard operation instruction list; The first calling submodule is used to call the preparation resources corresponding to each standard operation instruction from the preset application configuration resource library in sequence based on the standard operation instruction list.

5. The application container rapid deployment platform according to claim 1, characterized in that: The acquisition module comprises: A first generating module, configured to generate a preliminary deployment strategy based on a standard operation instruction list, and determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network; A simulation submodule, configured to simulate application deployment in a container corresponding to the first node based on the preliminary deployment strategy; The adjustment module is used to monitor the simulated deployment process, and adjust the first node based on the simulated deployment process to generate a final deployment strategy.

6. The application container rapid deployment platform according to claim 5, characterized in that: The first generating module comprises: A reading submodule is used to read the node information of all available nodes, determine the target computer corresponding to each standard operation instruction in the standard operation instruction list, and read the location information of the target computer; A first generating submodule, configured to generate a preliminary deployment strategy based on the node information and the location information; The first determination submodule is used to determine a corresponding preliminary deployment network and a first node to be deployed in the preliminary deployment network based on the preliminary deployment strategy.

7. The application container rapid deployment platform according to claim 5, characterized in that: The adjustment module comprises: A statistical submodule, used to monitor the simulated deployment process, and count the number of visits to the first node to be deployed in the preliminary deployment network, and determine the first resource carrying capacity in each visit process based on the number of visits; The adjustment submodule is used to adjust the first node based on the first resource carrying capacity of the first node during each access process to generate a final deployment strategy.

8. The application container rapid deployment platform according to claim 7, characterized in that: The adjustment submodule comprises: An acquisition submodule is used to determine the topological structure of currently available nodes, and to determine the topological information of the topological structure and the path information between all available nodes; A monitoring submodule, configured to monitor the available nodes, obtain the current resource carrying capacity of the available nodes, and obtain the corresponding current available carrying capacity based on the current resource carrying capacity; A first screening submodule, configured to determine whether the carrying capacity of the first resource is greater than the current available carrying capacity of the corresponding first node, and if so, to screen out a third node set whose current available carrying capacity is greater than the carrying capacity of the first resource from the remaining second nodes except the first node among the available nodes, and to replace the corresponding first node with the third node set as the total node, and otherwise, to retain the first node until all the first nodes are screened to generate a second deployment network; a second screening submodule, configured to determine all adjacent node combinations in the second deployment network, and if the adjacent node combination includes a single node and a main node, determine a first subpath attribute between each first subnode in the corresponding main node and the single node, and determine a first transmission resource attribute between the main node and the single node, and screen out a fourth node set whose first subpath attribute matches the first transmission resource attribute from all first subnodes; A third screening submodule is used for determining, if the adjacent node combination includes two main nodes, a second subpath attribute between each second subnode included in the main node and each third subnode included in another main node, and determining a second transmission resource attribute between the two main nodes, and screening out a third subpath set whose corresponding second subpath attribute matches the second transmission resource attribute and an adjacent subnode set corresponding to each third subpath from all second subpaths; a fourth screening submodule, for determining, if the adjacent node combination includes two single nodes, a third path attribute between the two single nodes, and a third transmission resource attribute between the two single nodes, and judging whether the third path attribute and the third transmission resource attribute match, and if so, retaining the single node, otherwise, determining a corresponding fifth node set based on a path attribute matching principle; A second generation submodule is used to screen out a final node from the reserved single node, all fourth node sets, and all adjacent child node sets based on the shortest transmission distance principle and the preliminary deployment network, and generate a final deployment strategy based on the final node; The second generating submodule is further configured to use the preliminary deployment strategy as the final deployment strategy when the first resource carrying capacity is greater than the current available carrying capacity of each first node; The adjacent node combination is a combination of adjacent nodes in the second deployment network.

Citation Information

Patent Citations

  • Management method for rapid cloud computing platform application deployment

    CN104618164A