Skip to main content
Log in

CloudBench: an integrated evaluation of VM placement algorithms in clouds

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

A complex and important task in the cloud resource management is the efficient allocation of virtual machines (VMs), or containers, in physical machines (PMs). The evaluation of VM placement techniques in real-world clouds can be tedious, complex and time-consuming. This situation has motivated an increasing use of cloud simulators that facilitate this type of evaluations. However, most of the reported VM placement techniques based on simulations have been evaluated taking into account one specific cloud resource (e.g., CPU), whereas values often unrealistic are assumed for other resources (e.g., RAM, awaiting times, application workloads, etc.). This situation generates uncertainty, discouraging their implementations in real-world clouds. This paper introduces CloudBench, a methodology to facilitate the evaluation and deployment of VM placement strategies in private clouds. CloudBench considers the integration of a cloud simulator with a real-world private cloud. Two main tools were developed to support this methodology, a specialized multi-resource cloud simulator (CloudBalanSim), which is in charge of evaluating VM placement techniques, and a distributed resource manager (Balancer), which deploys and tests in a real-world private cloud the best VM placement configurations that satisfied user requirements defined in the simulator. Both tools generate feedback information, from the evaluation scenarios and their obtained results, which is used as a learning asset to carry out intelligent and faster evaluations. The experiments implemented with the CloudBench methodology showed encouraging results as a new strategy to evaluate and deploy VM placement algorithms in the cloud.

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
Fig. 12

Similar content being viewed by others

Notes

  1. The DCSim code is public and can be downloaded from: https://github.com/digs-uwo/dcsim.

  2. FlexCloud: https://sourceforge.net/projects/flexcloud/.

  3. http://monasca.io/about.html, https://wiki.openstack.org/wiki/Monasca.

  4. https://www.openstack.org.

  5. https://github.com/beloglazov/planetlab-workload-traces.

  6. https://docs.ceph.com/docs/master/start/intro/.

  7. https://zookeeper.apache.org/doc/current/zookeeperOver.html.

  8. https://cloud.google.com/kubernetes/.

References

  1. Ahmed A, Sabyasachi AS (2014) Cloud computing simulators: a detailed survey and future direction. In: Advance Computing Conference (IACC), 2014 IEEE International, pp 866–872. https://doi.org/10.1109/IAdCC.2014.6779436

  2. 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. Concurr Comput Pract Exp 24(13):1397–1420. https://doi.org/10.1002/cpe.1867

    Article  Google Scholar 

  3. Beloglazov A, Buyya R (2015) Openstack neat: a framework for dynamic and energy-efficient consolidation of virtual machines in openstack clouds. Concurr Comput Pract Exp 27(5):1310–1333. https://doi.org/10.1002/cpe.3314

    Article  Google Scholar 

  4. Calheiros RN, Ranjan R, Beloglazov A, De Rose CAF, Buyya R (2011) CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw Pract Exp 41(1):23–50. https://doi.org/10.1002/spe.995

    Article  Google Scholar 

  5. Chen L, Shen H, Sapra K (2014) Distributed autonomous virtual resource management in datacenters using finite-Markov decision process. In: Proceedings of the ACM Symposium on Cloud Computing, SOCC ’14, pp 24:1–24:13. ACM, New York, NY, USA. https://doi.org/10.1145/2670979.2671003

  6. Coffman EG, Garey MR, Johnson DS (1996) Approximation algorithms for bin packing: a survey. PWS Publishing Co., USA, pp 46–93

    Google Scholar 

  7. Durao F, Carvalho JFS, Fonseka A, Garcia VC (2014) A systematic review on cloud computing. J Supercomput 68(3):1321–1346. https://doi.org/10.1007/s11227-014-1089-x

    Article  Google Scholar 

  8. El Motaki S, Yahyaouy A, Gualous H, Sabor J (2019) Comparative study between exact and metaheuristic approaches for virtual machine placement process as knapsack problem. J Supercomput. https://doi.org/10.1007/s11227-019-02847-0

    Article  Google Scholar 

  9. Foundation O (2016) Openstack installation guide for red hat enterprise linux and centos. http://docs.openstack.org/mitaka/install-guide-rdo/. Accessed 15 June 2016

  10. Garcia-Molina H (1982) Elections in a distributed computing system. IEEE Trans Comput 31(1):48–59. https://doi.org/10.1109/TC.1982.1675885

    Article  Google Scholar 

  11. Garg SK, Buyya R (2011) Networkcloudsim: modelling parallel applications in cloud simulations. In: 2011 Fourth IEEE International Conference on Utility and Cloud Computing (UCC), pp 105–113. https://doi.org/10.1109/UCC.2011.24

  12. Gomez-Rodriguez MA, Sosa-Sosa VJ, Gonzalez-Compean JL (2017) Assessment of private cloud infrastructure monitoring tools—a comparison of Ceilometer and Monasca. In: Proceedings of the 6th International Conference on Data Science, Technology and Applications (DATA 2017), pp 371–381. SCITEPRESS—Science and Technology Publications, Lda., Madrid, Spain

  13. Gupta MK, Amgoth T (2018) Resource-aware virtual machine placement algorithm for IAAS cloud. J Supercomput 74(1):122–140. https://doi.org/10.1007/s11227-017-2112-9

    Article  Google Scholar 

  14. Han SH, Kim HW, Jeong YS (2019) An efficient job management of computing service using integrated idle vm resources for high-performance computing based on openstack. J Supercomput. https://doi.org/10.1007/s11227-019-02769-x

    Article  Google Scholar 

  15. Hussain F, Haider SA, Alamri A, AlQarni M (2018) Fault-tolerance analyzer: a middle layer for pre-provision testing in openstack. Comput Electr Eng 66:64–79. https://doi.org/10.1016/j.compeleceng.2017.11.019

    Article  Google Scholar 

  16. Jangiti S, Shankar Sriram VS (2018) Scalable and direct vector bin-packing heuristic based on residual resource ratios for virtual machine placement in cloud data centers. Comput Electr Eng 68:44–61. https://doi.org/10.1016/j.compeleceng.2018.03.029

    Article  Google Scholar 

  17. Korte B, Vygen J (2006) Bin-packing. Springer, Berlin, pp 426–441. https://doi.org/10.1007/3-540-29297-7_18

    Book  Google Scholar 

  18. Kuo CF, Yeh TH, Lu YF, Chang BR (2015) Efficient allocation algorithm for virtual machines in cloud computing systems. In: Proceedings of the ASE BigData & SocialInformatics 2015, ASE BD&SI ’15, pp 48:1–48:6. ACM, New York, NY, USA. https://doi.org/10.1145/2818869.2818878

  19. Lin W, Xu S, He L, Li J (2017) Multi-resource scheduling and power simulation for cloud computing. Inf Sci 397–398:168–186. https://doi.org/10.1016/j.ins.2017.02.054

    Article  Google Scholar 

  20. Maarouf A, Marzouk A, Haqiq A (2015) Comparative study of simulators for cloud computing. In: 2015 International Conference on Cloud Technologies and Applications (CloudTech), pp 1–8. https://doi.org/10.1109/CloudTech.2015.7336989

  21. Mann ZA (2015) Allocation of virtual machines in cloud data centers—a survey of problem models and optimization algorithms. ACM Comput Surv 48(1):11:1–11:34. https://doi.org/10.1145/2797211

    Article  Google Scholar 

  22. Milani AS, Navimipour NJ (2016) Load balancing mechanisms and techniques in the cloud environments: systematic literature review and future trends. J Netw Comput Appl 71:86–98. https://doi.org/10.1016/j.jnca.2016.06.003

    Article  Google Scholar 

  23. Mustafa S, Nazir B, Hayat A, ur Rehman Khan A, Madani SA (2015) Resource management in cloud computing: taxonomy, prospects, and challenges. Comput Electr Eng 47:186–203. https://doi.org/10.1016/j.compeleceng.2015.07.021

    Article  Google Scholar 

  24. Nuaimi KA, Mohamed N, Nuaimi MA, Al-Jaroodi J (2012) A survey of load balancing in cloud computing: challenges and algorithms. In: Proceedings of the 2012 Second Symposium on Network Cloud Computing and Applications, NCCA ’12, pp 137–142. IEEE Computer Society, Washington, DC, USA. https://doi.org/10.1109/NCCA.2012.29

  25. Pires FL, Barán B (2015) Virtual machine placement literature review. CoRR arxiv: abs/1506.01509

  26. Sato K, Samejima M, Komoda N (2013) Dynamic optimization of virtual machine placement by resource usage prediction. In: 2013 11th IEEE International Conference on Industrial Informatics (INDIN), pp 86–91. https://doi.org/10.1109/INDIN.2013.6622863

  27. Satpathy A, Addya SK, Turuk AK, Majhi B, Sahoo G (2018) Crow search based virtual machine placement strategy in cloud data centers with live migration. Comput Electr Eng 69:334–350. https://doi.org/10.1016/j.compeleceng.2017.12.032

    Article  Google Scholar 

  28. Singh A, Korupolu, M, Mohapatra D (2008) Server-storage virtualization: integration and load balancing in data centers. In: SC ’08: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing, pp 1–12. https://doi.org/10.1109/SC.2008.5222625

  29. Thakur A, Goraya MS (2017) A taxonomic survey on load balancing in cloud. J Netw Comput Appl 98:43–57. https://doi.org/10.1016/j.jnca.2017.08.020

    Article  Google Scholar 

  30. Tian W, Xu M, Chen A, Li G, Wang X, Chen Y (2015) Open-source simulators for cloud computing: comparative study and challenging issues. Simul Model Pract Theory 58:239–254. https://doi.org/10.1016/j.simpat.2015.06.002

    Article  Google Scholar 

  31. Tian W, Zhao Y, Xu M, Zhong Y, Sun X (2015) A toolkit for modeling and simulation of real-time virtual machine allocation in a cloud data center. IEEE Trans Autom Sci Eng 12(1):153–161. https://doi.org/10.1109/TASE.2013.2266338

    Article  Google Scholar 

  32. Tighe M, Keller G, Bauer M, Lutfiyya H (2012) DCSIM: a data centre simulation tool for evaluating dynamic virtualized resource management. In: 2012 8th International Conference on Network and Service Management (CNSM) and 2012 Workshop on Systems Virtualiztion Management (SVM), pp 385–392

  33. Wood T, Shenoy P, Venkataramani A, Yousif M (2009) Sandpiper: black-box and gray-box resource management for virtual machines. Comput Netw 53(17):2923–2938. https://doi.org/10.1016/j.comnet.2009.04.014

    Article  MATH  Google Scholar 

  34. Xu M, Li G, Yang W, Tian W (2015) FlexCloud: a flexible and extendible simulator for performance evaluation of virtual machine allocation. In: 2015 IEEE International Conference on Smart City/SocialCom/SustainCom (SmartCity), pp 649–655. https://doi.org/10.1109/SmartCity.2015.143

  35. Xu M, Tian W (2012) An online load balancing scheduling algorithm for cloud data centers considering real-time multi-dimensional resource. In: 2012 IEEE 2nd International Conference on Cloud Computing and Intelligence Systems, vol 01, pp 264–268. https://doi.org/10.1109/CCIS.2012.6664409

  36. Xu M, Tian W, Buyya R (2016) A survey on load balancing algorithms for VM placement in cloud computing. CoRR arxiv: abs/1607.06269

  37. Zhao X, Yin J, Lin P, Zhi C, Feng S, Wu H, Chen Z (2015) SimMon: a toolkit for simulating monitoring mechanism in cloud computing environments. Springer, Berlin, pp 477–481. https://doi.org/10.1007/978-3-662-48616-0_33

    Book  Google Scholar 

  38. Zhong WTLJ (2013) LIF: a dynamic scheduling algorithm for cloud data centers considering multi-dimensional resources. J Inf Comput Sci 10(12):3925. https://doi.org/10.12733/jics20102111

    Article  Google Scholar 

Download references

Acknowledgements

This work was partially funded by the Spanish Ministry of Economy, Industry and Competitiveness under the Grant TIN2016-79637-P “Towards Unification of HPC and Big Data Paradigms” and by the Mexican Council of Science and Technology (CONACYT) through a Ph.D. Grant (No. 212677).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mario A. Gomez-Rodriguez.

Additional information

Publisher's Note

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

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Gomez-Rodriguez, M.A., Sosa-Sosa, V.J., Carretero, J. et al. CloudBench: an integrated evaluation of VM placement algorithms in clouds. J Supercomput 76, 7047–7080 (2020). https://doi.org/10.1007/s11227-019-03141-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-019-03141-9

Keywords

Navigation