| Physical machine power consumption is an important source of data center energy consumption.Therefore,how to use virtualization technology to optimize the use of physical machines,not only achieves the goal of reducing energy consumption in cloud data center networks,but also meets the quality of service at the same time.This is a hot research that people are concerned about.Existing VMP(Virtual Machine Placement)algorithms can be classified into two categories based on whether the VMs'(Virtual Machine's)resource demands are assumed to be static or dynamic.The former is formulated as a simple bin-packing problem.However,it cannot adapt to essentially varied real resource requirements.The dynamic VMP strategies are more popular.They actually divide the continuous time into discrete points or smaller time segments,calculating using the peak value of each point or segment.Finally,the time slices are connected to characterize VMs' dynamic features.It is obvious that the utilization performance would degrade as time goes by,in addition,once a resource overflow occurs,the migration of virtual machines is required,resulting in a large amount of migration costs.And strategy with static ideas implemented within small time segments cannot fully utilize PM(Physical Machine)resources.In this paper,based on the statistics of historical resource usage of virtual machine running the same process,we design a practical resource demand pattern detection strategy to model the VM's periodical dynamic resource as a Gaussian distribution pattern.The dynamic characteristics of VM resource requirements can be simulated and the balance between accuracy and complexity of the detection algorithm can also be achieved.In order to fully consider the resources of each dimension,with the theorems of Gaussian functions,we define VMs and PMs from the perspective of multi-dimensional resources.At the same time,because of the continuity of the Gaussian function,we can easily obtain the total amount of resource utilization over a period of time.Then we design two new metrics,called the cumulative utilization ratio,CUR and the resource balance distance,RBD,in order to measure the overall resource utilization level and the equilibrium of multi-dimensional resource utilization,respectively.Based on the principle of placing complementary virtual machines on the same PM,from the perspective of global optimization,each VM searches for the best matching PM synchronously fully utilizing the resources of each dimension of the PM,and striving for the balanced use of resources,in the meantime ensuring service quality,reducing the number of active PMs and the frequency of VM migration.In algorithm implementation,we use two evolutionary algorithms,one is the mainstream ant colony algorithm,and the other is the cuckoo algorithm proposed in recent years.Based on predicted Gaussian patterns,we propose an algorithm named GACO-VMP(Gaussian pattern based ant colony optimization VMP algorithm)to get the most energy efficient mapping result between VMs and PMs by imitating the ant foraging behavior.This strategy arranges VMs with complementary resource requirements on a PM to implement energy-aware VM placement.Another is Cuckoo Search based VMP(CSVMP)Algorithm.In the algorithm,the cuckoo eggs represent the deployment plan of the virtual machine cluster.Since Levy's flight can expand the search range and help the intelligent algorithm avoid falling into the local optimal solution,each time the cuckoo eggs evolve,they can fly through Levi's flight,updating synchronously of all matching solutions from a global perspective could speed up convergence.We compared our algorithms with CompVM,Wrasse and FF studied in other papers.Simulation experiments based on real tracking of Google clusters show that GACO-VMP and CSVMP have achieved significant performance improvements in terms of energy efficiency and VM migration.At the same time,they have also significantly increased resource utilization and balanced the utilization of multiple resources. |