Optimal deployment of components of cloud-hosted application for guaranteeing multitenancy isolation

One of the challenges of deploying multitenant cloud-hosted services that are designed to use (or be integrated with) several components is how to implement the required degree of isolation between the components when there is a change in the workload. Achieving the highest degree of isolation implies deploying a component exclusively for one tenant; which leads to high resource consumption and running cost per component. A low degree of isolation allows sharing of resources which could possibly reduce cost, but with known limitations of performance and security interference. This paper presents a model-based algorithm together with four variants of a metaheuristic that can be used with it, to provide near-optimal solutions for deploying components of a cloud-hosted application in a way that guarantees multitenancy isolation. When the workload changes, the model-based algorithm solves an open multiclass QN model to determine the average number of requests that can access the components and then uses a metaheuristic to provide near-optimal solutions for deploying the components. Performance evaluation showed that the obtained solutions had low variability and percent deviation when compared to the reference/optimal solution. We also provide recommendations and best practice guidelines for deploying components in a way that guarantees the required degree of isolation.

[1]  Julian M. Bass,et al.  Evaluating Degrees of Multitenancy Isolation: A Case Study of Cloud-Hosted GSD Tools , 2015, 2015 International Conference on Cloud and Autonomic Computing.

[2]  Maolin Tang,et al.  Composite SaaS Placement and Resource Optimization in Cloud Computing Using Evolutionary Algorithms , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[3]  Hema Banati,et al.  Performance analysis of firefly algorithm for data clustering , 2013 .

[4]  Michael Fisher,et al.  The Art of Scalability: Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise , 2009 .

[5]  Rouven Krebs,et al.  A Qualitative Discussion of Different Approaches for Implementing Multi-Tenant SaaS Offerings , 2011, Software Engineering.

[6]  Shuai Gao,et al.  Genetic simulated annealing algorithm for task scheduling based on cloud computing environment , 2010, 2010 International Conference on Intelligent Computing and Integrated Systems.

[7]  Thomas Stützle,et al.  Stochastic Local Search: Foundations & Applications , 2004 .

[8]  Bo Gao,et al.  A Framework for Native Multi-Tenancy Application Development and Management , 2007, The 9th IEEE International Conference on E-Commerce Technology and The 4th IEEE International Conference on Enterprise Computing, E-Commerce and E-Services (CEC-EEE 2007).

[9]  Mohammad Sohel Rahman,et al.  Solving the Multidimensional Multiple-choice Knapsack Problem by constructing convex hulls , 2006, Comput. Oper. Res..

[10]  El-Ghazali Talbi,et al.  Metaheuristics - From Design to Implementation , 2009 .

[11]  Julian M. Bass,et al.  Implementing the Required Degree of Multitenancy Isolation: A Case Study of Cloud-Hosted Bug Tracking System , 2016, 2016 IEEE International Conference on Services Computing (SCC).

[12]  Alexander Pretschner,et al.  Challenges and Opportunities of Cloud Computing : Trade-off Decisions in Cloud Computing Architecture , 2010 .

[13]  Paul R. Cohen,et al.  Empirical methods for artificial intelligence , 1995, IEEE Expert.

[14]  Bo Gao,et al.  A Study and Performance Evaluation of the Multi-Tenant Data Tier Design Patterns for Service Oriented Computing , 2008, 2008 IEEE International Conference on e-Business Engineering.

[15]  Murat Köksalan,et al.  A Simulated Annealing Approach to Bicriteria Scheduling Problems on a Single Machine , 2000, J. Heuristics.

[16]  Rajkumar Buyya,et al.  A framework for ranking of cloud computing services , 2013, Future Gener. Comput. Syst..

[17]  Paolo Toth,et al.  Knapsack Problems: Algorithms and Computer Implementations , 1990 .

[18]  Frank Leymann,et al.  ESBMT: Enabling Multi-Tenancy in Enterprise Service Buses , 2012, 4th IEEE International Conference on Cloud Computing Technology and Science Proceedings.

[19]  Rouven Krebs,et al.  Multi-tenancy Performance Benchmark for Web Application Platforms , 2013, ICWE.

[20]  Yanjun Zhang,et al.  A Genetic and Simulated Annealing Combined Algorithm for Optimization of Wideband Antenna Matching Networks , 2012 .

[21]  S. Martello,et al.  Algorithms for Knapsack Problems , 1987 .

[22]  Mhand Hifi,et al.  A column generation method for the multiple-choice multi-dimensional knapsack problem , 2010, Comput. Optim. Appl..

[23]  Oded Maler,et al.  Approximating the Pareto Front of Multi-criteria Optimization Problems , 2010, TACAS.

[24]  Filip De Turck,et al.  Cost-Effective Feature Placement of Customizable Multi-Tenant Applications in the Cloud , 2014, Journal of Network and Systems Management.

[25]  Frank Leymann,et al.  Combining Different Multi-tenancy Patterns in Service-Oriented Applications , 2009, 2009 IEEE International Enterprise Distributed Object Computing Conference.

[26]  Filip De Turck,et al.  Kameleo: Design of a new Platform-as-a-Service for flexible data management , 2014, 2014 IEEE Network Operations and Management Symposium (NOMS).

[27]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[28]  Giuliano Casale,et al.  OptiSpot: minimizing application deployment cost using spot cloud resources , 2016, Cluster Computing.

[29]  Dipti Patil,et al.  Multi-tenant e-commerce based on SaaS model to minimize IT cost , 2014, 2014 International Conference on Advances in Engineering & Technology Research (ICAETR - 2014).

[30]  Holger H. Hoos,et al.  Characterizing the Run-time Behavior of Stochastic Local Search , 1998 .

[31]  Marko Becker Performance By Design Computer Capacity Planning By Example , 2016 .

[32]  Daniela Cruzes,et al.  Research synthesis in software engineering: A tertiary study , 2011, Inf. Softw. Technol..

[33]  Manuel Loesch,et al.  Comparison of Request Admission Based Performance Isolation Approaches in Multi-tenant SaaS Applications , 2014, CLOSER.

[34]  Jorge-Arnulfo Quiané-Ruiz,et al.  Runtime measurements in the cloud , 2010, Proc. VLDB Endow..

[35]  Raquel Vigolvino Lopes,et al.  Business-Driven Long-Term Capacity Planning for SaaS Applications , 2015, IEEE Transactions on Cloud Computing.

[36]  Eric Bauer,et al.  Reliability and Availability of Cloud Computing , 2012 .

[37]  Daniel A. Menascé,et al.  Near-Optimal Allocation of VMs from IaaS Providers by SaaS Providers , 2015, 2015 International Conference on Cloud and Autonomic Computing.

[38]  Gwendal Simon,et al.  Hard multidimensional multiple choice knapsack problems, an empirical study , 2010, Comput. Oper. Res..

[39]  Virgílio A. F. Almeida,et al.  Performance by Design - Computer Capacity Planning By Example , 2004 .

[40]  Julian M. Bass,et al.  Optimizing the deployment of cloud-hosted application components for guaranteeing multitenancy isolation , 2016, 2016 International Conference on Information Society (i-Society).

[41]  Vladimir Getov,et al.  A Meta-Heuristic Load Balancer for Cloud Computing Systems , 2015, 2015 IEEE 39th Annual Computer Software and Applications Conference.

[42]  Frank Leymann,et al.  Cloud Computing Patterns , 2014, Springer Vienna.

[43]  Rouven Krebs,et al.  Performance Isolation in Multi-Tenant Applications , 2015 .

[44]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[45]  Peter J. Fleming,et al.  Evolutionary Algorithms and Simulated Annealing for MCDM , 1999 .

[46]  Kyle Roche,et al.  Beginning Java Google App Engine , 2009 .

[47]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[48]  Wouter Joosen,et al.  Adaptive Performance Isolation Middleware for Multi-tenant SaaS , 2015, 2015 IEEE/ACM 8th International Conference on Utility and Cloud Computing (UCC).

[49]  Frank Leymann,et al.  Moving Applications to the Cloud: an Approach Based on Application Model Enrichment , 2011, Int. J. Cooperative Inf. Syst..

[50]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[51]  Nikitas J. Dimopoulos,et al.  A new heuristic for solving the multichoice multidimensional knapsack problem , 2005, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[52]  Christof Momm,et al.  Using software performance curves for dependable and cost-efficient service hosting , 2010, QUASOSS '10.

[53]  Franz Rothlauf,et al.  Design of Modern Heuristics: Principles and Application , 2011 .

[54]  Kyle Roche,et al.  Beginning Google App Engine for Java , 2009 .

[55]  María Dolores Rodríguez-Moreno,et al.  On the statistical distribution of the expected run-time in population-based search algorithms , 2015, Soft Comput..

[56]  H. Kellerer,et al.  Introduction to NP-Completeness of Knapsack Problems , 2004 .

[57]  Julian M. Bass,et al.  Evaluating degrees of isolation between tenants enabled by multitenancy patterns for cloud-hosted version control systems (VCS). , 2015 .

[58]  Jan Sedivý,et al.  Cloud autoscaling simulation based on queueing network model , 2017, Simul. Model. Pract. Theory.

[59]  Eric Bauer,et al.  Reliability and Availability of Cloud Computing: Bauer/Cloud Computing , 2012 .

[60]  Franz Rothlauf,et al.  Design of Modern Heuristics , 2011, Natural Computing Series.

[61]  Muhammad Fahad Khan,et al.  An Approach Towards Customized Multi- Tenancy , 2012 .

[62]  Vikas Saxena,et al.  Cloud Computing Solution Patterns: Infrastructural Solutions , 2013 .

[63]  John E. Beasley,et al.  OR-Library: Distributing Test Problems by Electronic Mail , 1990 .

[64]  Wouter Joosen,et al.  Towards performance isolation in multi-tenant SaaS applications , 2012, MW4NG '12.

[65]  Tao Yu,et al.  Efficient algorithms for Web services selection with end-to-end QoS constraints , 2007, TWEB.

[66]  Raffaela Mirandola,et al.  A Hybrid Approach for Multi-attribute QoS Optimisation in Component Based Software Systems , 2010, QoSA.