A multi-objective load balancing algorithm for virtual machine placement in cloud data centers based on machine learning
- PDF / 847,050 Bytes
- 24 Pages / 439.37 x 666.142 pts Page_size
- 52 Downloads / 185 Views
A multi-objective load balancing algorithm for virtual machine placement in cloud data centers based on machine learning Arezoo Ghasemi1 · Abolfazl Toroghi Haghighat1 Received: 2 October 2019 / Accepted: 18 April 2020 © Springer-Verlag GmbH Austria, part of Springer Nature 2020
Abstract Cloud computing provides utility computing in which clients pay the cost according to their demands and service use. There are some challenges to this technology. One of these issues in data centers is virtual machine (VM) placement so that mapping of these VMs to hosts is executed for a variety of objectives such as load balancing, reducing energy consumption, increasing resource utilization, shortening response time, etc. In this paper, a strategy is presented based on machine learning for VM replacement which aims to balance the load in host machines (HM). In this proposed strategy, the learning agent, in each learning episode by selecting an action from among the permissible actions and executing it on the environment receives a reward according to the desirability of the solution obtained by doing that action in the environment. Receiving a reward from the environment and updating the action value table enable the learner agent to learn in the following episodes that in each environment state, selecting and executing which action is better in the environment and this leads to further enhancement. Our proposed algorithm has, on average, improved the interHM load balance in terms of processor, memory, and bandwidth by 25%, 34%, and 32%, respectively, prior to the implementation of the algorithm. Our strategy was compared from diffrent aspects in three scenarios to the MOVMrB strategy. Finally, it was concluded that our proposed algorithm can be more effective in load balancing by having much less runtime and turning off more HMs. Keywords Cloud computing · Virtual machine placement · Load balancing · Machine learning
B
Abolfazl Toroghi Haghighat [email protected] Arezoo Ghasemi [email protected]
1
Faculty of Computer and Information Technology Engineering, Qazvin Branch, Islamic Azad University, Qazvin, Iran
123
A. Ghasemi, A. T. Haghighat
Mathematics Subject Classification 68M14 · 68Q99 · 68T05
1 Introduction Virtual machine (VM) research has become the center of attention as the cloud technology grows. Virtual technology gives us the opportunity to aggregate all kinds of data resources, software resources and hardware resources and to fulfill our computing needs whilst spending less money [1]. Each data center includes several host machines (HMs) which host the VMs made by users. Therefore, HMs have different resource consumption due to the different demands of the VMs which they host. Furthermore, due to implementing different programs on VMs, their resource demands are variable through the time, consequently, the prediction of VMs demands and the resources used by their HMs is a challenge. Given this fact, as the VMs load changes (the resources allocated to a VM), HMs load (the total load of VMs which is
Data Loading...