CN108063784B - Method, device and system for distributing application cluster resources in cloud environment - Google Patents
Method, device and system for distributing application cluster resources in cloud environment Download PDFInfo
- Publication number
- CN108063784B CN108063784B CN201610982629.XA CN201610982629A CN108063784B CN 108063784 B CN108063784 B CN 108063784B CN 201610982629 A CN201610982629 A CN 201610982629A CN 108063784 B CN108063784 B CN 108063784B
- Authority
- CN
- China
- Prior art keywords
- resources
- resource
- application
- application cluster
- level
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013468 resource allocation Methods 0.000 claims description 10
- 230000003993 interaction Effects 0.000 claims 5
- 230000006870 function Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 238000009530 blood pressure measurement Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
- H04L67/1057—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers involving pre-assessment of levels of reputation of peers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Abstract
The embodiment of the application provides a method, a device and a system for distributing application cluster resources in a cloud environment, wherein the method comprises the following steps: acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment; determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level; applying for resources for the application cluster with the high occupancy level; if the application of the resources for the application cluster with the high occupancy level fails, releasing the resources of the application cluster with the low occupancy level according to the resource load level; and allocating the released resources to the application cluster with the high occupancy level. According to the embodiment of the application cluster resource load leveling method and device, the resource load of the application cluster in the whole cloud environment can be leveled, the existing resources can be fully utilized, the resource utilization efficiency of the application cluster is improved, and the application cluster can support higher access flow.
Description
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a method for allocating application cluster resources in a cloud environment, an apparatus for allocating application cluster resources in a cloud environment, and a system for allocating application cluster resources in a cloud environment.
Background
Cloud computing is a computing model that provides dynamically scalable virtual resources in a service-oriented manner over the internet, by which shared software and hardware resources and information can be provided to computers and other devices on demand. The basic environment of cloud computing is virtualization, and resource sharing exists in the virtualization environment. In a cloud computing environment (hereinafter, referred to as a cloud environment), Virtual Machines (VMs) are often used, and the VMs mainly use associated system resources.
The resources in the cloud environment are shared by the virtual machines, and when the virtual machines need to apply for the resources, idle resources are applied from the cloud environment. However, under the condition of limited resources, if the idle resources are exhausted, the virtual machine fails to apply for the resources, and the virtual machine cannot normally work due to the overlarge resource load, which greatly affects the working efficiency.
Disclosure of Invention
In view of the foregoing, embodiments of the present application are provided to provide a method for allocating application cluster resources in a cloud environment, an apparatus for allocating application cluster resources in a cloud environment, and a system for allocating application cluster resources in a cloud environment, which overcome or at least partially solve the foregoing problems.
In order to solve the above problem, an embodiment of the present application discloses a system for allocating application cluster resources in a cloud environment, where the system includes:
one or more processors;
a memory; and
one or more modules stored in the memory and configured to be executed by the one or more processors, the one or more modules having the functionality to:
acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
applying for resources for the application cluster with the high occupancy level;
if the application of the resources for the application cluster with the high occupancy level fails, releasing the resources of the application cluster with the low occupancy level according to the resource load level;
and allocating the released resources to the application cluster with the high occupancy level.
The embodiment of the application also discloses a method for distributing the application cluster resources in the cloud environment, which comprises the following steps:
acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
applying for resources for the application cluster with the high occupancy level;
if the application of the resources for the application cluster with the high occupancy level fails, releasing the resources of the application cluster with the low occupancy level according to the resource load level;
and allocating the released resources to the application cluster with the high occupancy level.
Preferably, the step of obtaining the resource utilization rate of each application cluster in the designated transaction link in the cloud environment includes:
and when the access flow increases, acquiring the resource utilization rate of each application cluster in the specified transaction link under the cloud environment.
Preferably, the cloud environment includes a resource pool, and the step of applying for resources for the application cluster with a high occupancy level includes:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application clusters with high occupation levels;
and when the resources of the resource pool are exhausted, the application cluster with the high occupation level fails to apply for the resources.
Preferably, the application clusters have corresponding priorities, and the step of allocating resources in the resource pool for application clusters with high occupancy levels includes:
and when the number of the application clusters with the high occupation level is two or more, distributing the resources in the resource pool for the application clusters with the high occupation level according to the priority.
Preferably, the resource load level has a corresponding release ratio, and the step of releasing the resources of the application cluster with a low occupancy level according to the resource load level includes:
determining a release proportion corresponding to the resource load level of the application cluster with the low occupancy level;
releasing the resources of the application clusters with the low occupancy levels according to the release proportion;
and storing the released resources into a resource pool.
Preferably, the step of releasing the resources of the application cluster with the low occupancy level according to the release ratio includes:
acquiring the current resource of the application cluster with the low occupancy level;
acquiring the current access flow of the application cluster with the low occupancy level;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application cluster with the low occupancy level by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
Preferably, the step of allocating the released resources to the high occupancy level application cluster comprises:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the high occupancy level.
The embodiment of the present application further discloses an apparatus for allocating application cluster resources in a cloud environment, including:
the resource utilization rate acquisition module is used for acquiring the resource utilization rate of each application cluster in a specified transaction link in the cloud environment;
the resource load level determining module is used for determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
the resource application acquisition module is used for applying for resources for the application cluster with the high occupancy level;
the resource releasing module is used for releasing the resources of the application clusters with the low occupation levels according to the resource load levels if the application of the resources for the application clusters with the high occupation levels fails;
and the resource allocation module is used for allocating the released resources to the application cluster with the high occupancy level.
The embodiment of the application also discloses a method for distributing the application cluster resources in the cloud environment, which comprises the following steps:
acquiring resource load states of all application clusters in a cloud environment;
determining the resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
applying for the resource for the application cluster with the full load level of the resource;
if the application of the resources for the application cluster at the full load level of the resources fails, releasing the resources of the application clusters at other levels according to the load level of the resources;
and allocating the released resources to the application cluster with the full resource loading level.
Preferably, the step of acquiring the resource load status of each application cluster in the cloud environment includes:
and when the access flow increases, acquiring the resource load state of each application cluster in the cloud environment.
Preferably, the cloud environment includes a resource pool, and the step of applying for resources for an application cluster with a full resource level includes:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application cluster with the full load level of the resources;
and when the resources of the resource pool are exhausted, the application cluster of the full load level of the resources fails to apply for the resources.
Preferably, the application clusters have corresponding priorities, and the step of allocating the resources in the resource pool for the application clusters with full resource load levels includes:
and when the number of the application clusters with the resource full-load level is two or more, distributing the resources in the resource pool for the application clusters with the resource full-load level according to the priority.
Preferably, the resource load levels have corresponding release ratios, and the step of releasing the resources of the application clusters of other levels according to the resource load levels includes:
determining the release proportion corresponding to the resource load level of the application clusters of other levels;
releasing the resources of the application clusters of other levels according to the release proportion;
and storing the released resources into a resource pool.
Preferably, the step of releasing the resources of the other application clusters according to the release ratio includes:
acquiring current resources of the application clusters of other levels;
acquiring the current access flow of the application clusters of other levels;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application clusters of the other levels by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
Preferably, the step of allocating the released resources to the application cluster of the resource full load level comprises:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the full load level of the resources.
The embodiment of the present application further discloses an apparatus for allocating application cluster resources in a cloud environment, including:
the resource load state acquisition module is used for acquiring the resource load state of each application cluster in the cloud environment;
a resource load level determining module, configured to determine a resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
the resource application module is used for applying for resources for the application clusters with the full load level of the resources;
the resource releasing module is used for releasing the resources of the application clusters of other levels according to the resource load level when the application of the application clusters of the full load level of the resources for the resources fails;
and the released resource allocation module is used for allocating the released resources to the application cluster with the full resource loading level.
The embodiment of the application has the following advantages:
in the embodiment of the application cluster in the cloud environment, the resource load level of each application cluster is determined according to the resource load state of the application cluster, if the application cluster with the full resource load level exists, the application cluster applies for resources, if the application cluster fails to apply for the resources at the moment, the application clusters with other levels are requested to release the resources, and finally the released resources are allocated to the application cluster with the full resource load level. It should be noted that, in the embodiment of the present application, resources are released according to the full resource level of the application cluster, so that if the above steps are repeatedly performed, the resource load of the application cluster in the entire cloud environment is finally leveled, the existing resources can be fully utilized, the resource utilization efficiency of the application cluster is improved, and the application cluster can support higher access traffic.
Drawings
Fig. 1 is a flowchart illustrating steps of an embodiment 1 of a method for allocating application cluster resources in a cloud environment according to the present application;
FIG. 2 is a schematic diagram of resource allocation of an application cluster in a cloud environment according to the present application;
fig. 3 is a flowchart illustrating steps of embodiment 2 of a method for allocating resources of an application cluster in a cloud environment according to the present application;
fig. 4 is a block diagram illustrating a structure of an embodiment of an apparatus for allocating application cluster resources in a cloud environment according to the present application;
fig. 5 is a schematic structural diagram of an embodiment of a server according to the present application.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, the present application is described in further detail with reference to the accompanying drawings and the detailed description.
The cloud environment comprises one or more application clusters, specific services can be respectively and independently completed, and the application clusters are interacted to form a transaction link, so that a complete transaction work can be completed. For example, in an application cluster of a certain supply link, four application systems such as goods, logistics, authentication, marketing, and the like are included, and a series of works such as goods, logistics, authentication, marketing, and the like are completed in the application cluster of the supply link. The transaction link pressure test may be used to test the processing efficiency of the transaction links of the application cluster.
The transaction link pressure test simulates various normal, peak and abnormal load conditions through an automatic test tool to perform pressure test on various performance indexes of the application cluster, detects the performance bottleneck of the application cluster, and improves the processing capacity of the application cluster.
However, currently, the transaction link pressure test only tests the performance bottleneck of the application cluster, and when the access traffic reaches a target value, for example, the access traffic reaches 15W, the processing capacity of the application cluster is no longer detected upwards, and the resources cannot be fully utilized.
In order to solve the above problem, in the embodiment of the application cluster in the cloud environment, in the process of pressure measurement on a specified platform, the resource load of the entire application cluster of the transaction link is leveled, and under the condition that the existing resources are limited, the existing resources are fully utilized, the resource load of each application cluster is balanced, the processing capacity of the application cluster is improved, and the application cluster can support higher access flow.
Referring to fig. 1, a flowchart illustrating steps of an embodiment of a method for allocating application cluster resources in a cloud environment according to the present application is shown, where the method specifically includes the following steps:
in the embodiment of the application, an application cluster of a certain transaction link is combed at first, and the application cluster is accessed to a specified platform to form a cloud environment. Under the cloud environment, overall planning can be carried out on the application clusters.
As shown in fig. 2, a transaction link includes an application a cluster, an application B cluster, and an application C cluster, which are connected to a specific platform, and the application clusters on the platform can share resources.
The resource load state of the application cluster refers to the resource utilization rate of the application cluster, and specifically, the resource may include capacity, CPU, memory, disk I/O, network bandwidth, and the like. In some cases, the resource usage of an application cluster may reach 100%.
In one embodiment of the present application, the step 101 may include the following sub-steps:
and a substep S11, when the access flow increases, acquiring the resource load state of each application cluster in the cloud environment.
According to the embodiment of the application, the performance bottleneck of the current application cluster is detected by carrying out pressure measurement on the transaction link. The performance bottleneck is that the resource utilization reaches a dangerous threshold, and at this time, the application cluster cannot work normally.
In the process of pressure measurement of the transaction link, the access flow of the user to the application cluster can be continuously improved. In one case, when the access flow is detected to increase, the resource load state of each application cluster in the cloud environment is obtained in the embodiment of the present application.
in the embodiment of the application, for each application cluster, the resource load level of the application cluster is determined according to the resource load state of the application cluster, and the resource load level can be used for representing the resource utilization rate of the application cluster.
Resource load levels may include resource full levels, which may refer to resource usage of an application cluster having reached a dangerous threshold, such as, for example, perhaps CPU usage of 90%, and other levels.
As shown in fig. 2, if the CPU utilization of the application a cluster is greater than 70% (CPU > 70%), or the relation between the average load and the number of CPU cores in 1 minute is load1> core _ num × 1.5, the application a cluster may be considered as being at the resource full level, and the application B cluster and the application C cluster may be at other levels.
It should be noted that, in the embodiment of the present application, the division of the level number of the resource load level may be divided according to specific requirements, and the embodiment of the present application is not limited to this. In addition, the resource load level may be divided in a manner not limited to the CPU utilization, but may also be divided in combination with other resource parameters, such as the utilization of memory, disk I/O, network bandwidth, or other manners, which is not limited in this embodiment.
103, applying for the resource of the application cluster with the full load level of the resource;
the cloud environment can comprise a resource pool, idle resources are placed in the resource pool, and when an application cluster needs to apply for resources, the resources are firstly applied for the resource pool.
In one embodiment of the present application, the step 103 may include the following sub-steps:
substep S21, applying for resources from the resource pool;
substep S22, when the resource of the resource pool is sufficient, allocating the resource in the resource pool to the application cluster of the full load level of the resource;
and a substep S23, when the resource of the resource pool is exhausted, the application cluster of the full load level of the resource fails to apply for the resource.
It can be understood that if the resources in the resource pool are sufficient, the resources in the resource pool can be directly allocated to the application cluster at the full resource level, but if the resources in the resource pool are exhausted, the application for the application cluster at the full resource level cannot be performed, and the application for the resources fails.
In one embodiment of the present application, the application clusters may have corresponding priorities, and the sub-step S22 may include the following sub-steps:
and a substep S221, when the number of the application clusters with the full resource level is two or more, allocating the resources in the resource pool for the application clusters with the full resource level according to the priority.
When there are allocable resources in the resource pool, the resources may be preferentially allocated to application clusters of a high priority level. Specifically, if a performance bottleneck occurs to multiple application clusters at the same time, that is, when multiple application clusters with full load level of resources occur at the same time, the resources are allocated to each application cluster in sequence according to the priority, the application cluster with high priority applies for the resources preferentially, and then the application cluster with low priority applies for the resources, and the host resources of the application clusters can be fully utilized through the allocation principle.
On the contrary, if the resources are not sequentially allocated to each application cluster according to the priority, the resources in the resource pool may be exhausted after the application of the resources for the application cluster with the low priority, and finally the resources cannot be allocated to the application cluster with the high priority.
It should be noted that, in the embodiment of the present invention, the priority of the application cluster may be set by a relevant person, and of course, the priority of the application cluster may also be set in other manners, such as according to the importance degree or the processing order of the application cluster, which is not limited in this embodiment of the present invention.
104, if the application of the resource for the application cluster at the full load level of the resource fails, releasing the resources of the application clusters at other levels according to the resource load level;
according to the embodiment of the application, when the resource application from the resource pool fails, the resources of other application clusters are released to make up for the situation that the current resources are insufficient.
In one embodiment of the present application, the resource load level may have a corresponding release ratio, and the step 104 may include the following sub-steps:
substep S31, determining a release ratio corresponding to the resource load level of the application clusters of other levels;
substep S32, releasing the resources of the application clusters of the other levels according to the release ratio;
and a substep S33, saving the released resource to a resource pool.
In the embodiment of the present application, when releasing the resources of the application cluster, the resources are released according to the resource load level of the application cluster, that is, if the application cluster is loaded with a larger load, less resources are released, and if the application cluster is loaded with a smaller load, more resources are released.
In an embodiment of the present application, the sub-step S32, that is, the step of releasing the resources of the other application clusters according to the release ratio, includes:
substep S321, obtaining the current resources of the application clusters of the other levels;
substep S322, obtaining the current access flow of the application clusters at the other levels;
a substep S323, calculating the required resource by adopting the current access flow and a preset single machine limit value;
a substep S324, determining idle resources of the application clusters of the other levels by using the current resources and the required resources;
and a substep S325, releasing the idle resources according to the release ratio.
In this embodiment of the present application, the resources required by the current application cluster may be: and accessing a total flow/daily single machine pressure measurement extreme value of the current application cluster per second, wherein the daily single machine pressure measurement extreme value refers to the access flow which can be borne by a single virtual machine in the application cluster. According to the current resource and the demand resource of the application cluster, the idle resource which can be released by the application cluster can be determined.
In another embodiment, the resources required by the current application cluster may also be: the current application cluster has total flow per second access/daily pressure measurement stand-alone extrema/safety water level. The safe water level is a buffer, and the safe water level may be set to a size according to actual requirements or not used, which is not limited in the embodiment of the present invention.
As shown in fig. 2, the resource load level of the application B cluster is high, the resource utilization rate is high, the CPU utilization rate is greater than 50% and less than 60%, the application B cluster only needs to release 5% of resources, the resource load level of the application C cluster is low, the resource utilization rate is low, the CPU utilization rate is greater than 10% and less than 20%, and the application C cluster needs to release 15% of resources. The released resources may be saved to the T4 resource pool. Through the gradient release of the resources, the resources of each application cluster can be kept at a certain horizontal line instead of a knife.
And 105, allocating the released resources to the application clusters with the full resource loading levels.
In one embodiment of the present application, the step 105 may comprise the following sub-steps:
substep S41, applying for resources from the resource pool storing the released resources;
and a substep S42, allocating the released resources in the resource pool to the application cluster with the full resource level.
When the resource pool has the released resources stored therein, the application cluster with the full load level of the resources can continuously apply for the resources from the resource pool until the requirements of the application cluster with the full load level of the resources are met, and the application clusters with other levels can stop releasing the idle resources.
Specifically, the resource demand of the application cluster at the resource full-load level may be the resource demand of the application cluster, which is determined by determining the number of predicted instances (virtual machine resources) according to the access traffic, and then subtracting the number of current instances (current virtual machine resources) from the number of predicted instances.
Of course, the resource requirement of an application cluster at a resource full level may be to reduce the application cluster from the resource full level to another level.
After the resource allocation of the application clusters with the full resource loading level is completed in the embodiment of the application, the access flow of the user can be continuously increased, and the steps 101 to 105 are executed again, if the steps are repeated, the resource loading state of the application clusters of the whole transaction link is finally leveled, so that the resources of each application cluster can be fully utilized.
In the embodiment of the application cluster in the cloud environment, the resource load level of each application cluster is determined according to the resource load state of the application cluster, if the application cluster with the full resource load level exists, the application cluster applies for resources, if the application cluster fails to apply for the resources at the moment, the application clusters with other levels are requested to release the resources, and finally the released resources are allocated to the application cluster with the full resource load level. It should be noted that, in the embodiment of the present application, resources are released according to the full resource level of the application cluster, so that if the above steps are repeatedly performed, the resource load of the application cluster in the entire cloud environment is finally leveled, the existing resources can be fully utilized, the resource utilization efficiency of the application cluster is improved, and the application cluster can support higher access traffic.
Referring to fig. 3, a flowchart illustrating steps of embodiment 2 of a method for allocating application cluster resources in a cloud environment according to the present application is shown, where the method specifically includes the following steps:
In a preferred embodiment of the present application, the step 201 may include:
and when the access flow increases, acquiring the resource utilization rate of each application cluster in the specified transaction link under the cloud environment.
In a preferred embodiment of the present application, the cloud environment includes a resource pool, and the step 203 may include:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application clusters with high occupation levels;
and when the resources of the resource pool are exhausted, the application cluster with the high occupation level fails to apply for the resources.
In a preferred embodiment of the present application, the application clusters have corresponding priorities, and the step of allocating resources in the resource pool for the application clusters with high occupancy levels includes:
and when the number of the application clusters with the high occupation level is two or more, distributing the resources in the resource pool for the application clusters with the high occupation level according to the priority.
In a preferred embodiment of the present application, the resource load level has a corresponding release ratio, and the step 204 may include:
determining a release proportion corresponding to the resource load level of the application cluster with the low occupancy level;
releasing the resources of the application clusters with the low occupancy levels according to the release proportion;
and storing the released resources into a resource pool.
In a preferred embodiment of the present application, the step of releasing the resources of the application cluster with the low occupancy level according to the release ratio includes:
acquiring the current resource of the application cluster with the low occupancy level;
acquiring the current access flow of the application cluster with the low occupancy level;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application cluster with the low occupancy level by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
In a preferred embodiment of the present application, the step 205 includes:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the high occupancy level.
In specific implementation, a plurality of transaction links can be divided under a cloud environment to specifically process various transactions, and the embodiment of the invention can be applied under the cloud environment to carry out overall planning on resources of an application cluster.
According to the embodiment of the application cluster, the resource load state of the application cluster is known according to the resource utilization rate of each application cluster in the cloud environment, so that the resource load level of the application cluster can be determined. If the application cluster with the high occupancy level exists, applying for resources for the application cluster, if the application cluster fails to apply for the resources at the moment, requesting the application cluster with the low occupancy level to release the resources, and finally allocating the released resources to the application cluster with the high occupancy level. It should be noted that, in the embodiment of the present application, resources are released according to the full resource level of the application cluster, so that if the above steps are repeatedly performed, the resource load of the application cluster in the entire cloud environment is finally leveled, the existing resources can be fully utilized, the resource utilization efficiency of the application cluster is improved, and the application cluster can support higher access traffic.
In order to make the embodiment of the present application better understood by those skilled in the art, the pressure measurement process of the transaction link in the embodiment of the present application is described below by way of a specific example, as shown in fig. 2.
1, combing an application cluster of a whole transaction link and accessing a platform; an application A cluster, an application B cluster and an application C cluster are accessed under the platform, and the application clusters form a transaction link.
And 2, carrying out pressure measurement on the transaction link to detect the performance bottleneck of the application cluster under the transaction link. And dividing the resource load level for each application cluster according to the resource load state, wherein the application cluster with performance bottleneck is divided into the resource full load level.
3, when a certain application cluster has a performance bottleneck, if the application A cluster is applied, applying for resources from the resource pool; and if the resource application from the resource pool is successful, the user continues to feel high pressure upwards, namely the access amount of the application cluster resource user under the transaction link is increased.
There is a principle when applying for machines (resources): if the performance bottlenecks occur in the multiple application clusters at the same time, resources are distributed according to the priority level of each application cluster, firstly, the resources are applied for the application clusters with high priority levels, and secondly, the resources are applied for the application clusters with low priority levels, so that the full utilization of the host machine resources is achieved; if the principle is not followed, the resources of the resource pool are exhausted after the resources are allocated to the application cluster with the low priority, and finally the resources cannot be allocated to the application cluster with the high priority.
And 4, continuously applying high pressure to the application cluster of the transaction link, and applying for resources in real time when the pressure is raised so as to support the current access flow of the application cluster. Until some application cluster has a performance bottleneck and the application resource fails (the resource pool is exhausted). The platform automatically traverses the resource load states of the application clusters on other links, and each application cluster releases resources in a gradient manner according to different resource load states of the application cluster so as to level the resource load water level.
And 5, after leveling the water level, releasing and storing the resources to the resource pool, continuously applying the resources from the resource pool by the application cluster A with the performance bottleneck until the resource requirement is obtained, and stopping the tasks of releasing the idle resources by other low-load application clusters. At this time, the user continues to feel high pressure, i.e. the access flow of the user is increased, and the iteration is performed again from step 1.
And 6, through the 5 steps of iteration, the existing resources of the application cluster of the transaction link are fully utilized, so that the transaction link can support the access flow of a larger user.
It should be noted that, for simplicity of description, the method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the embodiments are not limited by the order of acts described, as some steps may occur in other orders or concurrently depending on the embodiments. Further, those skilled in the art will also appreciate that the embodiments described in the specification are presently preferred and that no particular act is required of the embodiments of the application.
Referring to fig. 4, a block diagram of a structure of an embodiment of an apparatus for allocating application cluster resources in a cloud environment according to the present application is shown, where the apparatus specifically includes the following modules:
a resource load state obtaining module 301, configured to obtain a resource load state of each application cluster in a cloud environment;
in an embodiment of the present application, the resource load status obtaining module 301 may include the following sub-modules:
and the resource load state acquisition submodule is used for acquiring the resource load state of each application cluster in the cloud environment when the access flow is increased.
A resource load level determining module 302, configured to determine a resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
a resource application module 303, configured to apply for a resource for the application cluster at the full load level of the resource;
in an embodiment of the present application, the cloud environment may include a resource pool, and the resource application module 303 may include the following sub-modules:
the first resource pool resource application submodule is used for applying for resources from the resource pool;
the first resource processing submodule is used for allocating resources in the resource pool to the application cluster at the full load level of the resources when the resources in the resource pool are sufficient;
and the second resource processing submodule is used for applying for resource failure for the application cluster at the full load level of the resource when the resource of the resource pool is exhausted.
In one embodiment of the present application, the application clusters may have corresponding priorities, and the first resource processing sub-module includes:
and the priority processing unit is used for allocating the resources in the resource pool to the application clusters of the resource full-load level according to the priority when the number of the application clusters of the resource full-load level is two or more.
A resource releasing module 304, configured to release resources of application clusters of other levels according to the resource load level when the resource application for the application cluster of the full load level of the resource fails;
in an embodiment of the present application, the resource load level may have a corresponding release ratio, and the resource release module 304 may include the following sub-modules:
the release ratio determining submodule is used for determining the release ratios corresponding to the resource load levels of the application clusters of other levels;
the resource proportion releasing submodule is used for releasing the resources of the application clusters of other levels according to the releasing proportion;
and the released resource storage submodule is used for storing the released resources into a resource pool.
In an embodiment of the present application, the resource proportion releasing submodule may include the following units:
a current resource obtaining unit, configured to obtain current resources of the application clusters at the other levels;
the current access flow unit is used for acquiring the current access flow of the application clusters of other levels;
the demand resource calculating unit is used for calculating demand resources by adopting the current access flow and a preset single machine limit value;
an idle resource determining unit, configured to determine idle resources of the application clusters of the other levels by using the current resource and the required resource;
and the free resource releasing unit is used for releasing the free resources according to the release proportion.
A released resource allocation module 305 for allocating the released resource to the application cluster at the resource full load level.
In an embodiment of the present application, the release resource allocation module 205 may include the following sub-modules:
the second resource pool resource application submodule is used for applying for the resources from the resource pool in which the released resources are stored;
and the third resource processing submodule is used for distributing the resources released in the resource pool for the application cluster with the full load level of the resources.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
An embodiment of the present application further provides a system for allocating application cluster resources in a cloud environment, where the system includes:
one or more processors;
a memory; and
one or more modules stored in the memory and configured to be executed by the one or more processors, the one or more modules having the functionality to:
acquiring resource load states of all application clusters in a cloud environment;
determining the resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
applying for the resource for the application cluster with the full load level of the resource;
if the application of the resources for the application cluster at the full load level of the resources fails, releasing the resources of the application clusters at other levels according to the load level of the resources;
and allocating the released resources to the application cluster with the full resource loading level.
Optionally, the one or more modules may have the following functions:
and when the access flow increases, acquiring the resource load state of each application cluster in the cloud environment.
Optionally, the cloud environment includes a resource pool, and the one or more modules may have the following functions:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application cluster with the full load level of the resources;
and when the resources of the resource pool are exhausted, the application cluster of the full load level of the resources fails to apply for the resources.
Optionally, the application clusters have corresponding priorities, and the one or more modules may have the following functions:
and when the number of the application clusters with the resource full-load level is two or more, distributing the resources in the resource pool for the application clusters with the resource full-load level according to the priority.
Optionally, the resource load level has a corresponding release proportion, and the one or more modules may have the following functions:
determining the release proportion corresponding to the resource load level of the application clusters of other levels;
releasing the resources of the application clusters of other levels according to the release proportion;
and storing the released resources into a resource pool.
Optionally, the one or more modules may have the following functions:
acquiring current resources of the application clusters of other levels;
acquiring the current access flow of the application clusters of other levels;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application clusters of the other levels by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
Optionally, the one or more modules may have the following functions:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the full load level of the resources.
The embodiment of the present application further provides an apparatus for allocating application cluster resources in a cloud environment, where the apparatus may include the following modules:
the resource utilization rate acquisition module is used for acquiring the resource utilization rate of each application cluster in a specified transaction link in the cloud environment;
the resource load level determining module is used for determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
the resource application acquisition module is used for applying for resources for the application cluster with the high occupancy level;
the resource releasing module is used for releasing the resources of the application clusters with the low occupation levels according to the resource load levels if the application of the resources for the application clusters with the high occupation levels fails;
and the resource allocation module is used for allocating the released resources to the application cluster with the high occupancy level.
Fig. 5 is a schematic structural diagram of a server according to an embodiment of the present application. The server 400 may vary significantly due to configuration or performance, and may include one or more Central Processing Units (CPUs) 422 (e.g., one or more processors) and memory 432, one or more storage media 430 (e.g., one or more mass storage devices) storing applications 442 or data 444. Wherein the memory 432 and storage medium 430 may be transient or persistent. The program stored on the storage medium 430 may include one or more modules (not shown), each of which may include a series of instruction operations for the server. Still further, the central processor 422 may be arranged to communicate with the storage medium 430, and execute a series of instruction operations in the storage medium 430 on the server 400.
The server 400 may also include one or more power supplies 426, one or more wired or wireless network interfaces 450, one or more input-output interfaces 758, one or more keyboards 456, and/or one or more operating systems 441, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, and so forth.
The central processor 422 may execute instructions on the server 400 to:
acquiring resource load states of all application clusters in a cloud environment;
determining the resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
applying for the resource for the application cluster with the full load level of the resource;
if the application of the resources for the application cluster at the full load level of the resources fails, releasing the resources of the application clusters at other levels according to the load level of the resources;
and allocating the released resources to the application cluster with the full resource loading level.
Optionally, the one or more modules may have the following functions:
and when the access flow increases, acquiring the resource load state of each application cluster in the cloud environment.
Optionally, the cloud environment includes a resource pool, and the one or more modules may have the following functions:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application cluster with the full load level of the resources;
and when the resources of the resource pool are exhausted, the application cluster of the full load level of the resources fails to apply for the resources.
Optionally, the application clusters have corresponding priorities, and the one or more modules may have the following functions:
and when the number of the application clusters with the resource full-load level is two or more, distributing the resources in the resource pool for the application clusters with the resource full-load level according to the priority.
Optionally, the resource load level has a corresponding release proportion, and the one or more modules may have the following functions:
determining the release proportion corresponding to the resource load level of the application clusters of other levels;
releasing the resources of the application clusters of other levels according to the release proportion;
and storing the released resources into a resource pool.
Optionally, the one or more modules may have the following functions:
acquiring current resources of the application clusters of other levels;
acquiring the current access flow of the application clusters of other levels;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application clusters of the other levels by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
Optionally, the one or more modules may have the following functions:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the full load level of the resources.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one of skill in the art, embodiments of the present application may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
In a typical configuration, the computer device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory. The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium. Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include non-transitory computer readable media (fransitory media), such as modulated data signals and carrier waves.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present application have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all such alterations and modifications as fall within the true scope of the embodiments of the application.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or terminal that comprises the element.
Detailed descriptions are given above to a method for allocating application cluster resources in a cloud environment, a device for allocating application cluster resources in a cloud environment, and a system for allocating application cluster resources in a cloud environment, and specific examples are applied herein to explain the principle and the implementation of the present application, and the descriptions of the above embodiments are only used to help understand the method and the core idea of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.
Claims (15)
1. A system for application cluster resource allocation in a cloud environment, the system comprising:
one or more processors;
a memory; and
one or more modules stored in the memory and configured to be executed by the one or more processors, the one or more modules having the functionality to:
acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
applying for resources for the application cluster with the high occupancy level;
if the application of the resources for the application cluster with the high occupancy level fails, releasing the resources of the application cluster with the low occupancy level according to the resource load level;
allocating the released resources to the high occupancy level application cluster;
the step of obtaining the resource utilization rate of each application cluster in the appointed transaction link under the cloud environment comprises the following steps:
when the access flow increases, acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
the transaction link is formed by interaction among all the application clusters and is used for completing complete transaction work.
2. A method for allocating application cluster resources in a cloud environment is characterized by comprising the following steps:
acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
applying for resources for the application cluster with the high occupancy level;
if the application of the resources for the application cluster with the high occupancy level fails, releasing the resources of the application cluster with the low occupancy level according to the resource load level;
allocating the released resources to the high occupancy level application cluster;
the step of obtaining the resource utilization rate of each application cluster in the appointed transaction link under the cloud environment comprises the following steps:
when the access flow increases, acquiring the resource utilization rate of each application cluster in a specified transaction link in a cloud environment;
the transaction link is formed by interaction among all the application clusters and is used for completing complete transaction work.
3. The method of claim 2, wherein the cloud environment comprises a resource pool, and wherein the step of applying for resources for the high-occupancy level application cluster comprises:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application clusters with high occupation levels;
and when the resources of the resource pool are exhausted, the application cluster with the high occupation level fails to apply for the resources.
4. The method of claim 3, wherein the application clusters have corresponding priorities, and wherein the step of allocating resources in the resource pool for application clusters with high occupancy levels comprises:
and when the number of the application clusters with the high occupation level is two or more, distributing the resources in the resource pool for the application clusters with the high occupation level according to the priority.
5. A method according to claim 2 or 3, wherein the resource load levels have corresponding release ratios, and the step of releasing the resources of the application clusters with low occupancy levels according to the resource load levels comprises:
determining a release proportion corresponding to the resource load level of the application cluster with the low occupancy level;
releasing the resources of the application clusters with the low occupancy levels according to the release proportion;
and storing the released resources into a resource pool.
6. The method of claim 5, wherein the step of releasing the resources of the low occupancy level application cluster in a release ratio comprises:
acquiring the current resource of the application cluster with the low occupancy level;
acquiring the current access flow of the application cluster with the low occupancy level;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application cluster with the low occupancy level by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
7. The method according to claim 2 or 3, wherein the step of allocating the released resources to the high occupancy level application cluster comprises:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the high occupancy level.
8. An apparatus for allocating application cluster resources in a cloud environment, comprising:
the resource utilization rate acquisition module is used for acquiring the resource utilization rate of each application cluster in a specified transaction link in the cloud environment;
the resource load level determining module is used for determining the resource load level of each application cluster according to the resource utilization rate; the resource load level comprises a high occupancy level and a low occupancy level;
the resource application acquisition module is used for applying for resources for the application cluster with the high occupancy level;
the resource releasing module is used for releasing the resources of the application clusters with the low occupation levels according to the resource load levels if the application of the resources for the application clusters with the high occupation levels fails;
a resource allocation module, configured to allocate the released resource to the application cluster with the high occupancy level;
wherein, the resource utilization rate obtaining module comprises:
the resource load state obtaining submodule is used for obtaining the resource utilization rate of each application cluster in a specified transaction link in the cloud environment when the access flow increases;
the transaction link is formed by interaction among all the application clusters and is used for completing complete transaction work.
9. A method for allocating application cluster resources in a cloud environment is characterized by comprising the following steps:
acquiring resource load states of all application clusters in a specified transaction link in a cloud environment;
determining the resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
applying for the resource for the application cluster with the full load level of the resource;
if the application of the resources for the application cluster at the full load level of the resources fails, releasing the resources of the application clusters at other levels according to the load level of the resources;
allocating the released resources to the application cluster at the resource full load level;
the step of obtaining the resource load state of each application cluster in the cloud environment includes:
when the access flow increases, acquiring the resource load state of each application cluster in the cloud environment;
the transaction link is formed by interaction among all the application clusters and is used for completing complete transaction work.
10. The method of claim 9, wherein the cloud environment comprises a resource pool, and wherein the step of applying for resources for an application cluster at a full resource level comprises:
applying for resources from the resource pool;
when the resources of the resource pool are sufficient, the resources in the resource pool are distributed to the application cluster with the full load level of the resources;
and when the resources of the resource pool are exhausted, the application cluster of the full load level of the resources fails to apply for the resources.
11. The method of claim 10, wherein the application clusters have corresponding priorities, and wherein the step of allocating resources in the resource pool for application clusters with full resource loading levels comprises:
and when the number of the application clusters with the resource full-load level is two or more, distributing the resources in the resource pool for the application clusters with the resource full-load level according to the priority.
12. The method according to claim 9 or 10, wherein the resource load levels have corresponding release ratios, and the step of releasing the resources of the application clusters of other levels according to the resource load levels comprises:
determining the release proportion corresponding to the resource load level of the application clusters of other levels;
releasing the resources of the application clusters of other levels according to the release proportion;
and storing the released resources into a resource pool.
13. The method of claim 12, wherein the step of releasing the resources of the other level application clusters according to the release ratio comprises:
acquiring current resources of the application clusters of other levels;
acquiring the current access flow of the application clusters of other levels;
calculating the required resources by adopting the current access flow and a preset single machine limit value;
determining idle resources of the application clusters of the other levels by adopting the current resources and the required resources;
and releasing the idle resources according to the release proportion.
14. The method according to claim 9 or 10, wherein the step of allocating the released resources to the application cluster of the resource full load level comprises:
applying for resources from the resource pool in which the released resources are stored;
and allocating the resources released in the resource pool to the application cluster with the full load level of the resources.
15. An apparatus for allocating application cluster resources in a cloud environment, comprising:
the resource load state acquisition module is used for acquiring the resource load state of each application cluster in a specified transaction link in the cloud environment;
a resource load level determining module, configured to determine a resource load level of the application cluster according to the resource load state; the resource load level comprises a resource full load level and other levels;
the resource application module is used for applying for resources for the application clusters with the full load level of the resources;
the resource releasing module is used for releasing the resources of the application clusters of other levels according to the resource load level when the application of the application clusters of the full load level of the resources for the resources fails;
a released resource allocation module, configured to allocate the released resource to the application cluster at the resource full load level;
wherein the resource load status obtaining module comprises:
the resource load state acquisition submodule is used for acquiring the resource load state of each application cluster in the cloud environment when the access flow is increased;
the transaction link is formed by interaction among all the application clusters and is used for completing complete transaction work.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610982629.XA CN108063784B (en) | 2016-11-08 | 2016-11-08 | Method, device and system for distributing application cluster resources in cloud environment |
TW106127139A TWI755415B (en) | 2016-11-08 | 2017-08-10 | Method, device and system for application cluster resource allocation in cloud environment |
PCT/CN2017/108252 WO2018086467A1 (en) | 2016-11-08 | 2017-10-30 | Method, apparatus and system for allocating resources of application clusters under cloud environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610982629.XA CN108063784B (en) | 2016-11-08 | 2016-11-08 | Method, device and system for distributing application cluster resources in cloud environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108063784A CN108063784A (en) | 2018-05-22 |
CN108063784B true CN108063784B (en) | 2022-01-25 |
Family
ID=62109433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610982629.XA Active CN108063784B (en) | 2016-11-08 | 2016-11-08 | Method, device and system for distributing application cluster resources in cloud environment |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN108063784B (en) |
TW (1) | TWI755415B (en) |
WO (1) | WO2018086467A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446069A (en) * | 2018-09-26 | 2019-03-08 | 平安普惠企业管理有限公司 | Compatibility test method, device, computer equipment and medium |
CN110597623A (en) * | 2019-08-13 | 2019-12-20 | 平安普惠企业管理有限公司 | Container resource allocation method and device, computer equipment and storage medium |
CN112882825A (en) * | 2019-11-29 | 2021-06-01 | 北京国双科技有限公司 | Method, device and equipment for allocating storage resources |
CN112199251B (en) * | 2020-09-25 | 2022-04-29 | 同程网络科技股份有限公司 | Method, system and device for realizing dynamic increase and decrease of servers through timing tasks |
CN112350952B (en) * | 2020-10-28 | 2023-04-07 | 武汉绿色网络信息服务有限责任公司 | Controller distribution method and network service system |
CN112860403B (en) * | 2021-02-22 | 2023-11-07 | 中国联合网络通信集团有限公司 | Cluster load resource scheduling method, device, equipment, medium and product |
CN113965611A (en) * | 2021-10-29 | 2022-01-21 | 重庆忽米网络科技有限公司 | SaaS (software as a service) industrial APP (application) operation method based on resource release and recovery |
CN114218560B (en) * | 2022-02-22 | 2023-04-25 | 湖北芯擎科技有限公司 | Resource access method, device, electronic equipment and storage medium |
CN118567865B (en) * | 2024-07-31 | 2024-10-08 | 北京英沣特能源技术有限公司 | Cluster data acquisition method, system, equipment and medium based on calculation force optimization |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103856512A (en) * | 2012-11-30 | 2014-06-11 | 华为技术有限公司 | Cloud computing management server, working host, idle host and resource scheduling method |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120072250A (en) * | 2010-12-23 | 2012-07-03 | 한국전자통신연구원 | Dynamic load_balancing system and method thereof |
US8671407B2 (en) * | 2011-07-06 | 2014-03-11 | Microsoft Corporation | Offering network performance guarantees in multi-tenant datacenters |
CN103248659B (en) * | 2012-02-13 | 2016-04-20 | 北京华胜天成科技股份有限公司 | A kind of cloud computing resource scheduling method and system |
US9262231B2 (en) * | 2012-08-07 | 2016-02-16 | Advanced Micro Devices, Inc. | System and method for modifying a hardware configuration of a cloud computing system |
CN103634330A (en) * | 2012-08-20 | 2014-03-12 | 曙光信息产业(北京)有限公司 | Automatic resource distribution method in cloud calculation environment |
US9417919B2 (en) * | 2012-09-06 | 2016-08-16 | Hewlett Packard Enterprise Development Lp | Computer cluster with objective-based resource sharing |
CN102929715B (en) * | 2012-10-31 | 2015-05-06 | 曙光云计算技术有限公司 | Method and system for scheduling network resources based on virtual machine migration |
CN104079503B (en) * | 2013-03-27 | 2018-07-20 | 华为技术有限公司 | A kind of resource allocation methods and device |
CN103533086B (en) * | 2013-10-31 | 2017-02-01 | 中国科学院计算机网络信息中心 | Uniform resource scheduling method in cloud computing system |
CN103763346B (en) * | 2013-12-31 | 2017-07-25 | 华为技术有限公司 | A kind of distributed resource scheduling method and device |
TWI552002B (en) * | 2014-04-22 | 2016-10-01 | 財團法人工業技術研究院 | Method and system for dynamic instance deployment of public cloud |
CN104268018B (en) * | 2014-09-22 | 2017-11-24 | 浪潮(北京)电子信息产业有限公司 | Job scheduling method and job scheduler in a kind of Hadoop clusters |
CN106033371B (en) * | 2015-03-13 | 2019-06-21 | 杭州海康威视数字技术股份有限公司 | A kind of dispatching method and system of video analytic tasks |
CN105955826A (en) * | 2016-05-10 | 2016-09-21 | 广东睿江云计算股份有限公司 | Control method and device of quality of service in cloud host system |
-
2016
- 2016-11-08 CN CN201610982629.XA patent/CN108063784B/en active Active
-
2017
- 2017-08-10 TW TW106127139A patent/TWI755415B/en active
- 2017-10-30 WO PCT/CN2017/108252 patent/WO2018086467A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103856512A (en) * | 2012-11-30 | 2014-06-11 | 华为技术有限公司 | Cloud computing management server, working host, idle host and resource scheduling method |
Also Published As
Publication number | Publication date |
---|---|
TW201818244A (en) | 2018-05-16 |
WO2018086467A1 (en) | 2018-05-17 |
TWI755415B (en) | 2022-02-21 |
CN108063784A (en) | 2018-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108063784B (en) | Method, device and system for distributing application cluster resources in cloud environment | |
CN107968810B (en) | Resource scheduling method, device and system for server cluster | |
US11036553B2 (en) | Preempting or traversing allocated resource applications based on job priority and resource demand information | |
US10514960B2 (en) | Iterative rebalancing of virtual resources among VMs to allocate a second resource capacity by migrating to servers based on resource allocations and priorities of VMs | |
US9262192B2 (en) | Virtual machine data store queue allocation | |
US9727355B2 (en) | Virtual Hadoop manager | |
US7587492B2 (en) | Dynamic performance management for virtual servers | |
CN105988872B (en) | Method and device for CPU resource allocation and electronic equipment | |
US9619378B2 (en) | Dynamically optimizing memory allocation across virtual machines | |
US9413680B1 (en) | Multi-tenant throttling approaches | |
US20130019015A1 (en) | Application Resource Manager over a Cloud | |
US20170017511A1 (en) | Method for memory management in virtual machines, and corresponding system and computer program product | |
US10680975B2 (en) | Method of dynamic resource allocation for public clouds | |
US10860352B2 (en) | Host system and method for managing data consumption rate in a virtual data processing environment | |
TWI671708B (en) | Flow rate control method and device | |
US10009249B2 (en) | System with on-demand state for applications | |
US8458719B2 (en) | Storage management in a data processing system | |
CN103488538B (en) | Application extension device and application extension method in cloud computing system | |
CN112948113A (en) | Cluster resource management scheduling method, device, equipment and readable storage medium | |
CN104518897A (en) | Resource management optimization processing method and resource management optimization processing device for virtual firewalls | |
US10812408B1 (en) | Preventing concentrated selection of resource hosts for placing resources | |
US20180373565A1 (en) | Allocating resources to virtual machines | |
CN110928649A (en) | Resource scheduling method and device | |
US10397130B2 (en) | Multi-cloud resource reservations | |
CN111510479A (en) | Resource allocation method and device for heterogeneous cache system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |