An optimal VM Placement in Cloud Data Centers Based on Discrete Chaotic Whale Optimization Algorithm
Subject Areas : Cloud, Cluster, Grid and P2P Computingmohammad masdari 1 , sasan Gharehpasha 2 , ahmad jafarian 3
1 - Department of Computer Engineering, Urmia Branch, Islamic Azad University, Urmia, Iran.
2 - Department of Computer Engineering, Urmia Branch, Islamic Azad University, Urmia, Iran.
3 - Department of Mathematics, Urmia Branch, Islamic Azad University, Urmia, Iran
Keywords: resource management, power consumption, virtualization, Whale Optimization Algorithm,
Abstract :
Cloud computing, with its immense potentials in low cost and on-demand services, is a promising computing platform for both commercial and non-commercial computation applications. It focuses on the sharing of information and computation in a large network that are quite likely to be owned by geographically disbursed different venders. Energy efficiency in data centers has become a hot topic in recent years as more and larger data centers have been established and the electricity cost has become a major expense for operating them. Server consolidation using virtualization technology has become an important technology to improve the energy efficiency of data centers. Virtual machine placement is the key in server consolidation. In the past few years, many approaches to virtual machine placement have been proposed, but existing virtual machine placement approaches to the virtual machine placement problem consider the energy consumption by physical machines. In this paper, we proposed a new approach for placement based on Discrete Chaotic whale optimization Algorithm. First goal of our presented algorithm is reducing the energy consumption in datacenters by decreasing the number of active physical machines. Second goal is decreasing waste of resources and management of them using optimal placement of virtual machines on physical machines in cloud data centers. By using the method, the increase in migration of virtual machines to physical machines is prevented. Finally, our proposed algorithm is compared to some algorithms in this area like FF, ACO, MGGA, GSA, and FCFS.
[1] R. Bao, "Performance evaluation for traditional virtual machine placement algorithms in the cloud," in International Conference on Internet of Vehicles, 2016: Springer, pp. 225-231.
[2] M. Masdari, S. ValiKardan, Z. Shahi, and S. I. Azar, "Towards workflow scheduling in cloud computing: a comprehensive analysis," Journal of Network and Computer Applications, vol. 66, pp. 64-82, 2016.
[3] K. Braiki and H. Youssef, "Multi-objective virtual machine placement algorithm based on particle swarm optimization," in 2018 14th International Wireless Communications & Mobile Computing Conference (IWCMC), 2018: IEEE, pp. 279-284.
[4] S. K. Addya, A. K. Turuk, B. Sahoo, M. Sarkar, and S. K. Biswash, "Simulated annealing based VM placement strategy to maximize the profit for Cloud Service Providers," Engineering science and technology, an international journal, vol. 20, no. 4, pp. 1249-1259, 2017.
[5] M. Masdari, S. Barshande, and S. Ozdemir, "CDABC: chaotic discrete artificial bee colony algorithm for multi-level clustering in large-scale WSNs," The Journal of Supercomputing, vol. 75, no. 11, pp. 7174-7208, 2019.
[6] Y. Qin, H. Wang, F. Zhu, and L. Zhai, "A multi-objective ant colony system algorithm for virtual machine placement in traffic intense data centers," IEEE access, vol. 6, pp. 58912-58923, 2018.
[7] M. Masdari and M. Zangakani, "Green cloud computing using proactive virtual machine placement: challenges and issues," Journal of Grid Computing, pp. 1-33, 2019.
[8] S. Gharehpasha, M. Masdari, and A. Jafarian, "The Placement of Virtual Machines Under Optimal Conditions in Cloud Datacenter," Information Technology and Control, vol. 48, no. 4, pp. 545-556, 2019.
[9] C. Sonklin, M. Tang, and Y.-C. Tian, "A decrease-and-conquer genetic algorithm for energy efficient virtual machine placement in data centers," in 2017 IEEE 15th International Conference on Industrial Informatics (INDIN), 2017: IEEE, pp. 135-140.
[10] A. Al-Moalmi, J. Luo, A. Salah, and K. Li, "Optimal virtual machine placement based on grey wolf optimization," Electronics, vol. 8, no. 3, p. 283, 2019.
[11] S. Y. Rashida, M. Sabaei, M. M. Ebadzadeh, and A. M. Rahmani, "A memetic grouping genetic algorithm for cost efficient VM placement in multi-cloud environment," Cluster Computing, pp. 1-40, 2019.
[12] L. Hong and G. Yufei, "GACA-VMP: Virtual machine placement scheduling in cloud computing based on genetic ant colony algorithm approach," in 2015 IEEE 12th Intl Conf on Ubiquitous Intelligence and Computing and 2015 IEEE 12th Intl Conf on Autonomic and Trusted Computing and 2015 IEEE 15th Intl Conf on Scalable Computing and Communications and Its Associated Workshops (UIC-ATC-ScalCom), 2015: IEEE, pp. 1008-1015.
[13] R. Asemi, E. Doostsadigh, M. Ahmadi, and H. T. Malazi, "Energy efficieny in virtual machines allocation for cloud data centers using the imperialist competitive algorithm," in 2015 IEEE Fifth International Conference on Big Data and Cloud Computing, 2015: IEEE, pp. 62-67.
[14] M. Masdari and M. Jalali, "A survey and taxonomy of DoS attacks in cloud computing," Security and Communication Networks, vol. 9, no. 16, pp. 3724-3751, 2016.
[15] S. E. Dashti and A. M. Rahmani, "Dynamic VMs placement for energy efficiency by PSO in cloud computing," Journal of Experimental & Theoretical Artificial Intelligence, vol. 28, no. 1-2, pp. 97-112, 2016.
[16] S. Mirjalili and A. Lewis, "The whale optimization algorithm," Advances in engineering software, vol. 95, pp. 51-67, 2016.
[17] E. Parvizi and M. H. Rezvani, "Utilization-aware energy-efficient virtual machine placement in cloud networks using NSGA-III meta-heuristic approach," Cluster Computing, pp. 1-23, 2020.
[18] S. Azizi and D. Li, "An energy-efficient algorithm for virtual machine placement optimization in cloud data centers," Cluster Computing, pp. 1-14, 2020.
[19] M. J. Moghaddam, A. Esmaeilzadeh, M. Ghavipour, and A. K. Zadeh, "Minimizing virtual machine migration probability in cloud computing environments," Cluster Computing, pp. 1-10, 2020.
[20] F. Abdessamia, W.-Z. Zhang, and Y.-C. Tian, "Energy-efficiency virtual machine placement based on binary gravitational search algorithm," Cluster Computing, pp. 1-12, 2019.
[21] M. K. Gupta, A. Jain, and T. Amgoth, "Power and resource-aware virtual machine placement for IaaS cloud," Sustainable Computing: Informatics and Systems, vol. 19, pp. 52-60, 2018.
7
Journal of Advances in Computer Engineering and Technology
An optimal VM Placement in Cloud Data Centers Based on Discrete Chaotic Whale Optimization Algorithm
Received (Day Month Year)
Revised (Day Month Year)
Accepted (Day Month Year)
Abstract— Cloud computing, with its immense potentials in low cost and on-demand services, is a promising computing platform for both commercial and non-commercial computation applications. It focuses on the sharing of information and computation in a large network that are quite likely to be owned by geographically disbursed different venders. Energy efficiency in data centers has become a hot topic in recent years as more and larger data centers have been established and the electricity cost has become a major expense for operating them. Server consolidation using virtualization technology has become an important technology to improve the energy efficiency of data centers. Virtual machine placement is the key in server consolidation. In the past few years, many approaches to virtual machine placement have been proposed, but existing virtual machine placement approaches to the virtual machine placement problem consider the energy consumption by physical machines. In this paper, we proposed a new approach for placement based on Discrete Chaotic whale optimization Algorithm. First goal of our presented algorithm is reducing the energy consumption in datacenters by decreasing the number of active physical machines. Second goal is decreasing waste of resources and management of them using optimal placement of virtual machines on physical machines in cloud data centers. By using the method, the increase in migration of virtual machines to physical machines is prevented. Finally, our proposed algorithm is compared to some algorithms in this area like FF, ACO, MGGA, GSA, and FCFS. 2.
Index Terms—Power Consumption, Resource management, Virtualization, Whale Optimization Algorithm.
I. INTRODUCTION
C
loud computing is an on-demand Internet-based computing service, where computing resources are shared among the users via the Internet and its usage based on the
pay-for-use model. Virtualization of computing resources allows the system to use the resources efficiently. One of the challenging issues in virtualization is the placement of virtual machine (VM) on the physical machines (PMs) in order to utilize computing resources efficiently. Optimal placement of virtual machines on physical machines in cloud data centers results in management of consumed resources and prevents waste of resources [1-4].
Cloud computing has a general tendency relative to other computing’s, as cloud computing provides a cheap and convenient platform for users to have access to the resources. Computing has a context where the resources are provided to the users’ service. Moreover, cloud computing has provided some conditions for users to easily access resources shared on this platform [5, 6].
Cloud computing deployment models are categorized as private, public, and community, and hybrid clouds. If the cloud computing model is private, cloud ownership would be on an organization or an entity. An example of this cloud model is the use of commercial and financial applications that contain sensitive and critical information for the organization. If cloud computing is in the public mode, public cloud ownership would be the responsibility of the service provider and its resources would be sold to the public. End users can rent parts of resources and can usually manage the resources provided under the cloud according to their own needs [7, 8]. Amazon, Google, and Microsoft are examples of public cloud providers. Another state of cloud computing is the community [9-11]. If the cloud is as a community, it allows members of a group to use its resources or to use multiple private organizations that share data. The latest cloud mode is hybrid cloud computing. This cloud is a combination of two or more cloud infrastructures that may be private, public, or community. The main goal of a hybrid cloud is usually allocating additional resources to high demands [12-15].
One of the most important issues in cloud computing is the optimal virtual machine placement on physical machines in the cloud data center. The virtual machine placement problem is an NP-hard problem, so it is a kind of optimization problem. The optimization algorithms are proper to solving this problem. Several virtual machine placement algorithms have been proposed in recent years. These algorithms are not capable of balancing the use of computational resources as well as preventing the loss of resources and minimizing simultaneous energy consumption. So a novel method based on discrete chaotic whale optimization algorithm is proposed for optimal virtual machine placement. In the proposed scheme several novel parameters for virtual machine placement problem are considered. The proposed algorithm provides a good balancing between resource consumption in cloud data center and has more efficiency in virtual machine placement problem.
In this paper, a new algorithm has been proposed based on discrete chaotic whale optimization algorithm for virtual machine placement on physical machines for better management of computational resources as well as energy consumption [16]. The first goal of the proposed algorithm was to reduce energy consumption in cloud data centers by reducing active physical machines. The second goal was to reduce the waste of resources and its management by optimal virtual machine placement on physical machines in cloud data centers. Moreover, reducing other cases like bandwidth consumption, CPU utilization, delay, memory utilization and storage space utilization were considered as well. The proposed algorithm was compared with the algorithms used in the regard, such as FF, ACO, MGGA, GSA, and FCFS.
The paper is organized as the following: Some related works are studied in the second part. In the third part, the placement of the virtual machine concept and the basic concepts are addressed respectively. In the fourth section, the proffered algorithm is discussed thoroughly and finally in the fifth-section, experiments and results are shown. At the end of the paper in section seven, the conclusion of this research is presented.
II. Related work
There are different types of virtual machine placement algorithms in cloud computing. The main purpose of virtual machine placement algorithms is to obtain high performance and manage system resources. Traditional deployment algorithms cannot provide the right conditions in the cloud environment because they have overhead costs and providers turn to heuristic or hybrid algorithms. This section has reviewed some of the studies conducted in this area.
Parvizi et al. proposed a new scheme for optimal utilization of energy consumption in cloud data centers. Finding the optimal host for virtual machines in cloud data centers is the main aim of this study. By optimal placement, the number of active physical machines are reduced and the amount of energy consumption is reduced and it is very important issue in virtual machine placement. So a fundamental goal is maximizing the utilization of available resources while minimizing energy consumption. For reaching to this goal, the NSGA-III meta-heuristic approach is used. The inefficient utilization of computing resources could cause increased energy wastage. The other reason that caused for energy consumption is migration of virtual machines on physical machines in cloud data centers. In the presented algorithm the multi-object technique is used for solving virtual machine placement problem. So their main purpose is to minimize overall resource loss while minimizing power consumption as well as decreasing the number of active physical machines. The result of presented scheme is compared with first-fit decreasing and exact mathematical. Nowadays the number of virtual machines that located in cloud data centers is very high and by noticing this, in this study the number of virtual machines is not enough for getting a good balance between the main purposes [17].
Azizi et al. have introduced a novel multi-objective meta-heuristic algorithm for solving the virtual machines placement problem according to informed resources. The proposed multi-objective algorithm is used to locate the virtual machines on physical machines in the cloud data center in optimal conditions. Virtualization operations allow for better utilization of hardware resources. One of the main challenges in cloud computing is virtual machines` deployment on physical machines to make the most of their resources. Moreover, the imbalance in the use of resources is a waste of hardware resources in cloud data centers. In this study, they proposed an efficient heuristic algorithm that focuses on power consumption and resource wastage optimization to solve the aforementioned problem. The proposed algorithm, called MinPR, minimizes the total power consumption by reducing the number of active physical machines and prioritizing the power-efficient ones. Also, it reduces resource wastage by maximizing and balancing resource utilization among physical machines. Simulations based on cloud user-customized virtual machines and Amazon EC2 Instances in this research. Their simulation parameters are power consumption, resource wastage, CPU utilization, memory utilization, bandwidth utilization, and storage capacity utilization. The main idea of presented algorithm lies in two phases. In the first phase, called placement phase, physical machines are sorted in non-ascending order based on their power efficiency and the second phase is the replacement phase. This approach reduced the power consumption by reducing the number of the active physical machine and make good balance between virtual machines and physical machines in cloud data centers [18].
Moghaddam et al. suggested a new deployment algorithm to solve the problem of virtual machine placement on physical machines in cloud data centers. The presented algorithm is based on a new intelligent VM migration approach, called CLANFIC, which utilizes modified Cellular Learning Automata based Evolutionary Computing (CLA-EC) and neuro-fuzzy to minimize the number of VM migrations and improve energy consumption. In this study, the energy consumption reduced by minimizing the virtual machines migrations on physical machines in cloud data centers. The prediction algorithm is used in this research for minimizing the number of the virtual machines migration. The proposed algorithm reduces the number of migrations in two steps (i) finding the optimal virtual machine placement and replacement on physical servers by using modified CLAEC (ii) predicting future resource usage in each host by a neuro-fuzzy algorithm to prevent unnecessary migrations. The main purposes of presented algorithm are migration number, energy consumption, and SLA violation of the data center. The compared results showed that the proposed method acted better compared to the other methods [19].
abdessamia et al. proposed a novel meta-heuristic algorithm for virtual machines deployment on physical machines in the cloud data center. Maximum use of hardware resources, minimizing energy consumption and presenting the best quality service is one of the most important challenges in cloud computing. Given the increasing progress of cloud data centers and their hardware resources, energy consumption control was the main goals of the study. Thus, the proposed method sought to minimize the energy consumption in cloud data centers by optimizing virtual machines on physical machines. The proposed method was based on binary gravitational search Algorithm. The purposes of the study were to reduce power consumption in cloud data centers. The proposed algorithm is compared with particle swarm optimization, First-fit, Best-fit, and worst-fit. In this study, the other placement parameters like resource management and SLA are not considered. In the presented paper, many objects of virtual machine placement are used and compared with other results [20].
Gupta et al. have introduced a new multi-objective meta-heuristic algorithm to solve virtual machines placement problem on physical machines in cloud data centers called multi-purpose virtual machines. In the virtualization technique, cloud computing is a very wide source of resources that users use over the Internet. One of the basic cases in virtualization techniques is virtual machine placement on physical machines in cloud data centers. Inappropriate virtual machines placement would disrupt the balance in cloud data centers and lead to the waste of resources. In this study, using the proposed algorithm, it was sought to balance the cloud data centers and improve the use of hardware resources. Thus, the purpose of the proposed approach was to maximize the use of physical machine resources in cloud data centers. In reaching this goal, the number of physical machines running in the cloud data center has to be reduced. As the number of active physical machines decreased, energy consumption was also reduced and minimized. The results compared with other algorithms showed that the proposed algorithm performed better in the virtual machines placement problem [21].
III. The Placement of Virtual Machine
The virtual machine placement problem is considered as one of the most important issues in cloud computing. By optimal placement of virtual machine, some factors in cloud computing like power consumption and resource wastage are minimizing. The placement of virtual machine in cloud computing is one of the most complexities.
There is no consistent pattern for virtual machine placement in cloud computing and it is unpredictable. As an example, if we have n virtual machines and m physical machines in a cloud data center, then the maximum mapping of virtual machines on physical machines equals mn, which shows the complexity of the placement problem. Fig. (1) shows the placement problem.
Fig. 1. Placement of virtual machines.
Power consumption is the most important issue in the cloud data centers. Recent researches show that energy consumption by servers in the data centers can be exactly calculated using a linear equation between energy consumption and CPU usage. The equation (1) shows the energy consumption in the cloud computing data center.
| (1) |
In Equation (1), shows the energy consumption of physical machine P in the cloud data center. shows the energy consumption of physical machine P, when it is. shows the amount of energy used when the physical machine p is idle and Upcpu shows the amount of CPU that the physical machine P used in MIPS. According to Equation (1), energy consumption has a linear relationship with CPU consumption, hence as the CPU consumption of physical machines goes higher, the same amount of energy consumption in data centers increases.
Hence the overall energy consumption in cloud data centers calculated will be as follows:
| (2) |
In Equation (2), a and b are binary variables that indicate whether the physical machines in cloud data centers are active or not. Cv shows the CPU consumption of physical machines using virtual machines.
One of the other important objects in the placement of virtual machines is preventing the waste of resources in cloud data centers. Each server in the data center has a hardware resource and can host different virtual machines. The unused resources on servers should be managed appropriately. Equation (3) shows the waste of resources
| (3) |
In Equation (3), and represent the total CPU and memory used by all virtual machines on physical machines in the cloud data center. is the amount of memory that one physical machine should assign to a virtual machine that was built on it. The rest of the parameters were mentioned earlier.
The optimal placement of virtual machine is reduced and minimized the traffic factor in cloud data centers. By reducing the traffic in cloud data center, the transmission speeds and efficiency are increasing. So one of important goals of the virtual machine placement in cloud data centers is minimizing the traffic. There are two types of traffic in cloud data centers, the traffic between virtual machines and the traffic between virtual machines and physical machines. The amount of traffic is shown by the Equation (4).
|
|
In Equation (4) the first part represents the traffic between the virtual machines and the second part represents the traffic between the virtual machines and the physical machines. In Equation (4), aij shows the traffic between virtual machine i and virtual machine j. bhp, is a variable to represent the cost of the connectively between the physical machine h and the physical machine p. ei, shows the traffic between the virtual machine i with a node outside of the cloud data center. The cost of the connectively of virtual machine i on the physical machine pi shown by gπ(i).
Another important factor that plays a major role in the performance of cloud data centers is the latency. Delivery delay indicates the length of time it takes from the origin to the destination. The end-to-end delay rate is shown in Equation (5).
| (5) |
In Equation (5), N denotes the number of transfer packets. Dtrans indicates the length of time that it takes send all bits to the communication channel. Dprop, the time it takes for bits to reach the destination from the source. Dproc , shows the time for the processor to process the packet by the router. Dqueue,
includes the time the packet waits for the queue to execute.
According to the above equations, the goals of the placement of virtual machines on physical machines in the cloud data center are:
(6) |
|
(7) |
|
(8) |
|
(9) |
|
In the optimal placement of virtual machines on physical machines in the cloud data center there are some restrictions like the following:
| (10) |
| (11) |
| (12) |
| (13) |
| (14) |
Equation (10) shows that each virtual machine can be mapped on only one physical machine. Equations (11)- (14) point out that the total required CPU, memory, storage space, and bandwidth for virtual machines on physical machines should not be higher than the amount of CPU, memory, storage space, and bandwidth of that physical machine.
IV. The Proposed Work
There is a set of homogeneous and non-homogeneous virtual machines and physical machines in cloud data centers. Each virtual machine is isolated processing environment that require some hardware resources that physical machines support this requirement in cloud data centers. According to the increasing demand for cloud services, more and more hardware resources are needed. With an increase in hardware resources, the costs increase at these centers, as well. Hence, if virtual machines are deployed in a cloud-based way to optimally utilize all available resources, the costs will reduce and physical machines will host more virtual machines. Thus, by optimally virtual machine placement, one can fully utilize the physical machine's processing power that leads to avoiding the loss of hardware resources in the cloud data center. To have a high-performance cloud data center, one needs to minimize the use of resources in physical machines. Optimal utilization of virtual machines in cloud data centers reduces the number of virtual machine migrations and minimizes bandwidth utilization. In this study, a new algorithm has been proposed based on discrete chaotic discrete chaotic whale optimization algorithm for virtual machine placement on physical machines for better management of computational resources as well as energy consumption.
The assignment and placement of virtual machines on physical machines in cloud data center is discrete mode but the meta-heuristic algorithms work in continuous environments. Therefore, new operators have been used in virtual machines to solve the deployment problem discretely with the proposed algorithm for virtual machine placement on physical machines in a cloud data center. Each virtual machine is placed on a physical machine to earn its needed resources to serve the cloud users request. Fig. 3 shows the virtual machine placement on physical machines in cloud data centers.
Fig. 2. Virtual machines mapping on physical machines.
Here, as proposed, the new operators include multiply, minus, and plus. In the proposed algorithm, we use a new minus operator, crossover operator instead of sum and random swap (RS) operator instead of multiply. In the proposed scheme, the new minus operator is used. Two particles A and B are considered as follows:
Fig. 3. Sample of particles in virtual machines placement.
In the new minus operator, if the fitness function of particle A is higher than the fitness function of B, particle A is chosen as an answer. Otherwise, the particle B is chosen.
In the proposed algorithm, the crossover operator was used instead of the addition operator. In this operator, two points of the particles were selected randomly and were cut from those points and our contents between these two cuts were changed into two particles. The final answer was randomly selected from one of the particles. Fig. 4 shows the functioning of the cutter operator. In this figure, one of the particles of A and B were randomly selected as the answer.
Fig. 3. The Crossover Operator.
In proposed scheme, RS operator is used instead of multiply. The RS operator changes the positions of two points randomly chosen from the sequence. If randomly chosen points are i = 2 and j = 5 (i = j), the function of this operator is shown in Fig. 4.
Fig. 4. The Random Swap Operator.
Optimization algorithms using chaotic functions are a special type of random variable optimization algorithms. These algorithms use chaotic variables instead of random variables. These variables have a particular disorder. They have a particular characteristic, which is that they cannot be repeated when distributed. Thus, with this feature in mind, algorithms that use chaotic variables perform a complete search in the problem space over other searches. In proposed algorithm, the chebyshev chaotic function is used.
Xk+1= cos(k cos-1(Xk)) | (15) |
The proposed algorithm began its work by first examining the initial population using a discrete chaotic discrete chaotic whale optimization algorithm. Each particle was evaluated and its fitness function was determined by the criteria in Equations (1), (3), (4), and (5). According to the resource that each virtual machine needs, it was assigned on a physical machine in the cloud data center. If the host physical machines were unable to allocate the necessary resources for the virtual machines, the virtual machines would migrate from one host to another. The proposed algorithm has been repeated many times to reach a proper result. . The procedure of the proposed algorithm has been shown in Table 1.
TABLE I
The pseudo-code of the proposed algorithm.
Input: PM list, VM list Output: VM mapping //Setting Parameters Set nSol, max iteration, X0 and G0 //initialize all solutions For i=1 : nSol Initialize Sol(i ) randomly with chaotic function Calculate cost of Sol(i) End for //find thr best solution [~,indix] = min([Sol.cost]); Gbest = Sol(index); //main loop For iteration = 1: max iteration For j=1:nSol Update Sol(i) using proposed WOA algorithm Calculate cost of newSol(i) // applying hill climbing approach If mod(iteration)==0 If cost of newSol(i)< cost of Sol(i) Sol(i)=newSol(i); Else Sol(i)=Gbest; Endif Else Sol(i)=newSol(i); Endif End for Update Gbest End for Return Gbest as output |
V. Evolutions
In this section, performance metrics and experimental setup are presented, and the simulation result of the proposed approach are compared and evaluated with the existing virtual machine placement algorithms such as FF, ACO, MGGA, GSA, and FCFS. The main goal of placing virtual machines on physical machines in an optimal way in cloud data centers is to minimize some of the issues, such as energy consumption, prevention of resources wastage and reduction of the cost as well as to maximize some of the factors like the total performance. In this paper, several performance metrics such as resource wastage, power consumption, overall memory utilization, overall CPU utilization, overall storage space, overall bandwidth, and number of active machines.
Performance metrics: the following formula is used to calculate the overall CPU utilization, memory utilization, storage space utilization and bandwidth utilization for the k number of active physical machines, such as (16), (17), (18), and (19), respectively.
(16) |
|
(17) |
|
(18) |
|
(19) |
|
Experimental setup: The experimentation of the proposed algorithm is performed on a personal computer having features like Intel Core i7 CPU, 3.33GHz, 6GB of RAM, and Windows 10. In this paper, the simulation is written in MATLAB environment. In the simulation environment, 700 physical machines for placement in a cloud data center have been used. Also, 200, 400, 600, 800, and 1000 virtual machines are used to be placed into the cloud data center. For experimentation, we used Amazon EC2 Instances.
Amazon Elastic Compute Cloud is responsible for providing the computing capacity which can be scaled in the Amazon Web Services (AWS) cloud. Furthermore, it can be designed in such a way that large-scale cloud computing will be made easier for cloud developers. When Amazon EC2 is used, the necessity to invest in hardware upfront is eliminated, thus it is feasible to develop and deploy applications much faster.
As well as the abovementioned, with the help of Amazon EC2 how many servers needed, few or more, can be launched. It can also configure security, do networking, and manage storage. Also, there is no need to forecast the traffic because it provides some facilities to scale up and down to cope with the changed based on the requirement. The alleviation of the boot time of new server instances and quick provision of scaling up and down capacity are other duties of Amazon EC2. The computing the requirements are changed, and payment is based on the pay for use model. It also provides developer tools to build desired applications.
Hereof, the performance of the proposed algorithm is evaluated. The virtual machines applied in this simulation are Amazon EC2 Instances. They are comprised of four types, Micro, Small, Extra Large, and High-CPU medium, and their configurations are given in Table 2.
400 physical machines have been used for placement in the cloud data center. The configurations of physical machines in the cloud data center as HP ProLiant G4 and HP ProLiant G5 are given in Table 3.
TABLE II
Virtual Machines Sizes of Amazon EC2 Instances
Bandwidth (MB) | Storage Space (GB) | Memory (MB) | CPU (MIPS)
| Instance
|
256 | 40 | 613 | 500 | Micro |
512 | 120 | 1700 | 1000 | Small |
768 | 160 | 3400 | 2000 | Extra Large |
256 | 80 | 850 | 2500 | High-CPU medium |
TABLE III
Physical Machines Configuration
Bandwidth (MB) | Storage Space (GB) | Memory (GB) | CPU (MIPS) | PM name |
3720 | 4 | 1024 | 512 | HP ProLiant G4 |
5320 | 4 | 2048 | 1024 | HP ProLiant G5 |
The simulation results using Amazon EC2 Instances placement of virtual machine are as follows:
Fig. 5. Power Consumption.
Fig. 6. Resource Wastage.
Fig. 7. Traffic Consumption (%).
Fig. 8. Delay (%).
Fig. 9. CPU Utilization (%).
Fig. 10. Memory Utilization (%).
Fig. 11. Bandwidth Utilization (%).
Fig. 12. Storage Space Utilization (%).
Fig. 13. Number of Active Machine (%).
From these simulation results, the proposed algorithm and the combination of proposed algorithms with hill climbing improved the performance of the cloud data center. The results in Fig. 5 show the total power consumption of the active physical machines in the cloud data center. From the results in this figure, it can be seen that the total power consumption of the cloud data center using the proposed algorithm is reduced when compared to the existing algorithms. According to the results of Fig. 6, it is clear that the proposed algorithm minimizes the total resource wastage if compared to the existing algorithms. The results in Fig. 7 and 8 show that the amount of traffic and the delay is optimized than compared schemes. The results in Fig. 9, 10, 11 and 12, show that the CPU utilizatin, memory utilization, storage space utilization and bandwidth consumption by the virtual machine are reduced and improved by using the proposed algorithm. Fig. 13 shows that the number of active machine is minimized by proposed algorithm than other compared schemes.
VI. Conclusion
The virtual machine placement is one of the most important issue in cloud computing. The number of the active physical machine is decreased by optimal virtual machine placement. By reducing the number of active physical machines energy consumption and resource waste get minimized. This study is considered the optimal placement of virtual machines on physical machines in cloud data centers and the virtual machine placement problem was solved using a discrete chaotic WOA. In the proposed method, the first goal is to minimize the energy consumption in cloud data centers by reducing the number of active physical machines. The second objective is to minimize the unbalanced resource utilization of the active physical machines in the cloud data center. Finally, the proposed algorithm is compared with the existing algorithms in terms of various performance metrics. The simulation results present the performance of the proposed algorithm.
For future work, we consider that applying the proposed scheme to other cloud problems such as multi-cloud platform, cloud task scheduling and, security problem.
References
[1] R. Bao, "Performance evaluation for traditional virtual machine placement algorithms in the cloud," in International Conference on Internet of Vehicles, 2016: Springer, pp. 225-231.
[2] M. Masdari, S. ValiKardan, Z. Shahi, and S. I. Azar, "Towards workflow scheduling in cloud computing: a comprehensive analysis," Journal of Network and Computer Applications, vol. 66, pp. 64-82, 2016.
[3] K. Braiki and H. Youssef, "Multi-objective virtual machine placement algorithm based on particle swarm optimization," in 2018 14th International Wireless Communications & Mobile Computing Conference (IWCMC), 2018: IEEE, pp. 279-284.
[4] S. K. Addya, A. K. Turuk, B. Sahoo, M. Sarkar, and S. K. Biswash, "Simulated annealing based VM placement strategy to maximize the profit for Cloud Service Providers," Engineering science and technology, an international journal, vol. 20, no. 4, pp. 1249-1259, 2017.
[5] M. Masdari, S. Barshande, and S. Ozdemir, "CDABC: chaotic discrete artificial bee colony algorithm for multi-level clustering in large-scale WSNs," The Journal of Supercomputing, vol. 75, no. 11, pp. 7174-7208, 2019.
[6] Y. Qin, H. Wang, F. Zhu, and L. Zhai, "A multi-objective ant colony system algorithm for virtual machine placement in traffic intense data centers," IEEE access, vol. 6, pp. 58912-58923, 2018.
[7] M. Masdari and M. Zangakani, "Green cloud computing using proactive virtual machine placement: challenges and issues," Journal of Grid Computing, pp. 1-33, 2019.
[8] S. Gharehpasha, M. Masdari, and A. Jafarian, "The Placement of Virtual Machines Under Optimal Conditions in Cloud Datacenter," Information Technology and Control, vol. 48, no. 4, pp. 545-556, 2019.
[9] C. Sonklin, M. Tang, and Y.-C. Tian, "A decrease-and-conquer genetic algorithm for energy efficient virtual machine placement in data centers," in 2017 IEEE 15th International Conference on Industrial Informatics (INDIN), 2017: IEEE, pp. 135-140.
[10] A. Al-Moalmi, J. Luo, A. Salah, and K. Li, "Optimal virtual machine placement based on grey wolf optimization," Electronics, vol. 8, no. 3, p. 283, 2019.
[11] S. Y. Rashida, M. Sabaei, M. M. Ebadzadeh, and A. M. Rahmani, "A memetic grouping genetic algorithm for cost efficient VM placement in multi-cloud environment," Cluster Computing, pp. 1-40, 2019.
[12] L. Hong and G. Yufei, "GACA-VMP: Virtual machine placement scheduling in cloud computing based on genetic ant colony algorithm approach," in 2015 IEEE 12th Intl Conf on Ubiquitous Intelligence and Computing and 2015 IEEE 12th Intl Conf on Autonomic and Trusted Computing and 2015 IEEE 15th Intl Conf on Scalable Computing and Communications and Its Associated Workshops (UIC-ATC-ScalCom), 2015: IEEE, pp. 1008-1015.
[13] R. Asemi, E. Doostsadigh, M. Ahmadi, and H. T. Malazi, "Energy efficieny in virtual machines allocation for cloud data centers using the imperialist competitive algorithm," in 2015 IEEE Fifth International Conference on Big Data and Cloud Computing, 2015: IEEE, pp. 62-67.
[14] M. Masdari and M. Jalali, "A survey and taxonomy of DoS attacks in cloud computing," Security and Communication Networks, vol. 9, no. 16, pp. 3724-3751, 2016.
[15] S. E. Dashti and A. M. Rahmani, "Dynamic VMs placement for energy efficiency by PSO in cloud computing," Journal of Experimental & Theoretical Artificial Intelligence, vol. 28, no. 1-2, pp. 97-112, 2016.
[16] S. Mirjalili and A. Lewis, "The whale optimization algorithm," Advances in engineering software, vol. 95, pp. 51-67, 2016.
[17] E. Parvizi and M. H. Rezvani, "Utilization-aware energy-efficient virtual machine placement in cloud networks using NSGA-III meta-heuristic approach," Cluster Computing, pp. 1-23, 2020.
[18] S. Azizi and D. Li, "An energy-efficient algorithm for virtual machine placement optimization in cloud data centers," Cluster Computing, pp. 1-14, 2020.
[19] M. J. Moghaddam, A. Esmaeilzadeh, M. Ghavipour, and A. K. Zadeh, "Minimizing virtual machine migration probability in cloud computing environments," Cluster Computing, pp. 1-10, 2020.
[20] F. Abdessamia, W.-Z. Zhang, and Y.-C. Tian, "Energy-efficiency virtual machine placement based on binary gravitational search algorithm," Cluster Computing, pp. 1-12, 2019.
[21] M. K. Gupta, A. Jain, and T. Amgoth, "Power and resource-aware virtual machine placement for IaaS cloud," Sustainable Computing: Informatics and Systems, vol. 19, pp. 52-60, 2018.