A machine learning technique for optimizing virtual machine placement in data-centres
摘要
High demand for cloud services and resources has led to increased energy consumption in cloud data centers. Various approaches have been proposed that employ heuristic algorithms to consolidate virtual machines (VMs) into a minimum number of physical machines (PMs). While some VMs are CPU-intensive and others are memory-intensive, there is currently no algorithm that considers VM consolidation based on their types. Therefore, we propose a novel scheduling algorithm that applies machine learning techniques to classify VMs according to their resource demands. This classification is achieved by observing their resource usage for a short period after their arrival. The algorithm then predicts the future required resources for VMs and redeploys them to a PM with a mix of types of VMs. Our proposed algorithm maximizes the utilization of the resources of PMs to reduce the number of active PMs and minimize service level agreement violations (SLAv). Our proposed algorithm was tested on a dataset that was extracted from Google’s workload Trace. Our algorithm achieved a mean 40% reduction in energy consumption and a 12% increase in resource utilization compared to the benchmark algorithms used in this study. In addition, and comparing to the Google scheduler, our algorithm reduced energy consumption by 51% and increased resource utilization by 62.43%.