International Journal of Fuzzy Logic and Intelligent Systems 2023; 23(3): 353-364
Published online September 25, 2023
https://doi.org/10.5391/IJFIS.2023.23.3.353
© The Korean Institute of Intelligent Systems
Chayan Bhatt and Sunita Singhal
Department of Computer Science and Engineering, Manipal University Jaipur, Jaipur, India
Correspondence to :
Sunita Singhal (sunita.singhal@jaipur.manipal.edu)
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted noncommercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
The massive growth in cloud users and applications has caused a tremendous increase in the number of virtual machine (VM) requests. Consequently, VM placement has become an important factor in the management of cloud datacenters and their resources. In this context, a new hybrid mechanism named simulated annealing-intelligent water drop cycle algorithm (SA-IWDCA) has been proposed that improves the computational efforts and convergence rate of the water cycle algorithm (WCA) to efficiently place VM in a heterogeneous cloud. WCA performs hybridization in two levels using preselection and memetic algorithms. In level one, an intelligent water drop (IWD) is invoked to generate and feed the initial VM solution to the WCA. At the second level, simulated annealing (SA) is used to improve the VM solution quality using neighborhood search and targeted approaches of temperature scheduling and acceptance probability. The proposed approach incorporates the energy consumption and resource management of datacenters, resulting in a minimum number of active servers and reduced resource dissipation. Extensive simulations and analysis using MATLAB showed that the SA-IWDCA performed significantly well and has shown an improvement of 25% in energy consumption and 20% in resource utilization as compared to other heuristic and metaheuristic approaches.
Keywords: Virtual machine placement, Cloud computing, Water cycle algorithm, Intelligent water drop, Simulated annealing, Energy consumption
Cloud computing has emerged as a demanding technology that has turned IT infrastructure into day-to-day utilities. Through cloud technology, numerous services such as data storage, security, database access, networking, analysis, and intelligence can be easily rendered to users via the Internet [1, 2]. It relieves its customers of operational costs, hardware maintenance, and management by providing multiple resources via the Internet. The cloud creates a cyberspace or virtual environment of computing resources with the help of virtualization, which involves developing several virtual machine (VM) on actual physical machines (PM), enabling different services and tasks requested by different users to be easily executed.
Because of a sudden increase in VM requests, energy dissipation and performance degradation significantly affected the operation of individual PM [3]. This has rendered energy saving as a notable agenda to be enhanced. Many researchers have attempted to efficiently consolidate their servers to minimize power consumption by reducing the number of activated servers [2, 4]. However, if the cloud servers are accommodated by many VMs, the servers become overloaded, resulting in performance degradation and poor user experience. Hence, while performing VM consolidation, considering resource utilization without ignoring the quality of services (QoS) is crucial. VM Placement is NP-hard combinatorial optimization problem [5] and it is tedious to retrieve a deterministic solution. Various heuristic and metaheuristic approaches have been applied by different researchers to solve the VM placement problems. Metaheuristic techniques have been successful in providing optimal solutions to problems, whereas heuristic approaches are limited to local optima. These algorithms successfully demonstrated better placement decisions for dynamic VM workloads.
In [1], a technique using grey wolf optimization (GWO) along with SA was designed to perform load balancing in a containerized cloud. The containerized cloud improves the system performance by enhancing the resource utilization and deadline miss rate of the active servers. The proposed method was compared with the genetic algorithm (GA) and particle swarm optimization (PSO) and showed optimal results in terms of load variation and makespan; however, it caused overhead owing to the large search space. Eswaran et al. [6] used an IWD to place a VM on cloud servers. The proposed metaheuristic was based on the movement and actions of water drops in rivers and functioned well for restoring resource utilization and effective power consumption but did not involve a real-world workload. Dubey and Sharma [9] enhanced a nature-based intelligent water drop (IWD) algorithm for optimal VM allocation. It optimizes the task execution in a secure cloud environment. A CloudSim simulation was used to analyze the aforementioned algorithm. The performance of the work showed better outcomes than other existing VM allocation policies in terms of host utilization, timespan, and efficiency; however, it was not applicable to the dynamic placement of VM. Karmakar et al. [12] proposed a high-performance multiobjective optimization technique that schedules frequently communicating VM of data centers in proximity to reduce communication costs and delays among the VM and improve the QoS of the system. Ant colony optimization (ACO) has been used to efficiently consolidate VM. It aims to reduce resource wastage by properly utilizing the resources of active servers, but requires a more efficient approach to solve the load balancing problem. In [13], different types of complex applications with different priorities and resource demands are involved. An approach handling priority, power, and traffic was framed to minimize the network and power consumption of a multidimensional and heterogeneous cloud data center, along with the consideration of resource utilization. The proposed work has been compared with a fat tree topology and it has shown a decrease of 29% in total network utilization, 18% in electricity consumption, and 68% in resource waste. This approach requires improvisation to introduce more prioritized attributes for applications and experiments. A new metaheuristic has been proposed in the literature [15], which functions to minimize the VM cost and energy consumption. The mechanism focuses on solving the VM problem but does not hold any approach for effective load balancing.
While performing an analytical study of the literature on cloud computing, the following research gaps were identified:
1. Several studies have focused on overcoming the problems of VM migration and power consumption. New VM placement mechanisms are required to enrich resource utilization and limit resource wastage and fragmentation, thereby maintaining a balance between the demand and supply of cloud providers and users [5, 7].
2. VM Placement algorithms must be applied to a real workload to validate their real robustness, in contrast to previous algorithms that do not involve real-world resource demands in their evaluation [6].
3. Traditional techniques generally focus on a few parameters to solve VM allocation problem [8, 9]. However, with an increase in workload demand, other core parameters cannot be ignored. Hence, new approaches are required to address multiple factors simultaneously, thereby addressing important issues, such as load balancing, resource utilization, QoS, SLA violations, network traffic, latency, and operational cost.
This paper presents a new simulated annealing-intelligent water drop cycle algorithm (SA-IWDCA) framework for solving VM placement problems based on the hybridization of nature-inspired IWD and water cycle algorithm (WCA) approaches integrated with SA.
• The proposed approach enhances the performance of the data center by properly utilizing and balancing the computing resources among the VM to reduce the number of active servers.
• The introduction of SA improved the productivity of the framework by performing multiple local searches using neighborhood configuration and refined the solution quality by involving its targeted approaches of temperature scheduling and cooling factors.
• Simulations and analytical studies were performed on three extensive datasets: i) a real workload trace of bitbrains, ii) a Normal distribution, and iii) application instances of Amazon EC2.
The remainder of this paper is organized as follows: Section 2 provides a basic overview of VM placement using different heuristic and metaheuristic techniques. Section 3 provides a detailed description of the proposed SA-IWDCA method. In Section 4, the SA-IWDCA is compared with the IWDCA, IWD, and WCA, and the simulation results are obtained. Finally, Section 5 concludes the paper and presents future aspects of the proposed work.
VM placement plays an important role in cloud environments. Cloud service providers continuously improve and update VM allocation policies to satisfy their users with their respective resource requests, considering the enhancement in energy saving approaches, resource utilization practices, and simultaneously maintaining the QoS of cloud data centers [14].
The VM placement problem is considered an NP-hard problem and can be formulated as a multidimensional bin-packing problem.
A cloud data center is developed by combining many homogeneous and heterogeneous M numbers of PM in the cloud, and is expressed as follows:
Each PM holds its own set of computing resources, which include the ID, CPU, bandwidth, memory, and cores, as mentioned in
Here,
Users send requests to a group of N virtual machines for their applications to be deployed on them or for the execution of different types of tasks. It is expressed as follows:
A VM requires certain resources to execute user requests, which are represented as follows:
Constraint in
This section introduces a new mechanism for the optimal allocation of VM to desirable servers in the cloud. The proposed SA-IWDCA was developed to minimize the energy consumption and resource dissipation of the PM. It aims to enhance and maintain the performance of a data center on a larger workload scale.
In the proposed method, the IWD utilizes its exploration capabilities and gradually generates the initial VM solution, whereas the WCA focuses on its exploitation properties and avoids premature convergence. With SA, the probability of reaching the global optimal solution increases because it concurrently evaluates multiple points in a larger search space. Hence, by integrating the advantages of the IWD, WCA, and SA, a new mechanism was developed to obtain improved results.
The algorithm comprises two prime levels. At the first level, the IWD acts as a preselection algorithm and develops an initial solution using a graph-based approach. The pregenerated solution is seeded into the WCA as the input. The WCA generates a few random solutions, combines them with previously generated solutions from the IWD, and performs multiple searches to improve all solutions. WCA classifies all solutions as sea, river, or stream based on their fitness values. The best solution, that is, the sea solution from the WCA is sent to the SA. SA creates different new configurations from the existing solution based on inversion, translation, and switching operations and accepts the new configuration as the global best solution if it proves to be better solution than that received from WCA. This process continues until it reaches the maximum number of iterations. Figure 1 shows a flowchart of the SA-IWDCA.
The IWD is a population-based metaheuristic optimization algorithm [6]. It operates on the behavioral properties of water drop movements in rivers, lakes, and streams to find paths along different landforms.
The IWD was mapped in the form of a graph
1. Velocity of the IWD
2. Soil on the IWD
3. Soil on the connecting edges.
The values of these attributes continues to change as the water drops to determine their paths. Initially, the IWD has some velocity to flow through the graph, but does not carry any soil. The connecting edges hold some soil but when it traverses from one node ‘
Here,
Similarly, the amount of soil on the connecting edges is used to calculate the velocity of the IWD using
The amount of soil removed from the traversed edge by the IWD is calculated using
The IWD finds a suitable path by selecting the edges with the minimum amount of soil. This process continues until all the nodes are traversed and an optimal path is obtained in the form of a VM placement solution. The algorithm terminates when it reaches the maximum number of iterations and the optimal VM solution is obtained as the output.
The WCA is a swarm-based metaheuristic technique that aims to find an optimal or near-optimal solution [17]. It performs its optimization by drawing inspiration from the flow of rainwater and small streams into rivers and the sea.
The WCA comprises less complicated user-defined parameters, enabling it to easily solve different types of optimization problems.
The WCA finds an optimal solution for VM placement through a water cycle process. The algorithm begins with a rain process, followed by the random generation of the initial population in the form of raindrops (the VM placement solution).
Subsequently, the raindrops are categorized into streams, rivers, and sea by evaluating their fitness values. The best raindrop, having the smallest fitness value, is selected as the sea, raindrops with fitness values closer to the sea value are chosen as rivers, and the remaining raindrops are defined as streams. The intensity of the flow of streams into the corresponding rivers and sea is then calculated using
Here,
After evaluating the intensities of the rivers and streams, new positions for the streams and rivers (closer to the sea) are determined. The fitness values of streams are then compared with those of their corresponding rivers and seas, and if the value of a stream is lower than that of a river or sea, then that stream attains the position of the river or sea.
Similarly, if the fitness value of any of the rivers is lower than that of the sea, the river reaches the position of the sea and becomes a river. The positions of the sea, river, and streams are updated as given in
The SA is one of the most popular heuristic techniques for solving various problems. It operates on the principle of an annealing process, wherein a metal is heated and cooled slowly to obtain molded into a desired structure. SA was introduced to solve and generate global optimal solutions for VM placement problems [1, 10]. This is preferred because it performs a local search across a wider range while avoiding local optima. The mapping of the proposed technique with SA is illustrated as follows:
An optimal VM placement solution from the WCA is used to generate a new neighboring configuration. The aim is to provide better placement solutions for VM placement problems. The following three techniques are used to create a new configuration from the existing placement solution:
At each iteration, only one operation is performed randomly on the existing solution to generate a new placement configuration. This procedure helps achieve suboptimal results.
The acceptance criterion determines whether to accept the new configuration or retain the existing solution for the next state. The decision is based on the acceptance probability, which is evaluated using
Here,
Temperature is an important parameter that controls execution in SA. The initial temperature is set and gradually decreases at each iteration. The scheduling of temperature determines whether to accept a new solution. The cooling process depicts a low probability of accepting worse solutions. In the proposed method, we have set the initial temperature as 1, 000°C and it decreases by 5°C at every iteration till it reaches zero.
This section presents an experimental review and analysis of the proposed SA-IWDCA. We compared our proposed framework with different nature-inspired algorithms, that is, the IWDCA, IWD, and WCA, in terms of resource utilization, number of active PM, energy consumption, and resource fragmentation of the PM. The following subsections present the scenarios, datasets, and parameter-setting definitions, along with the final evaluation.
The requested VM was hosted on an available PM. Systematic placement decisions of VM on the minimum number of servers addresse different issues of cloud datacenters, particularly energy consumption and operational costs.
The CPU, disk storage, bandwidth, and memory of the PM significantly affect the energy consumption of data centers. Most of the energy is consumed during CPU utilization, which affects the overall energy consumption of cloud datacenters. The total energy consumption of the PM is evaluated as follows:
where
Balancing resources can result in drastic changes in the performance and profits of cloud providers. The resource utilization of the PM was calculated using the following equations:
The standard deviation and variance of the CPU as well as memory utilization of all hosts were calculated using
Checking for resource fragmentation is crucial to achieve better resource utilization and enhanced performance. The PM resource fragmentation can be calculated using
where
The effectiveness of SA-IWDCA must be tested under different circumstances to verify its reliability and robustness. Hence, the proposed mechanism was evaluated through experiments conducted using MATLAB 2020b. The hardware configuration used for implementing the proposed work had a 3.2 GHz CPU, 1 TB HDD, and 8 GB of RAM.
Because the performance of the proposed SA-IWDCA depends on the size and number of both VM and PM, different extensive scenarios along with resource variations of the requested VM have been considered to investigate the potential scalability of different algorithms. The algorithms were compared on three different datasets with VM in batches of 200, 400, 600, and 800. The first dataset consisted of VM requirements equivalent to the application instances of Amazon EC2. Table 1 lists the values for the instances used in the simulations.
The second dataset is the real-time workload trace GWA-T-12 bitbrains, which stores the performance metrics of VM from the distributed data centers of bitbrains. Bitbrains provides services and performs hosting and business computations for different enterprises. The values of the memory and CPU cores requested by the VM were extracted from the trace. For the third dataset, VM requests were generated using a normal distribution. It provides the VM resource requirements of the VM requests (
The performance parameters of the SA-IWDCA exhibited different effects for different values. When performing multiple experiments with different parameter combinations, a few values of the parameters that showed better optimal results were selected, as listed in Table 2.
Two different types of PM were considered, the key specifications of which are listed in Table 3. The power of the PM was 260 W when it was fully loaded and 170 W when it was idle. Moreover, we considered 90% as the server resource threshold for a physical server to adopt a VM.
This section presents a simulation analysis of SA-IWDCA with respect to other VM placement algorithms. To obtain robust results, the average outcome of 20 independent executions is shown in Figures 5
The performances of all bio-inspired algorithms for Dataset 1 are depicted in Figure 5. Figure 5(a) depicts the number of PM used by the respective algorithms for hosting and satisfying the VM resource requirements. The proposed SA-IWDCA outperformed the other algorithms by hosting a larger number of VM on a minimal number of PM. We observed that as the number of VM requests increased, the algorithm performed better, as it deployed more VM on fewer servers. Moreover, the simulation results become more improvised as the algorithm undergoes more iterations, and the effectiveness of the algorithms can be verified more precisely. Experiments were performed to evaluate the energy consumption of the respective algorithms to host 200, 400, 600, and 800 VM separately. Balancing computing resources and controlling the power consumption of PM can bring profitable costs for cloud providers. The proposed algorithm showed significant dominance over the other algorithms. Moreover, the IWDCA was comparably better than the IWD and WCA.
Moreover, only IWDCA competes with SA-IWCDA in terms of resource utilization and fragmentation. Both the IWD and WCA showed inferior performances compared to the SA-IWDCA and IWDCA in all cases. However, both IWD and WCA have nearly the same performance in terms of energy consumption, but the WCA was dominated by the IWD in terms of resource utilization. The power consumption of all four algorithms for hosting different VM was evaluated, and we observed that with an increase in the VM request workload, the power consumed by the resources also increases simultaneously. The SA-IWDCA has shown the minimum energy consumption rate in fulfilling the resource needs of its allocated VM compared to the others.
For 400 VM, SA-IWDCA has shown improvements of 15%, 22%, and 25% as compared with IWDCA, IWD, and WCA.
Figure 6 depicts the analytical study of all the algorithms on Dataset 2 and we can observe that SA-IWDCA has the best VM placement.
Figure 7 depicts the simulation results for Dataset 3. We can observe that SA-IWDCA involves less resource wastage and deploys more VM than IWDCA when the number of VM requests increases. The results obtained were owing to better placement decisions of SA-IWDCA, which established balanced and efficient resource management to curb resource fragmentation. Figure 7(c) shows the energy consumption of all four algorithms, among which SA-IWDCA has the smallest value and the WCA holds the largest value. The SA-IWDCA was optimized to place the VM in an extremely concentrated manner to minimize the active servers and energy consumption costs. The IWDCA performed satisfactorily. In the WCA and IWD algorithms, CPU utilization was balanced, but the activation of several servers lowered the utilization rate, resulting in performance degradation.
Figure 7(d) shows that the SA-IWDCA outperformed the IWDCA and other existing algorithms in terms of resource fragmentation. This is because the CPU and memory demands of the VM have a significant impact on the resource wastage of the PM, which is properly managed by the SA-IWDCA. Moreover, to overcome resource fragmentation, SA-IWDCA focuses on both the resource utilization of the server and the resource requests of the VM.
Efficient VM allocation provides a boost and profitable business for cloud service providers. The proposed SA-IWDCA was developed to efficiently solve VM placement problems in cloud datacenters. The IWD explores a larger search space to avoid slipping into local optima traps using the probability heuristic function, whereas the WCA performs multiple local searches based on the functioning of the water cycle process to refine and discover the finest VM solution among the others. In addition, SA is used to locate the global minimum of a function in a large and discrete search space. The temperature scheduling and cooling factors facilitate the SA in moving closer toward the optimum VM solution. The primary objective of the proposed mechanism is to efficiently utilize PM resources and maintain the energy consumption of the PM by considering the QoS and resource fragmentation rate. The proposed work was designed under the simulation environment of the MATLAB platform, and the simulation results proved that the proposed technique performs well when considering energy consumption and resource utilization as priorities.
No potential conflict of interest relevant to this article was reported.
Dataset 1: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Dataset 2: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Dataset 3: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Table 1. Amazon EC2 instances.
VM instances | CPU | Memory |
---|---|---|
T2. nano | 1 | 0.5 |
T2. micro | 1 | 1 |
T2. small | 1 | 2 |
T2. medium | 2 | 4 |
T2. large | 2 | 8 |
Table 2. Algorithm parameters.
Parameters | Value |
---|---|
Size of the population | 15 |
Maximum Iteration | 50 |
Value of initial soil | 10,000 |
Velocity parameters: | 1 |
Soil parameters: | 0.01 |
Probability constant ( | 0.9 |
No. of rivers | 6 |
Random ( | 2 |
Temperature ( | 1000 |
Table 3. Server specification.
Server type | MIPS | Storage (GB) | Memory (GB) |
---|---|---|---|
HP ProLiant G4 | 1860 | 4 | 1000 |
HP ProLiant G5 | 2660 | 4 | 1000 |
E-mail: chayan.bhatt53@gmail.com
International Journal of Fuzzy Logic and Intelligent Systems 2023; 23(3): 353-364
Published online September 25, 2023 https://doi.org/10.5391/IJFIS.2023.23.3.353
Copyright © The Korean Institute of Intelligent Systems.
Chayan Bhatt and Sunita Singhal
Department of Computer Science and Engineering, Manipal University Jaipur, Jaipur, India
Correspondence to:Sunita Singhal (sunita.singhal@jaipur.manipal.edu)
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted noncommercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
The massive growth in cloud users and applications has caused a tremendous increase in the number of virtual machine (VM) requests. Consequently, VM placement has become an important factor in the management of cloud datacenters and their resources. In this context, a new hybrid mechanism named simulated annealing-intelligent water drop cycle algorithm (SA-IWDCA) has been proposed that improves the computational efforts and convergence rate of the water cycle algorithm (WCA) to efficiently place VM in a heterogeneous cloud. WCA performs hybridization in two levels using preselection and memetic algorithms. In level one, an intelligent water drop (IWD) is invoked to generate and feed the initial VM solution to the WCA. At the second level, simulated annealing (SA) is used to improve the VM solution quality using neighborhood search and targeted approaches of temperature scheduling and acceptance probability. The proposed approach incorporates the energy consumption and resource management of datacenters, resulting in a minimum number of active servers and reduced resource dissipation. Extensive simulations and analysis using MATLAB showed that the SA-IWDCA performed significantly well and has shown an improvement of 25% in energy consumption and 20% in resource utilization as compared to other heuristic and metaheuristic approaches.
Keywords: Virtual machine placement, Cloud computing, Water cycle algorithm, Intelligent water drop, Simulated annealing, Energy consumption
Cloud computing has emerged as a demanding technology that has turned IT infrastructure into day-to-day utilities. Through cloud technology, numerous services such as data storage, security, database access, networking, analysis, and intelligence can be easily rendered to users via the Internet [1, 2]. It relieves its customers of operational costs, hardware maintenance, and management by providing multiple resources via the Internet. The cloud creates a cyberspace or virtual environment of computing resources with the help of virtualization, which involves developing several virtual machine (VM) on actual physical machines (PM), enabling different services and tasks requested by different users to be easily executed.
Because of a sudden increase in VM requests, energy dissipation and performance degradation significantly affected the operation of individual PM [3]. This has rendered energy saving as a notable agenda to be enhanced. Many researchers have attempted to efficiently consolidate their servers to minimize power consumption by reducing the number of activated servers [2, 4]. However, if the cloud servers are accommodated by many VMs, the servers become overloaded, resulting in performance degradation and poor user experience. Hence, while performing VM consolidation, considering resource utilization without ignoring the quality of services (QoS) is crucial. VM Placement is NP-hard combinatorial optimization problem [5] and it is tedious to retrieve a deterministic solution. Various heuristic and metaheuristic approaches have been applied by different researchers to solve the VM placement problems. Metaheuristic techniques have been successful in providing optimal solutions to problems, whereas heuristic approaches are limited to local optima. These algorithms successfully demonstrated better placement decisions for dynamic VM workloads.
In [1], a technique using grey wolf optimization (GWO) along with SA was designed to perform load balancing in a containerized cloud. The containerized cloud improves the system performance by enhancing the resource utilization and deadline miss rate of the active servers. The proposed method was compared with the genetic algorithm (GA) and particle swarm optimization (PSO) and showed optimal results in terms of load variation and makespan; however, it caused overhead owing to the large search space. Eswaran et al. [6] used an IWD to place a VM on cloud servers. The proposed metaheuristic was based on the movement and actions of water drops in rivers and functioned well for restoring resource utilization and effective power consumption but did not involve a real-world workload. Dubey and Sharma [9] enhanced a nature-based intelligent water drop (IWD) algorithm for optimal VM allocation. It optimizes the task execution in a secure cloud environment. A CloudSim simulation was used to analyze the aforementioned algorithm. The performance of the work showed better outcomes than other existing VM allocation policies in terms of host utilization, timespan, and efficiency; however, it was not applicable to the dynamic placement of VM. Karmakar et al. [12] proposed a high-performance multiobjective optimization technique that schedules frequently communicating VM of data centers in proximity to reduce communication costs and delays among the VM and improve the QoS of the system. Ant colony optimization (ACO) has been used to efficiently consolidate VM. It aims to reduce resource wastage by properly utilizing the resources of active servers, but requires a more efficient approach to solve the load balancing problem. In [13], different types of complex applications with different priorities and resource demands are involved. An approach handling priority, power, and traffic was framed to minimize the network and power consumption of a multidimensional and heterogeneous cloud data center, along with the consideration of resource utilization. The proposed work has been compared with a fat tree topology and it has shown a decrease of 29% in total network utilization, 18% in electricity consumption, and 68% in resource waste. This approach requires improvisation to introduce more prioritized attributes for applications and experiments. A new metaheuristic has been proposed in the literature [15], which functions to minimize the VM cost and energy consumption. The mechanism focuses on solving the VM problem but does not hold any approach for effective load balancing.
While performing an analytical study of the literature on cloud computing, the following research gaps were identified:
1. Several studies have focused on overcoming the problems of VM migration and power consumption. New VM placement mechanisms are required to enrich resource utilization and limit resource wastage and fragmentation, thereby maintaining a balance between the demand and supply of cloud providers and users [5, 7].
2. VM Placement algorithms must be applied to a real workload to validate their real robustness, in contrast to previous algorithms that do not involve real-world resource demands in their evaluation [6].
3. Traditional techniques generally focus on a few parameters to solve VM allocation problem [8, 9]. However, with an increase in workload demand, other core parameters cannot be ignored. Hence, new approaches are required to address multiple factors simultaneously, thereby addressing important issues, such as load balancing, resource utilization, QoS, SLA violations, network traffic, latency, and operational cost.
This paper presents a new simulated annealing-intelligent water drop cycle algorithm (SA-IWDCA) framework for solving VM placement problems based on the hybridization of nature-inspired IWD and water cycle algorithm (WCA) approaches integrated with SA.
• The proposed approach enhances the performance of the data center by properly utilizing and balancing the computing resources among the VM to reduce the number of active servers.
• The introduction of SA improved the productivity of the framework by performing multiple local searches using neighborhood configuration and refined the solution quality by involving its targeted approaches of temperature scheduling and cooling factors.
• Simulations and analytical studies were performed on three extensive datasets: i) a real workload trace of bitbrains, ii) a Normal distribution, and iii) application instances of Amazon EC2.
The remainder of this paper is organized as follows: Section 2 provides a basic overview of VM placement using different heuristic and metaheuristic techniques. Section 3 provides a detailed description of the proposed SA-IWDCA method. In Section 4, the SA-IWDCA is compared with the IWDCA, IWD, and WCA, and the simulation results are obtained. Finally, Section 5 concludes the paper and presents future aspects of the proposed work.
VM placement plays an important role in cloud environments. Cloud service providers continuously improve and update VM allocation policies to satisfy their users with their respective resource requests, considering the enhancement in energy saving approaches, resource utilization practices, and simultaneously maintaining the QoS of cloud data centers [14].
The VM placement problem is considered an NP-hard problem and can be formulated as a multidimensional bin-packing problem.
A cloud data center is developed by combining many homogeneous and heterogeneous M numbers of PM in the cloud, and is expressed as follows:
Each PM holds its own set of computing resources, which include the ID, CPU, bandwidth, memory, and cores, as mentioned in
Here,
Users send requests to a group of N virtual machines for their applications to be deployed on them or for the execution of different types of tasks. It is expressed as follows:
A VM requires certain resources to execute user requests, which are represented as follows:
Constraint in
This section introduces a new mechanism for the optimal allocation of VM to desirable servers in the cloud. The proposed SA-IWDCA was developed to minimize the energy consumption and resource dissipation of the PM. It aims to enhance and maintain the performance of a data center on a larger workload scale.
In the proposed method, the IWD utilizes its exploration capabilities and gradually generates the initial VM solution, whereas the WCA focuses on its exploitation properties and avoids premature convergence. With SA, the probability of reaching the global optimal solution increases because it concurrently evaluates multiple points in a larger search space. Hence, by integrating the advantages of the IWD, WCA, and SA, a new mechanism was developed to obtain improved results.
The algorithm comprises two prime levels. At the first level, the IWD acts as a preselection algorithm and develops an initial solution using a graph-based approach. The pregenerated solution is seeded into the WCA as the input. The WCA generates a few random solutions, combines them with previously generated solutions from the IWD, and performs multiple searches to improve all solutions. WCA classifies all solutions as sea, river, or stream based on their fitness values. The best solution, that is, the sea solution from the WCA is sent to the SA. SA creates different new configurations from the existing solution based on inversion, translation, and switching operations and accepts the new configuration as the global best solution if it proves to be better solution than that received from WCA. This process continues until it reaches the maximum number of iterations. Figure 1 shows a flowchart of the SA-IWDCA.
The IWD is a population-based metaheuristic optimization algorithm [6]. It operates on the behavioral properties of water drop movements in rivers, lakes, and streams to find paths along different landforms.
The IWD was mapped in the form of a graph
1. Velocity of the IWD
2. Soil on the IWD
3. Soil on the connecting edges.
The values of these attributes continues to change as the water drops to determine their paths. Initially, the IWD has some velocity to flow through the graph, but does not carry any soil. The connecting edges hold some soil but when it traverses from one node ‘
Here,
Similarly, the amount of soil on the connecting edges is used to calculate the velocity of the IWD using
The amount of soil removed from the traversed edge by the IWD is calculated using
The IWD finds a suitable path by selecting the edges with the minimum amount of soil. This process continues until all the nodes are traversed and an optimal path is obtained in the form of a VM placement solution. The algorithm terminates when it reaches the maximum number of iterations and the optimal VM solution is obtained as the output.
The WCA is a swarm-based metaheuristic technique that aims to find an optimal or near-optimal solution [17]. It performs its optimization by drawing inspiration from the flow of rainwater and small streams into rivers and the sea.
The WCA comprises less complicated user-defined parameters, enabling it to easily solve different types of optimization problems.
The WCA finds an optimal solution for VM placement through a water cycle process. The algorithm begins with a rain process, followed by the random generation of the initial population in the form of raindrops (the VM placement solution).
Subsequently, the raindrops are categorized into streams, rivers, and sea by evaluating their fitness values. The best raindrop, having the smallest fitness value, is selected as the sea, raindrops with fitness values closer to the sea value are chosen as rivers, and the remaining raindrops are defined as streams. The intensity of the flow of streams into the corresponding rivers and sea is then calculated using
Here,
After evaluating the intensities of the rivers and streams, new positions for the streams and rivers (closer to the sea) are determined. The fitness values of streams are then compared with those of their corresponding rivers and seas, and if the value of a stream is lower than that of a river or sea, then that stream attains the position of the river or sea.
Similarly, if the fitness value of any of the rivers is lower than that of the sea, the river reaches the position of the sea and becomes a river. The positions of the sea, river, and streams are updated as given in
The SA is one of the most popular heuristic techniques for solving various problems. It operates on the principle of an annealing process, wherein a metal is heated and cooled slowly to obtain molded into a desired structure. SA was introduced to solve and generate global optimal solutions for VM placement problems [1, 10]. This is preferred because it performs a local search across a wider range while avoiding local optima. The mapping of the proposed technique with SA is illustrated as follows:
An optimal VM placement solution from the WCA is used to generate a new neighboring configuration. The aim is to provide better placement solutions for VM placement problems. The following three techniques are used to create a new configuration from the existing placement solution:
At each iteration, only one operation is performed randomly on the existing solution to generate a new placement configuration. This procedure helps achieve suboptimal results.
The acceptance criterion determines whether to accept the new configuration or retain the existing solution for the next state. The decision is based on the acceptance probability, which is evaluated using
Here,
Temperature is an important parameter that controls execution in SA. The initial temperature is set and gradually decreases at each iteration. The scheduling of temperature determines whether to accept a new solution. The cooling process depicts a low probability of accepting worse solutions. In the proposed method, we have set the initial temperature as 1, 000°C and it decreases by 5°C at every iteration till it reaches zero.
This section presents an experimental review and analysis of the proposed SA-IWDCA. We compared our proposed framework with different nature-inspired algorithms, that is, the IWDCA, IWD, and WCA, in terms of resource utilization, number of active PM, energy consumption, and resource fragmentation of the PM. The following subsections present the scenarios, datasets, and parameter-setting definitions, along with the final evaluation.
The requested VM was hosted on an available PM. Systematic placement decisions of VM on the minimum number of servers addresse different issues of cloud datacenters, particularly energy consumption and operational costs.
The CPU, disk storage, bandwidth, and memory of the PM significantly affect the energy consumption of data centers. Most of the energy is consumed during CPU utilization, which affects the overall energy consumption of cloud datacenters. The total energy consumption of the PM is evaluated as follows:
where
Balancing resources can result in drastic changes in the performance and profits of cloud providers. The resource utilization of the PM was calculated using the following equations:
The standard deviation and variance of the CPU as well as memory utilization of all hosts were calculated using
Checking for resource fragmentation is crucial to achieve better resource utilization and enhanced performance. The PM resource fragmentation can be calculated using
where
The effectiveness of SA-IWDCA must be tested under different circumstances to verify its reliability and robustness. Hence, the proposed mechanism was evaluated through experiments conducted using MATLAB 2020b. The hardware configuration used for implementing the proposed work had a 3.2 GHz CPU, 1 TB HDD, and 8 GB of RAM.
Because the performance of the proposed SA-IWDCA depends on the size and number of both VM and PM, different extensive scenarios along with resource variations of the requested VM have been considered to investigate the potential scalability of different algorithms. The algorithms were compared on three different datasets with VM in batches of 200, 400, 600, and 800. The first dataset consisted of VM requirements equivalent to the application instances of Amazon EC2. Table 1 lists the values for the instances used in the simulations.
The second dataset is the real-time workload trace GWA-T-12 bitbrains, which stores the performance metrics of VM from the distributed data centers of bitbrains. Bitbrains provides services and performs hosting and business computations for different enterprises. The values of the memory and CPU cores requested by the VM were extracted from the trace. For the third dataset, VM requests were generated using a normal distribution. It provides the VM resource requirements of the VM requests (
The performance parameters of the SA-IWDCA exhibited different effects for different values. When performing multiple experiments with different parameter combinations, a few values of the parameters that showed better optimal results were selected, as listed in Table 2.
Two different types of PM were considered, the key specifications of which are listed in Table 3. The power of the PM was 260 W when it was fully loaded and 170 W when it was idle. Moreover, we considered 90% as the server resource threshold for a physical server to adopt a VM.
This section presents a simulation analysis of SA-IWDCA with respect to other VM placement algorithms. To obtain robust results, the average outcome of 20 independent executions is shown in Figures 5
The performances of all bio-inspired algorithms for Dataset 1 are depicted in Figure 5. Figure 5(a) depicts the number of PM used by the respective algorithms for hosting and satisfying the VM resource requirements. The proposed SA-IWDCA outperformed the other algorithms by hosting a larger number of VM on a minimal number of PM. We observed that as the number of VM requests increased, the algorithm performed better, as it deployed more VM on fewer servers. Moreover, the simulation results become more improvised as the algorithm undergoes more iterations, and the effectiveness of the algorithms can be verified more precisely. Experiments were performed to evaluate the energy consumption of the respective algorithms to host 200, 400, 600, and 800 VM separately. Balancing computing resources and controlling the power consumption of PM can bring profitable costs for cloud providers. The proposed algorithm showed significant dominance over the other algorithms. Moreover, the IWDCA was comparably better than the IWD and WCA.
Moreover, only IWDCA competes with SA-IWCDA in terms of resource utilization and fragmentation. Both the IWD and WCA showed inferior performances compared to the SA-IWDCA and IWDCA in all cases. However, both IWD and WCA have nearly the same performance in terms of energy consumption, but the WCA was dominated by the IWD in terms of resource utilization. The power consumption of all four algorithms for hosting different VM was evaluated, and we observed that with an increase in the VM request workload, the power consumed by the resources also increases simultaneously. The SA-IWDCA has shown the minimum energy consumption rate in fulfilling the resource needs of its allocated VM compared to the others.
For 400 VM, SA-IWDCA has shown improvements of 15%, 22%, and 25% as compared with IWDCA, IWD, and WCA.
Figure 6 depicts the analytical study of all the algorithms on Dataset 2 and we can observe that SA-IWDCA has the best VM placement.
Figure 7 depicts the simulation results for Dataset 3. We can observe that SA-IWDCA involves less resource wastage and deploys more VM than IWDCA when the number of VM requests increases. The results obtained were owing to better placement decisions of SA-IWDCA, which established balanced and efficient resource management to curb resource fragmentation. Figure 7(c) shows the energy consumption of all four algorithms, among which SA-IWDCA has the smallest value and the WCA holds the largest value. The SA-IWDCA was optimized to place the VM in an extremely concentrated manner to minimize the active servers and energy consumption costs. The IWDCA performed satisfactorily. In the WCA and IWD algorithms, CPU utilization was balanced, but the activation of several servers lowered the utilization rate, resulting in performance degradation.
Figure 7(d) shows that the SA-IWDCA outperformed the IWDCA and other existing algorithms in terms of resource fragmentation. This is because the CPU and memory demands of the VM have a significant impact on the resource wastage of the PM, which is properly managed by the SA-IWDCA. Moreover, to overcome resource fragmentation, SA-IWDCA focuses on both the resource utilization of the server and the resource requests of the VM.
Efficient VM allocation provides a boost and profitable business for cloud service providers. The proposed SA-IWDCA was developed to efficiently solve VM placement problems in cloud datacenters. The IWD explores a larger search space to avoid slipping into local optima traps using the probability heuristic function, whereas the WCA performs multiple local searches based on the functioning of the water cycle process to refine and discover the finest VM solution among the others. In addition, SA is used to locate the global minimum of a function in a large and discrete search space. The temperature scheduling and cooling factors facilitate the SA in moving closer toward the optimum VM solution. The primary objective of the proposed mechanism is to efficiently utilize PM resources and maintain the energy consumption of the PM by considering the QoS and resource fragmentation rate. The proposed work was designed under the simulation environment of the MATLAB platform, and the simulation results proved that the proposed technique performs well when considering energy consumption and resource utilization as priorities.
Flow chart of SA-IWDCA.
Inversion process.
Translation process.
Switching process.
Dataset 1: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Dataset 2: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Dataset 3: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
Table 1 . Amazon EC2 instances.
VM instances | CPU | Memory |
---|---|---|
T2. nano | 1 | 0.5 |
T2. micro | 1 | 1 |
T2. small | 1 | 2 |
T2. medium | 2 | 4 |
T2. large | 2 | 8 |
Table 2 . Algorithm parameters.
Parameters | Value |
---|---|
Size of the population | 15 |
Maximum Iteration | 50 |
Value of initial soil | 10,000 |
Velocity parameters: | 1 |
Soil parameters: | 0.01 |
Probability constant ( | 0.9 |
No. of rivers | 6 |
Random ( | 2 |
Temperature ( | 1000 |
Table 3 . Server specification.
Server type | MIPS | Storage (GB) | Memory (GB) |
---|---|---|---|
HP ProLiant G4 | 1860 | 4 | 1000 |
HP ProLiant G5 | 2660 | 4 | 1000 |
Flow chart of SA-IWDCA.
|@|~(^,^)~|@|Inversion process.
|@|~(^,^)~|@|Translation process.
|@|~(^,^)~|@|Switching process.
|@|~(^,^)~|@|Dataset 1: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
|@|~(^,^)~|@|Dataset 2: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.
|@|~(^,^)~|@|Dataset 3: (a) number of active servers, (b) resource utilization of PM, (c) energy consumption of PM, and (d) resource fragmentation of PM.