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.
Similar content being viewed by others
Notes
The DCSim code is public and can be downloaded from: https://github.com/digs-uwo/dcsim.
FlexCloud: https://sourceforge.net/projects/flexcloud/.
References
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
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
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
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
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
Coffman EG, Garey MR, Johnson DS (1996) Approximation algorithms for bin packing: a survey. PWS Publishing Co., USA, pp 46–93
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
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
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
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
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
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
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
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
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
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
Korte B, Vygen J (2006) Bin-packing. Springer, Berlin, pp 426–441. https://doi.org/10.1007/3-540-29297-7_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
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
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
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
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
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
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
Pires FL, Barán B (2015) Virtual machine placement literature review. CoRR arxiv: abs/1506.01509
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
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
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
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
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
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
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
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
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
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
Xu M, Tian W, Buyya R (2016) A survey on load balancing algorithms for VM placement in cloud computing. CoRR arxiv: abs/1607.06269
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
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
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
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-019-03141-9