CN106506657A - One kind distributes method of adjustment based on multiobject cloud computing virtual machine - Google Patents

One kind distributes method of adjustment based on multiobject cloud computing virtual machine Download PDF

Info

Publication number
CN106506657A
CN106506657A CN201611021146.XA CN201611021146A CN106506657A CN 106506657 A CN106506657 A CN 106506657A CN 201611021146 A CN201611021146 A CN 201611021146A CN 106506657 A CN106506657 A CN 106506657A
Authority
CN
China
Prior art keywords
resource
virtual
physical nodes
resources
application service
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.)
Pending
Application number
CN201611021146.XA
Other languages
Chinese (zh)
Inventor
王涛
周丽丽
刘彤军
陈庆文
杨喆
王金玉
杜寅甫
邢娜
朱明清
田晓英
甄海涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Automation of Heilongjiang Academy of Sciences
Original Assignee
Institute of Automation of Heilongjiang Academy of Sciences
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Heilongjiang Academy of Sciences filed Critical Institute of Automation of Heilongjiang Academy of Sciences
Priority to CN201611021146.XA priority Critical patent/CN106506657A/en
Publication of CN106506657A publication Critical patent/CN106506657A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention provides a kind of distribute method of adjustment based on multiobject cloud computing virtual machine, using Intel Virtualization Technology by computing resource, storage resource and Internet resources Uniform Construction into virtualization pool, cloud computing resources distribution and scheduling, dynamic expansion, automatic deployment etc. automatically on demand is realized using virtual resource management technique, user obtains resource on demand.The present invention carries out effectively management and efficiently scheduling to cloud computing resources, ensures equally loaded performance and the low energy consumption of cloud data center.

Description

Cloud computing virtual machine allocation adjustment method based on multiple targets
Technical Field
The invention relates to a cloud computing virtual machine distribution adjusting method based on multiple targets.
Background
And virtualizing the stored data resources, wherein the virtualized resources are resources obtained by abstracting physical resources through virtualization technology. Because of the difference and poor compatibility between the hardware devices of the urban data center, the unified physical resource management is difficult to realize. And the difference between the physical resources is shielded through the abstraction and virtualization of the resources, and a cloud computing environment is built. The current resource virtualization structure is shown in fig. 1.
The virtualization technology in the infrastructure as a service (laas) layer of the cloud computing architecture mainly adopts a system virtualization technology, namely virtualization software (such as VMWare, Ctrix and the like) is used for virtualizing one or more virtual machines on a physical machine. The traditional virtual machine allocation needs manual operation, including four steps of creating, installing an operating system and software, configuring and starting, and the method is long in deployment time and cannot meet the elastic requirement of cloud computing.
The invention uses the virtual machine as the basic unit to carry out the dispatching distribution and the reconfiguration. A virtual appliance is a minimized virtual machine that contains a preinstalled, preconfigured operating system, middleware, and applications. The minimized virtual machine has three templates: CPU consumption, memory consumption, and network bandwidth consumption. The virtual device file contains hardware parameter information, software configuration parameter information, and the like. The user selects the template to carry out personalized configuration according to the self service requirement, and the purpose of rapidly deploying the virtual machine is achieved. The invention aims to deploy a plurality of virtual machines to the plurality of physical machines for the first time after the virtual machines are established so as to realize the best load balancing effect and the best energy-saving effect of the physical machine cluster, and realize the self-adaptive dynamic scheduling of the virtual machines on physical nodes according to the change of application requirements.
Disclosure of Invention
The invention aims to overcome the defects of the prior art, provides a cloud computing virtual machine allocation adjusting method based on multiple targets, and solves the problems of virtual resource allocation and dynamic adjustment.
The purpose of the invention is realized by the following technical scheme: a multi-target-based cloud computing virtual machine allocation adjusting method comprises the following steps:
an initialization step:
the available resource of each physical node is a d-dimensional vector, each dimension represents a resource, the resource is a CPU, a memory or a network bandwidth, the resource of each virtual machine is a d-dimensional vector, and the aim is to put a plurality of virtual machines into a plurality of physical nodes and to ensure that the number of occupied physical nodes is minimum and the load variance is minimum;
wherein,and is
fPNIndicates the number of occupied physical nodes, fLBA balanced load variance representing a cluster of servers;
whereinPhysical node i is 1 when in use, otherwise is 0, D ξiRepresenting the variance in dimension i, d the overall dimension,
n represents the number of physical nodes,representing the average value of the ith dimension performance characteristics of all the physical nodes, wherein the performance characteristics are normalized values, namely the residual allocation quantity of ith dimension resources in the physical nodes is divided by the total quantity of the ith dimension resources, pijIs the ith dimension performance characteristic of the physical node j;
order to
WhereinWhen virtual machine i is assigned to physical node j xi→jIs 1, otherwise is 0; vi cpu、Vi mem、Vi I/OIs deficiency ofCPU, memory, network bandwidth resource of the analog machine i,the resource is the CPU, the memory and the network bandwidth resource of the physical node j;
chromosome coding and evaluation steps: according to a group-based coding mode, aiming at the combined redundancy problem existing in the group coding mode, a group-based chain coding method is obtained;
distributing N virtual machines to M physical nodes, wherein N > M is common; randomly generating a sequence containing N virtual machine numbers, and sequentially putting the random sequence into physical nodes by applying a preferential matching heuristic algorithm to obtain chromosome codes; the load balancing guarantees two targets of high performance of an application system and low utilization rate of physical nodes, and an individual is evaluated through two fitness functions:
the energy consumption degree of the chromosome is evaluated by using the number of the physical nodes, the less the physical nodes occupy, the smaller the energy consumption, the smaller the physical nodes occupy, the chromosome load performance is evaluated by using the load variance of the used physical nodes, and the smaller the variance value, the better the load performance is;
dynamic scheduling of cloud computing resources: the virtualized resource management platform adjusts the allocation of virtual resources according to the actual operation requirement of the application service so as to optimize the allocation of cloud computing resources, realize the efficient use of the cloud computing resources and meet the requirement of dynamic scalability of the application service; meanwhile, the physical nodes with low utilization rate are subjected to dynamic migration and integration of virtual resources on the physical nodes, and redundant physical nodes are closed.
Preferably, the heuristic preferential matching algorithm is specifically: selecting a first physical node from all used physical nodes, if the three-dimensional resource quantity of the physical node can meet the three-dimensional resource requirement of the first physical node, putting a first virtual machine into the physical node, otherwise, sequentially matching the first virtual machine with the used physical nodes until the physical node meeting the requirement is found; if no suitable physical node is found in all the used physical nodes, selecting a first physical node from all the unused physical nodes for the allocation of the virtual machine; and sequentially putting other virtual machines in the sequence into the physical nodes according to the algorithm.
Preferably, the virtualized resource management platform adjusts allocation of virtual resources according to actual operation requirements of the application service, and the specific implementation is as follows:
step 1, a cloud application service monitor monitors the running state of an application service, a user request and access connection; the cloud application service load manager collects load information;
step 2, the cloud application service monitor sends load information of the cloud application service to a reconfiguration decision maker;
step 3, calling a program in a prediction algorithm library by a reconfiguration decision maker to perform resource reconfiguration decision according to the collected load information and historical data of the cloud application service; determining whether to add or subtract virtual resources to the application service; if the virtual resources need to be increased or decreased, calling a resource scheduling algorithm to perform resource reconfiguration guidance according to the prediction result;
step 4, the reconfiguration decision device sends the decision information of the dynamic allocation of the resources to the dynamic allocation device of the resources;
and 5, repeatedly executing the steps until the cloud application service stops.
Preferably, the resource dynamic allocator specifically is:
if the resource dynamic distributor receives the decision information for increasing the virtual resources, according to the virtual resource load type contained in the decision information, a reasonable virtual resource is distributed from the virtual resource list to the cloud application service according to a priority heuristic distribution algorithm, then the information for increasing the virtual resources is sent to a resource load manager, the resource load manager deploys the cloud application service to the newly increased virtual resources, and finally the cloud application service instance is started;
if the resource dynamic distributor receives the decision information for reducing the virtual resources, the resource load manager is informed to delete the cloud application service instance, then the resource dynamic distributor is informed to recycle the virtual resources of the cloud application service instance, and finally the recycled virtual resources are added into a virtual resource list.
Preferably, the virtual resource load type is a computing resource, a memory resource or a network resource.
Compared with the prior art, the invention has the following beneficial effects:
computing resources, storage resources and network resources are uniformly constructed into a virtual resource pool by using a virtualization technology, the cloud computing resources are automatically allocated and scheduled, dynamically expanded, automatically deployed and the like as required by using a virtual resource management technology, and users acquire the resources as required. According to the cloud computing resource management method, cloud computing resources are effectively managed and efficiently scheduled, and the balanced load performance and low energy consumption of the cloud data center are guaranteed.
Drawings
FIG. 1: a resource virtualization structure diagram;
FIG. 2: a basic framework flow diagram of virtual machine dynamic scheduling;
FIG. 3: a schematic diagram of the number of migrations;
FIG. 4: an SLA average breach rate schematic diagram;
FIG. 5: same-time starting physical node schematic diagram at different times
Detailed Description
The technical solutions in the embodiments of the present invention will be described clearly and completely with reference to the accompanying drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention provides a cloud computing virtual machine allocation adjusting method based on multiple targets, which comprises the following steps:
an initialization step:
the available resource of each physical node is a d-dimensional vector, each dimension represents a resource, the resource is a CPU, a memory or a network bandwidth, the resource of each virtual machine is a d-dimensional vector, and the aim is to put a plurality of virtual machines into a plurality of physical nodes and to ensure that the number of occupied physical nodes is minimum and the load variance is minimum;
wherein,and is
fPNIndicates the number of occupied physical nodes, fLBA balanced load variance representing a cluster of servers;
whereinPhysical node i is 1 when in use, otherwise is 0, D ξiRepresenting the variance in dimension i, d the overall dimension,
n represents the number of physical nodes,representing the average value of the ith dimension performance characteristics of all the physical nodes, wherein the performance characteristics are normalized values, namely the residual allocation quantity of ith dimension resources in the physical nodes is divided by the total quantity of the ith dimension resources, pijIs the ith dimension performance characteristic of the physical node j;
order to
WhereinWhen virtual machine i is assigned to physical node j xi→jIs 1, otherwise is 0; vi cpu、Vi mem、Vi I/OIs the CPU, memory and network bandwidth resource of the virtual machine i,the resource is the CPU, the memory and the network bandwidth resource of the physical node j;
chromosome coding and evaluation steps: according to a group-based coding mode, aiming at the combined redundancy problem existing in the group coding mode, a group-based chain coding method is obtained;
distributing N virtual machines to M physical nodes, wherein N > M is common; randomly generating a sequence containing N virtual machine numbers, and sequentially putting the random sequence into physical nodes by applying a preferential matching heuristic algorithm to obtain chromosome codes; the load balancing guarantees two targets of high performance of an application system and low utilization rate of physical nodes, and an individual is evaluated through two fitness functions:
the energy consumption degree of the chromosome is evaluated by using the number of the physical nodes, the less the physical nodes occupy, the smaller the energy consumption, the smaller the physical nodes occupy, the chromosome load performance is evaluated by using the load variance of the used physical nodes, and the smaller the variance value, the better the load performance is;
evolution operator:
1) and (3) a crossover operator: for the problem of virtual machine allocation to physical nodes, group-based chain coding consists of two parts: virtual machine coding and physical node coding. The genes of the chromosomes are represented by groups and internal chain structures, the number of virtual machines in the groups is not fixed, so that the chromosomes with variable lengths are crossed.
Two cross factors are proposed here: the lowest index maximum length intersection improves single point intersection.
(1) Step of minimum index maximum length interleaving
Firstly, two father individuals are crossed to generate a son individual;
comparing the chain lengths of the virtual machines in the groups with the minimum indexes of the two father individuals, and selecting a longer group to be inherited to the son individuals;
deleting the serial numbers of the virtual machines which are inherited to the children in the two father individuals;
and fourthly, circulating the steps until all the virtual machine numbers are transmitted to the child individuals.
If parent 1{ (1,3,6), (2,4), (5) } and parent 2{ (1,2), (3,4,5,6) } are chosen to intersect. Firstly, the chain length of the minimum index group (1,3,6) of the father individual 1 is longer than that of the minimum index group (1,2) of the father individual 2 (if the lengths are equal, the allocable resource amount of the physical nodes corresponding to the groups is compared, and the groups with small values are selected), reserved and transmitted to the son individuals; and deleting the virtual machine numbers (1,3,6) in the two parents to obtain the parents 1{ (2,4), (5) } and the parents 2{ (2), (4,5) }. Comparing the chain length of the minimum index group (2,4) of the father individual 1 with the chain length of the minimum index group (2) of the father individual 2 again, and transmitting a larger group to the child individual; and deleting the virtual machine numbers (2,4) in the two father individuals to obtain the father individual 1{ (5) } and obtain the father individual 2{ (5) }. And finally (5) transmitted to the children. And deleting the virtual machine numbers (5) of the two parents to make the sequence of the parents be empty, and finishing the crossing.
(2) Step of improved single-point crossing
Randomly selecting one group in the father body 1 to replace a corresponding group in the father body 2;
deleting physical nodes corresponding to repeated virtual machines from the used physical node set and adding unused physical node sets aiming at the crossed father individuals 2, and deleting the virtual machines on the unused physical node sets;
generating an unallocated virtual machine sequence on the basis of reserving the virtual machine chain structure of the father body 2;
fourthly, the virtual machine sequences which are not distributed are redistributed by applying a preferential matching heuristic algorithm to obtain new sub-individuals;
and fifthly, randomly selecting one group in the father individuals 2 to replace the corresponding group in the father individuals 1, and generating the child individuals 2 according to the step 2-4.
2) Mutation operator
The mutation operation uses an intelligent mutation factor. Randomly selecting K physical nodes from the chromosome (wherein K is less than M/2),
after K physical nodes are deleted from the used physical node set, the K physical nodes are added into the unused physical node set, and virtual machines deployed on the physical nodes are deleted; and then forming an unallocated virtual machine sequence on the basis of reserving the virtual machine chain structure of the variant individual, and finally reallocating the unallocated virtual machine sequence according to a preferential allocation heuristic algorithm. The value of the parameter K is given by combining the variation rate, the value of the parameter K influences the performance of the multi-target evolution algorithm, and the value of the parameter is determined through experiments.
Hyper-volume based population update mechanism: and generating a new generation of sub-population after carrying out cross variation on the current population, stacking the current population and the sub-population, then carrying out rapid non-dominated sorting, and generating the next generation of population according to the dominated relation, crowding distance and super-volume contribution among individuals for evolution. The specific population update mechanism is as follows:
(1) the stacked large clusters are ranked in a hierarchical mode according to the dominance relation, and if the number of the hierarchical levels is v, the non-domination set is provided with L1,L2,...,Lv
(2) Assuming that the population size is N, if Count (L)1) Is N, then L is1Individuals in the collection serve as next generation populations.
(3) If Count (L)1) If greater than N, then calculate L1And selecting N-2 individuals with the maximum contribution value and the individuals with the two target extreme values as a next generation population.
(4) If Count (L)1) Less than N, then L1All individuals in the population are added into the next generation population, and L is added2、L3. . . Until the next generation population size reaches N. If L is addediCalculating L when the next generation population size is larger than NiAnd selecting the individuals with large crowding distance to join the next generation population, so that the next generation population is N in size.
The cloud computing virtual machine allocation algorithm comprises the following steps: among the multi-objective optimization algorithms, NSGA-II and SPEA2 are widely used, but both algorithms have drawbacks in scaling the progress in improving optimization. The SMS-EMOA algorithm shows better performance and more optimal results for different frontal shapes on a multi-objective optimization problem. Therefore, basic evolution operators of cloud computing resource allocation are embedded into the SMS-EMOA, and a cloud computing resource allocation algorithm based on the SMS-EMOA is designed.
The algorithm is described as follows:
initializing a father individual according to a chain coding mode based on a group, generating a father population with the scale of N, and evaluating the fitness of the individuals in the population.
Secondly, performing rapid non-dominant sorting on the evaluated father population, and dividing the dominant grade of the individuals in the population.
And thirdly, carrying out evolution operation on the population, respectively selecting two father individuals from the population by adopting a championship selection method through the algorithm, carrying out improved single-point crossing on the two father individuals to generate a hybridized individual, carrying out intelligent variation on the hybridized individual to obtain a child individual, and finally carrying out fitness evaluation on the child individual and adding the child individual into a child population pool. This procedure was repeated until the subpopulation was of size.
And fourthly, selecting the optimal individual from the father population and the child population as the next generation father population by adopting a population updating mechanism based on the super volume.
And fifthly, repeating the steps of the third step and the fourth step on the new generation father population until an evolution condition is met (iteration times are less than MaxGeneNum), and terminating the algorithm.
The preferential matching heuristic algorithm is specifically as follows: selecting a first physical node from all used physical nodes, if the three-dimensional resource quantity of the physical node can meet the three-dimensional resource requirement of the first physical node, putting a first virtual machine into the physical node, otherwise, sequentially matching with the used physical nodes until the physical node meeting the requirement is found (assuming that M physical nodes can meet the distribution requirement of N virtual machines); if no suitable physical node is found in all the used physical nodes, selecting a first physical node from all the unused physical nodes for allocation of the virtual machine (when the virtual machine is initialized, all the physical nodes are the unused physical nodes); and sequentially putting other virtual machines in the sequence into the physical nodes according to the algorithm. Wherein the three-dimensional resource amount is CPU, memory and network bandwidth.
Dynamic scheduling of cloud computing resources: the virtualized resource management platform adjusts the allocation of virtual resources according to the actual operation requirement of the application service so as to optimize the allocation of cloud computing resources, realize the efficient use of the cloud computing resources and meet the requirement of dynamic scalability of the application service; meanwhile, the physical nodes with low utilization rate are subjected to dynamic migration and integration of virtual resources on the physical nodes, and redundant physical nodes are closed.
After resource allocation is performed according to the performance requirements of each application service, the application services may fail to meet the requirements or virtual resources may be excessively provided along with the change of the performance requirements of each application service during operation. Therefore, on the basis of the virtualized resource allocation algorithm, a cloud computing resource dynamic scheduling algorithm is further needed to ensure that the virtualized resource management platform can adjust the allocation of virtual resources according to the actual operation requirements of the application service, so as to optimize the cloud computing resource allocation, realize the efficient use of cloud computing resources and meet the requirement of dynamic scalability of the application service. Meanwhile, for a physical node with too low utilization rate, dynamic migration and integration of virtual resources on the physical node are required to be performed, and redundant physical nodes are closed. Therefore, cloud computing resources are fully utilized, and the resource use cost of the application service is saved. Therefore, the cloud computing virtual machine dynamic scheduling includes dynamic increase and decrease and migration integration of the virtual machines and load balancing of the server cluster.
Referring to fig. 2, fig. 2 is a basic framework flowchart of dynamic scheduling of a virtual machine, where the virtualized resource management platform adjusts allocation of virtual resources according to actual operation requirements of application services, and the virtual resource management platform is specifically implemented as follows:
step 1, a cloud application service monitor monitors the running state of an application service, a user request and access connection; the cloud application service load manager collects load information;
step 2, the cloud application service monitor sends load information of the cloud application service to a reconfiguration decision maker;
step 3, calling a program in a prediction algorithm library by a reconfiguration decision maker to perform resource reconfiguration decision according to the collected load information and historical data of the cloud application service; determining whether to add or subtract virtual resources to the application service; if the virtual resources need to be increased or decreased, calling a resource scheduling algorithm to perform resource reconfiguration guidance according to the prediction result;
step 4, the reconfiguration decision device sends the decision information of the dynamic allocation of the resources to the dynamic allocation device of the resources;
and 5, repeatedly executing the steps until the cloud application service stops.
The resource dynamic allocator specifically comprises:
if the resource dynamic distributor receives the decision information for increasing the virtual resources, according to the virtual resource load type contained in the decision information, a reasonable virtual resource is distributed from the virtual resource list to the cloud application service according to a priority heuristic distribution algorithm, then the information for increasing the virtual resources is sent to a resource load manager, the resource load manager deploys the cloud application service to the newly increased virtual resources, and finally the cloud application service instance is started;
if the resource dynamic distributor receives the decision information for reducing the virtual resources, the resource load manager is informed to delete the cloud application service instance, then the resource dynamic distributor is informed to recycle the virtual resources of the cloud application service instance, and finally the recycled virtual resources are added into a virtual resource list.
The virtual resource load type is a computing resource, a memory resource or a network resource.
The dynamic scheduling algorithm of the virtual machine is realized as follows:
(1) pseudo code of dynamic scheduling algorithm of virtual machine with too low virtual resource load
According to a basic framework of virtual machine dynamic scheduling, a virtual machine dynamic scheduling algorithm based on application service performance is used for solving the problem that the load or the utilization rate of a virtual machine is too low, and pseudo codes of the algorithm are as follows:
wherein the algorithm uses the following function:
getVMUR () returns the usage of the virtual machine;
getAS () returns the application service tag deployed on the virtual machine;
the PI returns the available performance index of the virtual machine;
getNewVMtype () returns the new virtual machine type (compute resource consumption type, memory resource consumption type) to be added;
AddNewVM () allocates a new virtual machine;
the deployment () deploys the application service to which the application service belongs to the newly allocated virtual machine;
DelASInstance () deletes the application service instance on the virtual machine;
recovery () recovers the virtual machine resources;
(2) pseudo code of dynamic scheduling algorithm of virtual machine with too low physical resource load
The dynamic scheduling algorithm of the virtual resources with low physical resource load is used for migrating the virtual machine resources on the physical nodes with low utilization rate and closing the physical nodes to save energy consumption. The algorithm pseudo-code is as follows:
wherein the algorithm uses the following function:
the getMURO returns the utilization rate of the physical node;
getVMlistO returns all virtual machines on the physical node;
the VMDispatchO virtual machine is allocated to a new physical node;
migrateO migrates the virtual machine to a new physical node.
The cloud computing virtual machine dynamic scheduling algorithm is realized:
to verify the performance of MVDS, the CloudSim's own migration-free strategy and DVFS (Dynamic) were adopted
Voltage and frequency Scaling) strategy and MVDS algorithm, and cloud computing simulation software CloudSim adopted in the simulation is adopted for simulation.
The CloudSim simulation program simulation data center is provided with 30 physical servers with three types of different performances, three types of virtual machines with different performances are initially deployed, and specific simulation experiment parameters are shown in table 1. In order to simulate the load of a cloud computing center, a datacentre broker class needs to be modified, a loading method that random ()% 5+3 tasks are generated every 10s in the class and are randomly added to a virtual machine is compiled, so that the number of tasks and the task allocation are random, the number of the virtual machines is continuously changed along with the number of the loaded tasks, and the loads of different virtual machines and a host machine at the same time are different. Therefore, a load balancing experiment of the cloud computing center is realized through a virtual machine dynamic scheduling algorithm. And finally outputting the migration times, the SLA average violation rate and the number of enabled physical nodes at different moments until all tasks are executed.
TABLE 1 dynamic scheduling Algorithm Experimental parameters
Evolution experiments are carried out according to the parameters, and the experimental results are shown in figures 3,4 and 5. From the above graph, it can be seen that the data of the three are substantially consistent in the average rate of SLA breach, and the lower the rate of SLA breach, the smaller the performance impact on the application service. In terms of migration times, the distribution and adjustment method of the cloud computing virtual machine based on the multiple targets is far less than a self-contained DVFS (dynamic virtual File System) scheduling strategy of the cloud Sim, and the smaller the migration times, the smaller the influence on the performance of a cloud computing center is, and the more stable the performance is; on the basis of starting the number of physical nodes at the same time at different times, the cloud computing scheduling algorithm is less than the scheduling strategy without migration and DVFS, and the smaller the starting number of the physical nodes is, the better the energy-saving and consumption-reducing effects are. Based on the analysis, the scheduling algorithm based on cloud computing can greatly reduce the migration times of the virtual machine on the basis of ensuring the application service performance, and the influence of the migration on the overall performance of the cloud computing center is reduced; meanwhile, the effective utilization rate of server resources is improved to a greater extent, the number of started physical servers is reduced, and the effect of saving more energy is achieved.
The method for adjusting the allocation of the cloud computing virtual machine based on multiple targets provided by the invention is described in detail, a specific example is applied in the method to explain the principle and the implementation mode of the invention, and the description of the embodiment is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, 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 invention.

Claims (5)

1. A cloud computing virtual machine allocation adjusting method based on multiple targets is characterized by comprising the following steps:
an initialization step:
the available resource of each physical node is a d-dimensional vector, each dimension represents a resource, the resource is a CPU, a memory or a network bandwidth, the resource of each virtual machine is a d-dimensional vector, and the aim is to put a plurality of virtual machines into a plurality of physical nodes and to ensure that the number of occupied physical nodes is minimum and the load variance is minimum;
wherein,and is
fPNIndicates the number of occupied physical nodes, fLBA balanced load variance representing a cluster of servers;
whereinPhysical node i is 1 when in use, otherwise is 0, D ξiRepresenting the variance in dimension i, d the overall dimension,
n represents the number of physical nodes,representing the average value of the ith dimension performance characteristics of all the physical nodes, wherein the performance characteristics are normalized values, namely the residual allocation quantity of ith dimension resources in the physical nodes is divided by the total quantity of the ith dimension resources, pijIs the ith dimension performance characteristic of the physical node j;
order to
WhereinWhen virtual machine i is assigned to physical node j xi→jIs 1, otherwise is 0; vi cpu、Vi mem、Vi I/OIs the CPU, memory and network bandwidth resource of the virtual machine i,the resource is the CPU, the memory and the network bandwidth resource of the physical node j;
chromosome coding and evaluation steps: according to a group-based coding mode, aiming at the combined redundancy problem existing in the group coding mode, a group-based chain coding method is obtained;
distributing N virtual machines to M physical nodes, wherein N > M is common; randomly generating a sequence containing N virtual machine numbers, and sequentially putting the random sequence into physical nodes by applying a preferential matching heuristic algorithm to obtain chromosome codes; the load balancing guarantees two targets of high performance of an application system and low utilization rate of physical nodes, and an individual is evaluated through two fitness functions:
F i t n e s s = { m i n Σ j C j , m i n Σ d Dξ i d }
the energy consumption degree of the chromosome is evaluated by using the number of the physical nodes, the less the physical nodes occupy, the smaller the energy consumption, the smaller the physical nodes occupy, the chromosome load performance is evaluated by using the load variance of the used physical nodes, and the smaller the variance value, the better the load performance is;
dynamic scheduling of cloud computing resources: the virtualized resource management platform adjusts the allocation of virtual resources according to the actual operation requirement of the application service so as to optimize the allocation of cloud computing resources, realize the efficient use of the cloud computing resources and meet the requirement of dynamic scalability of the application service; meanwhile, the physical nodes with low utilization rate are subjected to dynamic migration and integration of virtual resources on the physical nodes, and redundant physical nodes are closed.
2. The method of claim 1, wherein the priority matching heuristic is specifically: selecting a first physical node from all used physical nodes, if the three-dimensional resource quantity of the physical node can meet the three-dimensional resource requirement of the first physical node, putting a first virtual machine into the physical node, otherwise, sequentially matching the first virtual machine with the used physical nodes until the physical node meeting the requirement is found; if no suitable physical node is found in all the used physical nodes, selecting a first physical node from all the unused physical nodes for the allocation of the virtual machine; and sequentially putting other virtual machines in the sequence into the physical nodes according to the algorithm.
3. The method according to claim 1, wherein the virtualized resource management platform adjusts allocation of virtual resources according to actual operation requirements of the application service, and the method is specifically implemented as follows:
step 1, a cloud application service monitor monitors the running state of an application service, a user request and access connection; the cloud application service load manager collects load information;
step 2, the cloud application service monitor sends load information of the cloud application service to a reconfiguration decision maker;
step 3, calling a program in a prediction algorithm library by a reconfiguration decision maker to perform resource reconfiguration decision according to the collected load information and historical data of the cloud application service; determining whether to add or subtract virtual resources to the application service; if the virtual resources need to be increased or decreased, calling a resource scheduling algorithm to perform resource reconfiguration guidance according to the prediction result;
step 4, the reconfiguration decision device sends the decision information of the dynamic allocation of the resources to the dynamic allocation device of the resources;
and 5, repeatedly executing the steps until the cloud application service stops.
4. The method according to claim 3, wherein the dynamic resource allocator is specifically:
if the resource dynamic distributor receives the decision information for increasing the virtual resources, according to the virtual resource load type contained in the decision information, a reasonable virtual resource is distributed from the virtual resource list to the cloud application service according to a priority heuristic distribution algorithm, then the information for increasing the virtual resources is sent to a resource load manager, the resource load manager deploys the cloud application service to the newly increased virtual resources, and finally the cloud application service instance is started;
if the resource dynamic distributor receives the decision information for reducing the virtual resources, the resource load manager is informed to delete the cloud application service instance, then the resource dynamic distributor is informed to recycle the virtual resources of the cloud application service instance, and finally the recycled virtual resources are added into a virtual resource list.
5. The method of claim 4, wherein the virtual resource load type is a computing resource, a memory resource, or a network resource.
CN201611021146.XA 2016-11-21 2016-11-21 One kind distributes method of adjustment based on multiobject cloud computing virtual machine Pending CN106506657A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611021146.XA CN106506657A (en) 2016-11-21 2016-11-21 One kind distributes method of adjustment based on multiobject cloud computing virtual machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611021146.XA CN106506657A (en) 2016-11-21 2016-11-21 One kind distributes method of adjustment based on multiobject cloud computing virtual machine

Publications (1)

Publication Number Publication Date
CN106506657A true CN106506657A (en) 2017-03-15

Family

ID=58323425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611021146.XA Pending CN106506657A (en) 2016-11-21 2016-11-21 One kind distributes method of adjustment based on multiobject cloud computing virtual machine

Country Status (1)

Country Link
CN (1) CN106506657A (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107566184A (en) * 2017-09-22 2018-01-09 天翼电子商务有限公司 A kind of resource unified management method and its system
CN107819875A (en) * 2017-11-27 2018-03-20 深信服科技股份有限公司 User specially enjoys method of servicing and device under a kind of cloud platform
CN108536517A (en) * 2018-03-20 2018-09-14 深圳大学 Dispositions method, device, equipment and the storage medium of cloud computing environment
CN108768877A (en) * 2018-07-20 2018-11-06 网宿科技股份有限公司 A kind of distribution method of burst flow, device and proxy server
CN108762892A (en) * 2018-06-07 2018-11-06 北京仿真中心 A kind of resource allocation method of cloud emulation collaborative simulation pattern
CN108874542A (en) * 2018-06-07 2018-11-23 桂林电子科技大学 Kubernetes method for optimizing scheduling neural network based
CN109960566A (en) * 2017-12-26 2019-07-02 中国移动通信集团辽宁有限公司 Distribution method, device, equipment and the medium of virtualization resource
CN110471762A (en) * 2019-07-26 2019-11-19 南京工程学院 A kind of cloud resource distribution method and system based on multiple-objection optimization
CN110489238A (en) * 2019-08-21 2019-11-22 北京百度网讯科技有限公司 Nodal test method, apparatus, electronic equipment and storage medium
CN110874248A (en) * 2018-08-31 2020-03-10 上海仪电(集团)有限公司中央研究院 Virtual machine starting acceleration method and system in cloud computing environment
CN111143050A (en) * 2018-11-02 2020-05-12 中移(杭州)信息技术有限公司 Container cluster scheduling method and device
CN111930469A (en) * 2020-07-20 2020-11-13 湖北美和易思教育科技有限公司 College big data competition management system and method based on cloud computing
CN113282369A (en) * 2021-05-26 2021-08-20 上海仪电(集团)有限公司中央研究院 Virtual machine scheduling method, device, medium and equipment
WO2021228103A1 (en) * 2020-05-15 2021-11-18 北京金山云网络技术有限公司 Load balancing method and apparatus for cloud host cluster, and server
CN114219377A (en) * 2022-02-22 2022-03-22 云智慧(北京)科技有限公司 Service resource allocation method, device and equipment
CN114326827A (en) * 2022-01-12 2022-04-12 北方工业大学 Unmanned aerial vehicle cluster multi-task dynamic allocation method and system
CN115495231A (en) * 2022-08-09 2022-12-20 徐州医科大学 Dynamic resource scheduling method and system under complex scene of high concurrent tasks
CN117112242A (en) * 2023-10-24 2023-11-24 纬创软件(武汉)有限公司 Resource node allocation method and system in cloud computing system
WO2024027148A1 (en) * 2022-08-04 2024-02-08 华为云计算技术有限公司 Resource scheduling method and apparatus, and computing device cluster, medium and program product
CN117763570A (en) * 2024-02-22 2024-03-26 福建银数信息技术有限公司 Cloud computing-based secure resource pool management method and system
CN118170492A (en) * 2024-01-26 2024-06-11 无锡蓝蔚企业管理有限公司 Enterprise resource management platform based on cloud computing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101938416A (en) * 2010-09-01 2011-01-05 华南理工大学 Cloud computing resource scheduling method based on dynamic reconfiguration virtual resources

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101938416A (en) * 2010-09-01 2011-01-05 华南理工大学 Cloud computing resource scheduling method based on dynamic reconfiguration virtual resources

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
艾浩军: "基于多目标演化算法的云计算虚拟机分配策略研究", 《计算机科学》 *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107566184A (en) * 2017-09-22 2018-01-09 天翼电子商务有限公司 A kind of resource unified management method and its system
CN107819875A (en) * 2017-11-27 2018-03-20 深信服科技股份有限公司 User specially enjoys method of servicing and device under a kind of cloud platform
CN109960566A (en) * 2017-12-26 2019-07-02 中国移动通信集团辽宁有限公司 Distribution method, device, equipment and the medium of virtualization resource
CN108536517A (en) * 2018-03-20 2018-09-14 深圳大学 Dispositions method, device, equipment and the storage medium of cloud computing environment
CN108762892A (en) * 2018-06-07 2018-11-06 北京仿真中心 A kind of resource allocation method of cloud emulation collaborative simulation pattern
CN108874542A (en) * 2018-06-07 2018-11-23 桂林电子科技大学 Kubernetes method for optimizing scheduling neural network based
CN108768877A (en) * 2018-07-20 2018-11-06 网宿科技股份有限公司 A kind of distribution method of burst flow, device and proxy server
CN110874248A (en) * 2018-08-31 2020-03-10 上海仪电(集团)有限公司中央研究院 Virtual machine starting acceleration method and system in cloud computing environment
CN111143050A (en) * 2018-11-02 2020-05-12 中移(杭州)信息技术有限公司 Container cluster scheduling method and device
CN111143050B (en) * 2018-11-02 2023-09-19 中移(杭州)信息技术有限公司 Method and equipment for dispatching container clusters
CN110471762A (en) * 2019-07-26 2019-11-19 南京工程学院 A kind of cloud resource distribution method and system based on multiple-objection optimization
CN110471762B (en) * 2019-07-26 2023-05-05 南京工程学院 Cloud resource allocation method and system based on multi-objective optimization
CN110489238A (en) * 2019-08-21 2019-11-22 北京百度网讯科技有限公司 Nodal test method, apparatus, electronic equipment and storage medium
WO2021228103A1 (en) * 2020-05-15 2021-11-18 北京金山云网络技术有限公司 Load balancing method and apparatus for cloud host cluster, and server
CN111930469B (en) * 2020-07-20 2024-04-09 武汉美和易思数字科技有限公司 College big data competition management system and method based on cloud computing
CN111930469A (en) * 2020-07-20 2020-11-13 湖北美和易思教育科技有限公司 College big data competition management system and method based on cloud computing
CN113282369A (en) * 2021-05-26 2021-08-20 上海仪电(集团)有限公司中央研究院 Virtual machine scheduling method, device, medium and equipment
CN113282369B (en) * 2021-05-26 2023-05-12 上海仪电(集团)有限公司中央研究院 Virtual machine scheduling method, device, medium and equipment
CN114326827A (en) * 2022-01-12 2022-04-12 北方工业大学 Unmanned aerial vehicle cluster multi-task dynamic allocation method and system
CN114326827B (en) * 2022-01-12 2023-06-09 北方工业大学 Unmanned aerial vehicle cluster multitasking dynamic allocation method and system
CN114219377B (en) * 2022-02-22 2022-06-07 云智慧(北京)科技有限公司 Service resource allocation method, device and equipment
CN114219377A (en) * 2022-02-22 2022-03-22 云智慧(北京)科技有限公司 Service resource allocation method, device and equipment
WO2024027148A1 (en) * 2022-08-04 2024-02-08 华为云计算技术有限公司 Resource scheduling method and apparatus, and computing device cluster, medium and program product
CN115495231A (en) * 2022-08-09 2022-12-20 徐州医科大学 Dynamic resource scheduling method and system under complex scene of high concurrent tasks
CN115495231B (en) * 2022-08-09 2023-09-19 徐州医科大学 Dynamic resource scheduling method and system under high concurrency task complex scene
CN117112242A (en) * 2023-10-24 2023-11-24 纬创软件(武汉)有限公司 Resource node allocation method and system in cloud computing system
CN117112242B (en) * 2023-10-24 2024-01-26 纬创软件(武汉)有限公司 Resource node allocation method and system in cloud computing system
CN118170492A (en) * 2024-01-26 2024-06-11 无锡蓝蔚企业管理有限公司 Enterprise resource management platform based on cloud computing
CN117763570A (en) * 2024-02-22 2024-03-26 福建银数信息技术有限公司 Cloud computing-based secure resource pool management method and system
CN117763570B (en) * 2024-02-22 2024-05-07 福建银数信息技术有限公司 Cloud computing-based secure resource pool management method and system

Similar Documents

Publication Publication Date Title
CN106506657A (en) One kind distributes method of adjustment based on multiobject cloud computing virtual machine
Abed-Alguni et al. Distributed Grey Wolf Optimizer for scheduling of workflow applications in cloud environments
Wei-guo et al. Research on kubernetes' resource scheduling scheme
Gao et al. A multi-objective ant colony system algorithm for virtual machine placement in cloud computing
CN110489229B (en) Multi-target task scheduling method and system
Zhang et al. Network-aware virtual machine migration in an overcommitted cloud
CN108009016A (en) A kind of balancing resource load control method and colony dispatching device
CN106227599B (en) The method and system of scheduling of resource in a kind of cloud computing system
Ghetas A multi-objective Monarch Butterfly Algorithm for virtual machine placement in cloud computing
Gao et al. An energy-aware ant colony algorithm for network-aware virtual machine placement in cloud computing
CN107346264A (en) A kind of method, apparatus and server apparatus of virtual machine load balance scheduling
Idrissi et al. A new approach for a better load balancing and a better distribution of resources in cloud computing
Khan et al. Clouds of small things: Provisioning infrastructure-as-a-service from within community networks
CN114356543A (en) Kubernetes-based multi-tenant machine learning task resource scheduling method
CN109447264B (en) Virtual machine placement genetic optimization method based on VHAM-R model in cloud computing environment
Chen et al. Scheduling independent tasks in cloud environment based on modified differential evolution
Seddigh et al. Dynamic prediction scheduling for virtual machine placement via ant colony optimization
Mehranzadeh et al. A novel-scheduling algorithm for cloud computing based on fuzzy logic
Zhang et al. A PSO-based hierarchical resource scheduling strategy on cloud computing
CN110275759A (en) A kind of virtual machine cluster dynamic deployment method
Mylavarapu et al. An optimized capacity planning approach for virtual infrastructure exhibiting stochastic workload
Yang et al. Multi-policy-aware MapReduce resource allocation and scheduling for smart computing cluster
Kumar et al. QoS‐aware resource scheduling using whale optimization algorithm for microservice applications
Emara et al. Genetic-Based Multi-objective Task Scheduling Algorithm in Cloud Computing Environment.
Chandrasekaran et al. Load balancing of virtual machine resources in cloud using genetic algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170315

WD01 Invention patent application deemed withdrawn after publication