Abstract
Cloud computing offers a flexible approach to elastically allocate computing resources for web applications without significant upfront hardware acquisition costs. Although a diverse collection of cloud resources is available, choosing the most optimized and cost-effective set of cloud resources to meet the QoS requirements is not a straightforward task. Manual load testing, monitoring of resource utilization, followed by bottleneck analysis is time consuming and complex due to limitations of the abstractions of load testing tools, challenges characterizing resource utilization, significant manual test orchestration effort, and complexity of selecting resource configurations to test. This paper introduces a model-based approach to simplify, optimize, and automate cloud resource allocation decisions to meet QoS goals for web applications. Given a high-level application description and QoS requirements, the model-based approach automatically tests the application under a variety of load and resources to derive the most cost-effective resource configuration to meet the QoS goals.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Hayes, B.: Cloud computing. Communications of the ACM 51(7), 9–11 (2008)
Amazon Web Services (2014), http://aws.amazon.com/
Rappa, M.: The utility business model and the future of computing services. IBM Systems Journal 43(1), 32–42 (2004)
Amazon Elastic Computing Cloud (EC2) Pricing (2014), http://aws.amazon.com/ec2/pricing/
Menascé, D.: Load testing of web sites. IEEE Internet Computing 6(4), 70–74 (2002)
Halili, E.H.: Apache JMeter: A practical beginner’s guide to automated testing and performance measurement for your websites. Packt Publishing Ltd. (2008)
Apache JMeter (2014), https://jmeter.apache.org/
Apache HTTP Server Benchmarking Tool (2014), http://httpd.apache.org/docs/2.2/programs/ab.html
HP LoadRunner (2014), http://www8.hp.com/us/en/software-solutions/loadrunner-load-testing/
Wrk – Modern HTTP Benchmarking Tool (2014), https://github.com/wg/wrk
Bacigalupo, D.A., Jarvis, S.A., He, L., Nudd, G.R.: An investigation into the application of different performance prediction techniques to e-commerce applications. In: Proceedings of 18th International Parallel and Distributed Processing Symposium, pp. 26–30 (2004)
AWS Cloud Formation (2014), http://aws.amazon.com/cloudformation/
Bae, H., Golparvar-Fard, M., White, J.: High-precision vision-based mobile augmented reality system for context-aware architectural, engineering, construction and facility management (AEC/FM) applications. Visualization in Engineering 1(1), 1–13 (2013)
PAR Works MARS (2014), https://play.google.com/store/apps/details?id=com.parworks.mars
Amazon Simple Storage Service (Amazon S3) (2014), http://aws.amazon.com/s3/
Docker (2014), https://www.docker.io/
Eysholdt, M., Behrens, H.: Xtext: implement your language faster than the quick and dirty way. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion, pp. 307–309 (2010)
Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd. (2013)
Custom Plugins for Apache JMeter (2014), http://jmeter-plugins.org/
Lin, W.Y., Lin, G.Y., Wei, H.Y.: Dynamic auction mechanism for cloud resource allocation. In: Proceedings of 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing (CCGrid), pp. 591–592 (2010)
Wei, G., Vasilakos, A.V., Zheng, Y., Xiong, N.: A game-theoretic method of fair resource allocation for cloud computing services. The Journal of Supercomputing 54(2), 252–269 (2010)
Warneke, D., Kao, O.: Exploiting dynamic resource allocation for efficient parallel data processing in the cloud. IEEE Transactions on Parallel and Distributed Systems 22(6), 985–997 (2011)
Amazon Elastic Load Balancing (2014), http://aws.amazon.com/elasticloadbalancing/
Zhu, L., Liu, Y., Bui, N.B., Gorton, I.: Revel8or: Model driven capacity planning tool suite. In: Proceedings of 29th International Conference on Software Engineering (ICSE), pp. 797–800 (2007)
Draheim, D., Grundy, J., Hosking, J., Lutteroth, C., Weber, G.: Realistic load testing of web applications. In: Proceedings of the 10th European Conference on Software Maintenance and Reengineering, pp. 57–70 (2006)
Wang, X., Zhou, B., Li, W.: Model-based load testing of web applications. Journal of the Chinese Institute of Engineers 36(1), 74–86 (2013)
Wei, G., Vasilakos, A.V., Zheng, Y., Xiong, N.: A game-theoretic method of fair resource allocation for cloud computing services. The Journal of Supercomputing 54(2), 252–269 (2010)
Li, J., Chinneck, J., Woodside, M., Litoiu, M., Iszlai, G.: Performance model driven QoS guarantees and optimization in clouds. In: ICSE Workshop on Software Engineering Challenges of Cloud Computing, pp. 15–22 (2009)
Chaisiri, S., Lee, B.S., Niyato, D.: Optimization of resource provisioning cost in cloud computing. IEEE Transactions on Services Computing 5(2), 164–177 (2012)
Frey, S., Fittkau, F., Hasselbring, W.: Search-based genetic optimization for deployment and reconfiguration of software in the cloud. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 512–521. IEEE Press, Piscataway (2013)
Binz, T., Breitenbücher, U., Kopp, O., Leymann, F.: TOSCA: Portable automated deployment and management of cloud applications. In: Advanced Web Services, pp. 527–549. Springer, New York (2014)
Ferry, N., Rossini, A., Chauvel, F., Morin, B., Solberg, A.: Towards model-driven provisioning, deployment, monitoring, and adaptation of multi-cloud systems. In: CLOUD 2013: IEEE 6th International Conference on Cloud Computing, pp. 887–894 (2013)
Catan, M., et al.: Aeolus: Mastering the Complexity of Cloud Application Deployment. In: Lau, K.-K., Lamersdorf, W., Pimentel, E. (eds.) ESOCC 2013. LNCS, vol. 8135, pp. 1–3. Springer, Heidelberg (2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Sun, Y., White, J., Eade, S. (2014). A Model-Based System to Automate Cloud Resource Allocation and Optimization. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds) Model-Driven Engineering Languages and Systems. MODELS 2014. Lecture Notes in Computer Science, vol 8767. Springer, Cham. https://doi.org/10.1007/978-3-319-11653-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-319-11653-2_2
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11652-5
Online ISBN: 978-3-319-11653-2
eBook Packages: Computer ScienceComputer Science (R0)