Abstract
The success of the cloud computing paradigm is leading to a significant growth in size and complexity of cloud data centers. This growth exacerbates the scalability issues of the Virtual Machines (VMs) placement problem, that assigns VMs to the physical nodes of the infrastructure. This task can be modeled as a multi-dimensional bin-packing problem, with the goal to minimize the number of physical servers (for economic and environmental reasons), while ensuring that each VM can access the resources required in the next future. Unfortunately, the naïve bin packing problem applied to a real data center is not solvable in a reasonable time because the high number of VMs and of physical nodes makes the problem computationally unmanageable. Existing solutions improve scalability at the expense of solution quality, resulting in higher costs and heavier environmental footprint. The Class-Based placement technique (CBP) is a novel approach that exploits existing solutions to automatically group VMs showing similar behaviour. The Class-Based technique solves a placement problem that considers only some representative VMs for each class, and that can be replicated as a building block to solve the global VMs placement problem. Using real traces, we analyse our proposal performance, comparing different alternatives to automatically determine the number of building blocks. Furthermore, we compare our proposal against the existing alternatives and evaluate the results for different workload compositions. We demonstrate that the CBP proposal outperforms existing solutions in terms of scalability and VM placement quality.
Similar content being viewed by others
References
Gantz J, Reinsel D (2012) The digital universe in 2020: big data, bigger digital shadows, and biggest growth in the far east. IDC iView IDC Anal Future 2007:1–16
EPA (2011) Data center consolidation plan, US Environmental Protection Agency, Tech. Rep
Zhang Q, Cheng L, Boutaba R (2010) Cloud computing: state-of-the-art and research challenges. J Internet Serv Appl 1(1):7–18
Setzer T, Bichler M (2013) Using matrix approximation for high-dimensional discrete optimization problems: server consolidation based on cyclic time-series data. Eur J Oper Res 227(1):62–75
Speitkamp B, Bichler M (2010) A mathematical programming approach for server consolidation problems in virtualized data centers. IEEE Trans Serv Comput 3(4):266–278
Rochwerger B, Breitgand D, Epstein A, Hadas D, Loy I, Nagin K, Tordsson J, Ragusa C, Villari M, Clayman S et al (2011) Reservoir—when one cloud is not enough. IEEE Comput 44(3):44–51
Mills K, Filliben J, Dabrowski C (2011) Comparing VM-placement algorithms for on-demand clouds. In: Proc. of IEEE 3rd International Conference on Cloud Computing Technology and Science (CloudCom), Athens, Greece
Tang C, Steinder M, Spreitzer M, Pacifici G (2007) A scalable application placement controller for enterprise data centers. In: Proc. of the 16th International Conference on World Wide Web (WWW), Banff, Alberta, Canada
Barroso LA, Hölzle U (2007) The case for energy-proportional computing. IEEE Comput 40(12):33–37
Setzer T, Stage A (2010) Decision support for virtual machine reassignments in enterprise data centers. In: Proc. of Network Operations and Management Symposium, Osaka, Japan
Wäscher G, Haußner H, Schumann H (2007) An improved typology of cutting and packing problems. Eur J Oper Res 183(3):1109–1130
Kao M (2008) Encyclopedia of algorithms.Springer-Verlag, New York, Inc
Canali C, Lancellotti R (2013) Automatic virtual machine clustering based on Bhattacharyya distance for multi-cloud systems. In: Proc. of International Workshop on Multi-cloud Applications and Federated Clouds (MultiCloud, Prague, Czech Republic
Canali C, Lancellotti R (2014) Improving scalability of cloud monitoring through PCA-based clustering of virtual machines. J Comput Sci Technol 29(1):38–52
Canali C, Lancellotti R (2014) An adaptive technique to model virtual machine behavior for scalable cloud monitoring. In: Proc. of IEEE Symposium on Computers and Communications (ISCC), Madeira, Portugal
Canali C, Lancellotti R (2015) Exploiting classes of virtual machines for scalable IaaS cloud management. In: Proc. of the 4th Symposium on Network Cloud Computing and Applications (NCCA), Munich, Germany
Rabinovich M, Spatscheck O (2002) Web caching and replication. Addison-Wesley Boston, USA, Boston
Iyengar AK, Squillante MS, Zhang L (1999) Analysis and characterization of large-scale Web server access patterns and performance. World Wide Web 2(1–2):85–100
Casolari S, Colajanni M (2010) On the selection of models for runtime prediction of system resources. In: Ardagna D, Zhang L (eds) Run-time models for self-managing systems and applications, ser. Autonomic Systems. Springer, pp. 25–44
Mastroianni C, Meo M, Papuzzo G (2013) Probabilistic consolidation of virtual machines in self-organizing cloud data centers. IEEE Trans Cloud Comput 1(2):215–228
Fang W, Liang X, Li S, Chiaraviglio L, Xiong N (2013) VMPlanner: optimizing virtual machine placement and traffic flow routing to reduce network power costs in cloud data centers. Comput Netw 57(1):179–196
Zhang R, Routray R, Eyers DM, Chambliss D, Sarkar P, Willcocks D, Pietzuch P (2011) IO Tetris: deep storage consolidation for the cloud via fine-grained workload analysis. In: Proc. of 4th IEEE International Conference on Cloud Computing, (CLOUD), Washington, DC, USA
Andreolini M, Casolari S, Colajanni M (2008) Models and framework for supporting runtime decisions in Web-based systems. ACM Trans Web 2(3):1–43
Addis B, Ardagna D, Panicucci B, Squillante M, Zhang L (2013) A hierarchical approach for the resource management of very large cloud platforms. IEEE Trans Depend Secure Comput 10(5):253–272
Stillwell M, Schanzenbach D, Vivien F, Casanova H (2010) Resource allocation algorithms for virtualized service hosting platforms. J Parallel Distrib Comput 70(9):962–974
Addis B, Ardagna D, Panicucci B, Squillante MS, Zhang L (2013) A hierarchical approach for the resource management of very large cloud platforms. IEEE Trans Depend Secure Comput 10(5):253–272
Epstein L, Favrholdt L, Kohrt J (2012) Comparing online algorithms for bin packing problems. J Sched 15(1):13–21
Zhang L, Ardagna D (2004) SLA based profit optimization in autonomic computing systems. In: Proc. of the 2nd International Conference on Service Oriented Computing (ICSOC), New York, NY, USA
Zhu X, Young D, Watson B, Wang Z, Rolia J, Singhal S, McKee B, Hyser C, Gmach D, Gardner R, Christian T, Cherkasova L (2009) 1000 islands: an integrated approach to resource management for virtualized data centers. J Cluster Comput 12(1):45–57
Faroe O, Pisinger D, Zachariasen M (2003) Guided local search for the three-dimensional bin-packing problem. Inf J Comput 15(3):267–283
Crainic TG, Perboli G, Tadei R (2009) Ts 2 pack: a two-level tabu search for the three-dimensional bin packing problem. Eur J Oper Res 195(3):744–760
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Canali, C., Lancellotti, R. Scalable and automatic virtual machines placement based on behavioral similarities. Computing 99, 575–595 (2017). https://doi.org/10.1007/s00607-016-0498-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-016-0498-5