Abstract
Provisioning of multi-tier applications in cloud environments raises new challenges not addressed by prior work on provisioning single-tier applications, on dynamic balancing or on resource allocation in other types of distributed systems. Flexible and general automatic mechanisms are needed to determine how much virtual resources need to be allocated to each tier of the application minimizing resources consumption and meeting the service level agreement. Both the research community and the main cloud providers are proposing this kind of solutions but most of them are application-specific, provider-specific, centralized and focused only on batch applications. This paper presents an automatic provisioning solution for multi-tier applications called AutoMAP. The proposed mechanism is general (application and provider independent), it can be implemented with different architectures from centralized to distributed even being provided as a service, and it is able to deal with both batch and interactive applications allowing horizontal and vertical scaling (based on replication and on resizing respectively). A first prototype of AutoMAP has been implemented to demonstrate its efficiency with experimental results using a widely used benchmark, RUBiS, on a real cloud architecture.
Similar content being viewed by others
References
Armbrust M, Fox A, Griffith R, Joseph AD, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A, Stoica I, Zaharia M (2010) A view of cloud computing. Commun. ACM 53(4):50–58
Buyya R, Yeo C, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging it platforms: vision, hype and reality for delivering computing as the 5th utility. Future Gener. Comput. Syst. 25(6):599–616
Zhang Q, Cheng L, Boutaba R (2010) Cloud computing: state-of-the-art and research challenges. J. Internet Serv. Appl. 1(1):7–18
Buyya R, Broberg J, Goscinski AM (2011) Cloud Computing Principles and Paradigms. Wiley Publishing, New York
Fadel, A.S., Fayoumi, A.G.: Cloud resource provisioning and bursting approaches. In: Proceedings of the 2013 14th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, pp. 59–64 (2013)
Beltran, M., Guzman, A.: An automatic machine scaling solution for cloud systems. In: Proceedings of the 19th International Conference on High Performance Computing, pp. 1–10 (2012)
Chieu, T.C., Mohindra, A., Karve, A.A., Segal, A.: Dynamic scaling of web applications in a virtualized cloud computing environment. In: Proceedings of the 6th International Conference on e-Business Engineering, pp. 281–286 (2009)
Ferretti, S., Ghini, V., Panzieri, F., Pellegrini, M., Turrini, E.: QoS-aware clouds. In: Proceedings of the IEEE 3rd International Conference on Cloud Computing, pp. 321–328 (2010)
Jung, G., Hiltunen, M.A., Joshi, K.R., Schlichting, R.D., Pu, C.: Mistral: dynamically managing power, performance, and adaptation cost in cloud infrastructures. In: Proceedings of the 30th International Conference on Distributed Computing Systems, pp. 62–73 (2010)
Lee, Y.C., Wang, C., Zomaya, A.Y., Zhou, B.B.: Profit-driven service request scheduling in clouds. In: Proceedings of the 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing, pp. 15–24 (2010)
Mao, M., Humphrey, M.: Auto-scaling to minimize cost and meet application deadlines in cloud workflows. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis, pp. 1–12 (2011)
Calcavecchia N, Caprarescu B, Di Nitto E, Dubois D, Petcu D (2012) DEPAS: a decentralized probabilistic algorithm for auto-scaling. Computing 94(8–10):701–730
Yang, J., Liu, C., Shang, Y., Mao, Z., Chen, J.: Workload predicting-based automatic scaling in service clouds. In: Proceedings of the 2013 IEEE Sixth International Conference on Cloud Computing, pp. 810–815 (2013)
Zhao, H., Peng, C., Yu, Y., Zhou, Y., Wang, Z., Du, S.: Cost-aware automatic virtual machine scaling in fine granularity for cloud applications. In: Proceedings of the International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery, pp. 109–116 (2013)
Bacigalupo DA, van Hemert JI, Chen X, Usmani A, Chester AP, He L, Dillenberger DN, Wills GB, Gilbert L, Jarvis SA (2011) Managing dynamic enterprise and urgent workloads on clouds using layered queuing and historical performance models. Simul. Model. Pract. Theory 19(6):1479–1495
Urgaonkar B, Shenoy P, Chandra A, Goyal P, Wood T (2008) Agile dynamic provisioning of multi-tier internet applications. ACM Trans. Autonom. Adapt. Syst. 3(1):1:1–1:39
Marzolla M, Ferretti S, D’Angelo G (2012) Dynamic resource provisioning for cloud-based gaming infrastructures. Comput. Entertain. 10(3):4:1–4:20
Eager DL, Sevcik KC (1986) Bound hierarchies for multiple-class queuing networks. J. ACM 33(1):179–206
Reiser M, Lavenberg SS (1980) Mean-value analysis of closed multichain queuing networks. J. ACM 27(2):313–322
Casalicchio, E., Menascé, D.A., Aldhalaan, A.: Autonomic resource provisioning in cloud systems with availability goals. In: Proceedings of the 2013 ACM Cloud and Autonomic Computing Conference, pp. 1:1–1:10 (2013)
Sharma, U., Shenoy, P., Towsley, D.F.: Provisioning multi-tier cloud applications using statistical bounds on sojourn time. In: Proceedings of the 9th International Conference on Autonomic Computing, pp. 43–52 (2012)
Wei, Y., Xu, C.Z.: Dynamic balanced configuration of multi-resources in virtualized clusters. In: IEEE 21st International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, pp. 60–69 (2013)
Dutta, S., Gera, S., Verma, A., Viswanathan, B.: Smartscale: Automatic application scaling in enterprise clouds. In: Proceedings of the 2012 IEEE Fifth International Conference on Cloud Computing, pp. 221–228 (2012)
Han, R., Guo, L., Ghanem, M., Guo, Y.: Lightweight resource scaling for cloud applications. In: Proccedings of the IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 644–651 (2012)
Hossny, E., Salem, S., Khattab, S.: Towards automated user-centric cloud provisioning: Job provisioning and scheduling on heterogeneous virtual machines. In: Proccedings of the International conference on Informatics and Systems, pp. 18–24 (2012)
Bi, J., Zhu, Z., Tian, R., Wang, Q.: Dynamic provisioning modeling for virtualized multi-tier applications in cloud data center. In: Proceedings of the IEEE 3rd International Conference on Cloud Computing, pp. 370–377 (2010)
Xiong, P., Wang, Z., Malkowski, S., Wang, Q., Jayasinghe, D., Pu, C.: Economical and robust provisioning of n-tier cloud workloads: A multi-level control approach. In: Proceedings of the 31st International Conference on Distributed Computing Systems, pp. 571–580 (2011)
Calheiros, R.N., Ranjan, R., Buyya, R.: Virtual machine provisioning based on analytical performance and QoS in cloud computing environments. In: Proceedings of the 2011 International Conference on Parallel Processing, pp. 295–304 (2011)
AWS Auto Scaling. http://aws.amazon.com/autoscaling/
Fowler M (2003) Patterns of Enterprise Application Architecture. Addison-Wesley, Boston
Guerin R, Ahmadi H, Nagshineh M (1991) Equivalent capacity and its application to bandwidth allocation in high speed networks. IEEE J. Select. Areas Commun. 9(7):968–981
Rochwerger B, Breitgand D, Levy E, Galis A, Nagin K, Llorente IM, Montero R, Wolfsthal Y, Elmroth E, Cáceres J, Ben-Yehuda M, Emmerich W, Galán F (2009) The reservoir model and architecture for open federated cloud computing. IBM J. Res. Dev. 53(4):535–545
Malkowski, S., Jayasinghe, D., Hedwig, M., Park, J., Kanemasa, Y., Pu, C.: Empirical analysis of database server scalability using an n-tier benchmark with read-intensive workload. In: Proceedings of the ACM Symposium on Applied Computing, pp. 22–26 (2010)
Voorsluys, W., Broberg, J., Venugopal, S., Buyya, R.: Cost of virtual machine live migration in clouds: A performance evaluation. In: Proceedings of the 1st International Conference on Cloud Computing, pp. 254–265 (2009)
Beltrán, M., Carriedo, F.: Solving Queueing Network Models in Cloud Provisioning Contexts. In: Proceedings of the 8th International Conference on Performance Evaluation Methodologies and Tools, pp. 110–121 (2014)
Muntz, R., Wong, J.: Asymptotic properties of closed queueing network models. In: Proceedings of the 18th Annual Princeton Conference on Information Sciences and Systems, pp. 348–352 (1974)
Zahorjan J, Sevcik KC, Eager DL, Galler B (1982) Balanced job bound analysis of queueing networks. Commun. ACM 25(2):134–141
RUBiS: Rice University Bidding System. http://rubis.ow2.org/
TPC benchmark, version 1.8 (2002). Transaction Processing Performance Council (TPC)
Beltrán M, Guzmán A (2009) How to balance the load on heterogeneous clusters. Int. J. High Perform. Comput. Appl. 23(1):99–118
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. Practice Exp. 41(1):23–50
Acknowledgments
This research has been partially supported by research grants from the Government of Spain (Grant Ref. TIN2011-28151 and Grant Ref. TIN2014-57633). I thank Fernando Sevillano, Miguel Serna, Francisco Carriedo and the rest of the GAAP members for their comments on improving this work and the manuscript.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Beltrán, M. Automatic provisioning of multi-tier applications in cloud computing environments. J Supercomput 71, 2221–2250 (2015). https://doi.org/10.1007/s11227-015-1380-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-015-1380-5