Abstract
Virtual Machines (VMs) auto-scaling is an important technique to provision additional resource capacity in a Cloud environment. It allows the VMs to dynamically increase or decrease the amount of resources as needed in order to meet Quality of Service (QoS) requirements. However, the auto-scaling mechanism can be time-consuming to initiate (e.g. in the order of a minute), which is unacceptable for VMs that need to scale up/out during the computation, besides additional costs due to the increase of the energy overhead. This paper introduces a Performance and Energy-based Cost Prediction Framework to estimate the total cost of VMs auto-scaling by considering the resource usage and power consumption, while maintaining the expected level of performance. A series of experiments conducted on a Cloud testbed show that this framework is capable of predicting the auto-scaling workload, power consumption and total cost for heterogeneous VMs, with a cost-saving of up to 25% for the predicted total cost of VM self-configuration as compared to the current approaches in literature.