Skip to main content

Advertisement

Log in

An Energy-Efficient Dynamic Resource Management Approach Based on Clustering and Meta-Heuristic Algorithms in Cloud Computing IaaS Platforms

Energy Efficient Dynamic Cloud Resource Management

  • Published:
Wireless Personal Communications Aims and scope Submit manuscript

Abstract

Cloud computing as an emerging technology, has revolutionized the information technology industry by elastic on-demand provisioning and De-provisioning of computing resources. Due to the huge amount of electrical energy consumption by large-scale Datacenters, it is essential to investigate various approaches in order to decrease simultaneously energy and its impacts on global economic crisis and ecological concerns. This study through virtualization technique applied a hybrid technique for resource management. This technique used k-means clustering for mapping task and dynamic consolidation method, which improved by micro-genetic algorithm. Experimental evaluation performed on CloudSim 3.0.3 and the results were analyzed with Expert-Choice software tools. We found that the proposed KMGA technique could provide a good trade-off between effectively reduce energy consumption of Datacenters and sustained quality of service. In addition, it minimized the number of virtual machine migrations and make-span, in comparison with particle swarm optimization and genetic algorithms in similar hybrid techniques.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

References

  1. Jackson, K. L., & Williams, R. (2011). The economic benefit of cloud computing. Forbes. Available at: http://www.forbes.com/sites/kevinjackson/2011/09/17/the-economic-benefit-of-cloud-computing.

  2. Story, J. N. (2014). Cloud computing and the NSA: The carbon footprint of the secret servers. Pittsburgh Journal of Environmental and Public Health Law, 9(1), 33–65. https://doi.org/10.5195/pjephl.2014.77.

    Article  MathSciNet  Google Scholar 

  3. Lenk, A., Klems, M., Nimis, J., Tai, S., & Sandholm, T. (2009). What’s inside the Cloud? An architectural map of the Cloud landscape. In Proceedings of the 2009 ICSE workshop on software engineering challenges of cloud computing (pp. 23–31). IEEE Computer Society.

  4. Bahrami, M., & Singhal, M. (2015). The role of cloud computing architecture in big data. In Information granularity, big data, and computational intelligence (pp. 275–295). Springer, Cham. https://doi.org/10.1007/978-3-319-08254-7_13.

  5. Buttazzo, G. C. (2002). Scalable applications for energy-aware processors. In International workshop on embedded software (pp. 153–165). Springer, Berlin.

  6. Sekhar, J., Jeba, G., & Durga, S. (2012). A survey on energy efficient server consolidation through vm live migration. International Journal of Advances in Engineering & Technology, 5(1), 515–525.

    Google Scholar 

  7. Tianfield, H. (2013). A vision on VM consolidation for green cloud computing. Glasgow Caledonian University, United Kingdom.

  8. Ameller, D., & Franch Gutiérrez, J. (2008). Service level agreement monitor (SALMon). In ICCBSS 2008 proceedings: Seventh international conference on composition-based software systems: 25–29 February 2008, Madrid, Spain (pp. 224–227). Institute of Electrical and Electronics Engineers (IEEE).

  9. Ghani, I., Niknejad, N., & Jeong, S. R. (2015). Energy saving in green cloud computing datacenters: A review. Journal of Theoretical and Applied Information Technology, 74(1), 16–30.

    Google Scholar 

  10. Gandhi, A., Chen, Y., Gmach, D., Arlitt, M., & Marwah, M. (2012). Hybrid resource provisioning for minimizing data center SLA violations and power consumption. Sustainable Computing: Informatics and Systems, 2(2), 91–104.

    Google Scholar 

  11. Vasile, M. A., Pop, F., Tutueanu, R. I., & Cristea, V. (2013). HySARC 2: Hybrid scheduling algorithm based on resource clustering in cloud environments. In International conference on algorithms and architectures for parallel processing (pp. 416–425).

  12. Leostream, Inc. (2002). Server consolidation technologies—a practical guide. Burlington MA01803, USA.

  13. Li, G., Jiang, Y., Yang, W., Huang, C., & Tian, W. (2016). Self-adaptive consolidation of virtual machines for energy-efficiency in the cloud. arXiv preprint arXiv:1604.04482.

  14. Ferreto, T. C., Netto, M. A., Calheiros, R. N., & De Rose, C. A. (2011). Server consolidation with migration control for virtualized data centers. Future Generation Computer Systems, 27(8), 1027–1034.

    Article  Google Scholar 

  15. Ferdaus, M. H., Murshed, M., Calheiros, R. N., & Buyya, R. (2014, August). Virtual machine consolidation in cloud data centers using ACO metaheuristic. In European conference on parallel processing (pp. 306–317).

  16. Choudhary, V. K. (2016). Cloud computing and its applications: A review. International Journal of Emerging Trends & Technology in Computer, 5(4), 020–027.

    Google Scholar 

  17. Iqbal, W., Dailey, M. N., Carrera, D., & Janecek, P. (2011). Adaptive resource provisioning for read intensive multi-tier applications in the cloud. Future Generation Computer Systems, 27(6), 871–879.

    Article  Google Scholar 

  18. Ranjan, R., Zhao, L., Wu, X., Liu, A., Quiroz, A., & Parashar, M. (2010). Peer-to-peer cloud provisioning: Service discovery and load-balancing. In Cloud computing (pp. 195–217). Springer, London.

  19. Durgadevi, P., & Srinivasan, S. (2015). Task scheduling using amalgamation of metaheuristics swarm optimization algorithm and cuckoo search in cloud computing environment. Journal for Research, 1(09), 10–17.

    Google Scholar 

  20. Patel, K. S., & Sarje, A. K. (2012). VM provisioning method to improve the profit and SLA violation of cloud service providers. In Cloud computing in emerging markets (CCEM), 2012 IEEE International conference on (pp. 1–5). IEEE. doi: https://doi.org/10.1109/ccem.2012.6354623.

  21. Beloglazov, A., & Buyya, R. (2010). Adaptive threshold-based approach for energy-efficient consolidation of virtual machines in cloud data centers. In MGC@ Middleware (p. 4).

  22. Gu, J., Hu, J., Zhao, T., & Sun, G. (2012). A new resource scheduling strategy based on genetic algorithm in cloud computing environment. Journal of Computers, 7(1), 42–52.

    Article  Google Scholar 

  23. Murtazaev, A., & Oh, S. (2011). Sercon: Server consolidation algorithm using live migration of virtual machines for green computing. IETE Technical Review, 28(3), 212–231.

    Article  Google Scholar 

  24. Mofolo, T., & Suchithra, R. (2013). Heuristic based resource allocation using virtual machine migration: a cloud computing perspective. International Refereed Journal of Engineering and Science, 2(5), 40–45.

    Google Scholar 

  25. Yakhchi, M., Ghafari, S. M., Yakhchi, S., Fazeli, M., & Patooghi, A. (2015). Proposing a load balancing method based on Cuckoo Optimization Algorithm for energy management in cloud computing infrastructures. In Modeling, simulation, and applied optimization (ICMSAO), 2015 6th international conference on (pp. 1–5). IEEE.

  26. Akiyama, S., Hirofuchi, T., Takano, R., & Honiden, S. (2012). Miyakodori: A memory reusing mechanism for dynamic vm consolidation. In Cloud computing (CLOUD), 2012 IEEE 5th international conference on (pp. 606–613). IEEE.

  27. Liu, J., Luo, X. G., Zhang, X. M., Zhang, F., & Li, B. N. (2013). Job scheduling model for cloud computing based on multi-objective genetic algorithm. International Journal of Computer Science Issues, 10(1), 134–139.

    Google Scholar 

  28. Hurwitz, J. S., Bloor, R., Kaufman, M., & Halper, F. (2010). Cloud computing for dummies. London: Wiley.

    Google Scholar 

  29. Beloglazov, A. (2013). Energy-efficient management of virtual machines in Datacenters for cloud computing, Submitted in total fulfilment of the requirements of the degree of Doctor of Philosophy, Department of Computing and Information Systems, The University of Melbourne.

  30. Minas, L., & Ellison, B. (2009). Energy efficiency for information technology: How to reduce power consumption in servers and data centers. Intel Press.

  31. Fan, X., Weber, W. D., & Barroso, L. A. (2007). Power provisioning for a warehouse-sized computer. ACM SIGARCH Computer Architecture News, ACM., 35(2), 13–23.

    Article  Google Scholar 

  32. Barroso, L. A., & Hölzle, U. (2007). The case for energy-proportional computing. Computer, 12, 33–37.

    Article  Google Scholar 

  33. Lefurgy, C., Wang, X., & Ware, M. (2007, June). Server-level power control. In Autonomic computing, 2007. ICAC’07. Fourth international conference on (pp. 4–4). IEEE.

  34. Jin, Y., Wen, Y., & Chen, Q. (2012, March). Energy efficiency and server virtualization in data centers: An empirical investigation. In Computer communications workshops (INFOCOM WKSHPS), 2012 IEEE Conference on (pp. 133–138). IEEE.

  35. Lloyd, S. (1982). Least squares quantization in PCM. IEEE Transactions on Information Theory, 28(2), 129–137.

    Article  MathSciNet  MATH  Google Scholar 

  36. Beloglazov, A., & Buyya, R. (2012). Optimal online deterministic algorithms and adaptive heuristics for energy and performance efficient dynamic consolidation of virtual machines in cloud data centers. Concurrency and Computation: Practice and Experience, 24(13), 1397–1420.

    Article  Google Scholar 

  37. Upton, G., & Cook, I. (1996). Understanding statistics. Oxford: Oxford University Press.

    MATH  Google Scholar 

  38. Shaw, S. B., & Singh, A. K. (2015). Use of proactive and reactive hotspot detection technique to reduce the number of virtual machine migration and energy consumption in cloud data center. Computers & Electrical Engineering, 47, 241–254.

    Article  Google Scholar 

  39. Oliveira, C., Petrucci, V., & Loques, O. (2010). Impact of server dynamic allocation on the response time for energy-efficient virtualized web clusters. In XXVIII Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos-12th Brazillian workshop on real-time and embedded systems (WTR).

  40. Al-Ayyoub, M., Jararweh, Y., Daraghmeh, M., & Althebyan, Q. (2015). Multi-agent based dynamic resource provisioning and monitoring for cloud computing systems infrastructure. Cluster Computing, 18(2), 919–932.

    Article  Google Scholar 

  41. Kalra, M., & Singh, S. (2015). A review of metaheuristic scheduling techniques in cloud computing. Egyptian Informatics Journal, 16(3), 275–295.

    Article  Google Scholar 

  42. Blum, C., & Roli, A. (2003). Metaheuristics in combinatorial optimization: Overview and conceptual comparison. ACM Computing Surveys (CSUR), 35(3), 268–308.

    Article  Google Scholar 

  43. Dréo, J., & Candan, C. (2011). Different classifications of metaheuristics. Available at: https://en.wikipedia.org/wiki/Metaheuristic#/media/File:Metaheuristics_classification.svg. Accessed 28 Aug 2011.

  44. Wang, S., Liu, Z., Zheng, Z., Sun, Q., & Yang, F. (2013). Particle swarm optimization for energy-aware virtual machine placement optimization in virtualized data centers. In Parallel and distributed systems (ICPADS), 2013 international conference on (pp. 102–109). IEEE.

  45. Goldberg, D. E. (1989). Sizing populations for serial and parallel genetic algorithms. In Proceedings of the 3rd international conference on genetic algorithms (pp. 70–79). Fairfax.

  46. Mendoza, J. E., Lopez, M. E., Coello, C. C., & Lopez, E. A. (2009). Micro genetic multi-objective reconfiguration algorithm considering power losses and reliability indices for medium voltage distribution network. IET Generation, Transmission and Distribution, 3(9), 825–840.

    Article  Google Scholar 

  47. Chipperfield, A., Fleming, P., Pohlheim, H., & Fonseca, C. (1994). Genetic algorithm toolbox for use with MATLAB. Department of automatic control and systems engineering, University of Sheffield. Available at: http://www.pohlheim.com/Papers/tr_gatbx12/ChipperfieldFlemingPohlheimFonseca_tr_GATbx_v12.pdf.

  48. Coello, C. A., & Pulido, G. T. (2001). Multiobjective optimization using a micro-genetic algorithm. In Proceedings of the genetic and evolutionary computation conference (gecco’2001) (pp. 274–282).

  49. Tan, C. J., Lim, C. P., & Cheah, Y. N. (2013). A modified micro genetic algorithm for undertaking multi-objective optimization problems. Journal of Intelligent & Fuzzy Systems, 24(3), 483–495.

    Article  MathSciNet  Google Scholar 

  50. Moghaddam, F. F., Moghaddam, R. F., & Cheriet, M. (2015). Carbon-aware distributed cloud: multi-level grouping genetic algorithm. Cluster Computing, 18(1), 477–491.

    Article  Google Scholar 

  51. Calheiros, R. N., Ranjan, R., Beloglazov, A., De Rose, C. A., & Buyya, R. (2011). CloudSim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software: Practice and Experience, 41(1), 23–50.

    Google Scholar 

  52. Tan, P. N., Steinbach, M., Kumar, V. (2005). Chap 8: Cluster analysis: basic concepts and algorithms. In Introduction to data mining, (pp. 503–505).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mehrdad Maeen.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Mathematical Appendix

Mathematical Appendix

Here we present details of mathematical derivations of the results presented in the text. The broad ideas and intuitions with focusing on the technical aspects are discussed here.

1.1 Power Model

According to several studies that mentioned in text, the utilization of DVFS on CPU results in relatively linear power-to-frequency relationship. The reason lies in the predetermined number of states that can be set to the frequency and voltage of CPU and the way that DVFS isn’t connected to other framework parts separated from CPU. Besides, these examinations demonstrate that in normal an inactive server expends roughly 70% of the power consumed by the server running at full CPU speed. This reality legitimizes the method of turning idle servers off to diminish total power utilization. Therefore, in this study we use bellow power model (11):

$$P\left( {u^{cpu} } \right) = P_{idle} + \left( {P_{busy} - P_{idle} } \right)u^{cpu} ,$$
(11)

Calculating (11) for the VM consolidation case, we see that:

$$P\left( {u^{cpu} } \right) = k_{j} \cdot e_{j}^{max} + \left( {1 - k_{j} } \right) \cdot e_{j}^{max} \cdot u^{cpu} = e_{j}^{max} \cdot \left( {0.7 + 0.3\cdot u^{cpu} } \right),$$
(12)

where \({\text{P}}\left( {u^{cpu} } \right)\), is the CPU power consumption of physical host, \({\text{k}}_{\text{j}}\) is the fraction of the PM power consumption during server idle time, \({\text{e}}_{\text{j}}^{ \hbox{max} } = P_{busy} = P_{max}\) is the maximum amount of power consumption in PM processor during the full utilization of server which is set to 250 W (a usual value for modern computing servers); \({\text{k}}_{\text{j}}\cdot{\text{e}}_{\text{j}}^{ \hbox{max} } =\)\(P_{idle} ,\) and \(u^{cpu}\) is the CPU utilization which is a function of time and represented as \(u^{cpu} \left( t \right)\). Therefore, total energy (E) consumption by a

physical host can be defined as an integral of the power consumption function over a period of time (13).

$$E = \int_{t} {P\left( {u^{cpu} \left( t \right)} \right)} dt$$
(13)

1.2 Fitness Function

During the course of the micro-genetic algorithm the best bit patterns which function as representatives of a set of binary strings are gradually selected, i.e., those patterns which minimize/maximize the value of the function to be optimized. In our study we selected those patterns which minimize the energy consumption. As explained in the text, the fitness function of micro-genetic algorithm evaluates different arrangement of allocating VMs to hosts, in order to find the minimum energy consumption based on CPU utilization. The CPU utilization metric is based on average CPU usage over the time period selected for the view. A simple way to calculate CPU utilization is:

$$U = R/C = u^{cpu} = \frac{{h_{u}^{cpu} }}{{h_{c}^{cpu} }}$$
(14)

\({\text{U}} = u^{cpu} = {{\rm Utilization}}\), \({\text{R}} = h_{u}^{cpu}\) = Requirements which in simple terms is the BUSY TIME, \({\text{C}} = h_{c}^{cpu}\) = Capacity which is simple terms is BUSY TIME + IDLE TIME.

In order to find the probability that which of the arrangement for the generation of new child strings would be selected and with which they survive the recombination and mutation steps, we assume that f has to be minimized.

The function f is defined over all binary strings of length l and is called the fitness of the strings. The population consists of a set of N binary strings of length l at time t. Two parent strings from the current population are always selected for the creation of a new string. The probability that a parent string \(U_{j}^{cpu}\) will be selected from N strings \(U_{1}^{cpu} ,\quad U_{2}^{cpu} , \ldots , U_{N}^{cpu}\) is:

$$p \left( {U_{j}^{cpu} } \right) = \frac{{f\left( {U_{j}^{cpu} } \right)}}{{\mathop \sum \nolimits_{i = 1}^{N} P\left( {U_{i}^{cpu} } \right)}}$$
(15)

This means that strings with greater fitness are more likely to be selected than strings with lesser fitness. Let be the average fitness of all strings in the population, i.e.,

$$f\mu = fitness = \frac{1}{N}\mathop \sum \limits_{i = 1}^{N} P\left( {U_{i}^{cpu} } \right).$$
(16)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Askarizade Haghighi, M., Maeen, M. & Haghparast, M. An Energy-Efficient Dynamic Resource Management Approach Based on Clustering and Meta-Heuristic Algorithms in Cloud Computing IaaS Platforms. Wireless Pers Commun 104, 1367–1391 (2019). https://doi.org/10.1007/s11277-018-6089-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11277-018-6089-3

Keywords

Navigation