A Model-Based System to Automate Cloud Resource Allocation and Optimization

  • Yu Sun
  • Jules White
  • Sean Eade
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8767)

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.

Keywords

Cloud Computing Resource Allocation Resource Optimization Model-Based System Domain-Specific Language 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Hayes, B.: Cloud computing. Communications of the ACM 51(7), 9–11 (2008)CrossRefGoogle Scholar
  2. 2.
    Amazon Web Services (2014), http://aws.amazon.com/
  3. 3.
    Rappa, M.: The utility business model and the future of computing services. IBM Systems Journal 43(1), 32–42 (2004)CrossRefGoogle Scholar
  4. 4.
    Amazon Elastic Computing Cloud (EC2) Pricing (2014), http://aws.amazon.com/ec2/pricing/
  5. 5.
    Menascé, D.: Load testing of web sites. IEEE Internet Computing 6(4), 70–74 (2002)CrossRefGoogle Scholar
  6. 6.
    Halili, E.H.: Apache JMeter: A practical beginner’s guide to automated testing and performance measurement for your websites. Packt Publishing Ltd. (2008)Google Scholar
  7. 7.
    Apache JMeter (2014), https://jmeter.apache.org/
  8. 8.
    Apache HTTP Server Benchmarking Tool (2014), http://httpd.apache.org/docs/2.2/programs/ab.html
  9. 9.
  10. 10.
    Wrk – Modern HTTP Benchmarking Tool (2014), https://github.com/wg/wrk
  11. 11.
    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)Google Scholar
  12. 12.
    AWS Cloud Formation (2014), http://aws.amazon.com/cloudformation/
  13. 13.
    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)CrossRefGoogle Scholar
  14. 14.
  15. 15.
    Amazon Simple Storage Service (Amazon S3) (2014), http://aws.amazon.com/s3/
  16. 16.
    Docker (2014), https://www.docker.io/
  17. 17.
    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)Google Scholar
  18. 18.
    Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd. (2013)Google Scholar
  19. 19.
    Custom Plugins for Apache JMeter (2014), http://jmeter-plugins.org/
  20. 20.
    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)Google Scholar
  21. 21.
    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)CrossRefGoogle Scholar
  22. 22.
    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)CrossRefGoogle Scholar
  23. 23.
    Amazon Elastic Load Balancing (2014), http://aws.amazon.com/elasticloadbalancing/
  24. 24.
    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)Google Scholar
  25. 25.
    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)Google Scholar
  26. 26.
    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)CrossRefGoogle Scholar
  27. 27.
    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)CrossRefGoogle Scholar
  28. 28.
    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)Google Scholar
  29. 29.
    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)CrossRefGoogle Scholar
  30. 30.
    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)Google Scholar
  31. 31.
    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)CrossRefGoogle Scholar
  32. 32.
    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)Google Scholar
  33. 33.
    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)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Yu Sun
    • 1
  • Jules White
    • 1
  • Sean Eade
    • 2
  1. 1.Vanderbilt UniversityNashvilleUSA
  2. 2.Siemens IndustryWendellUSA

Personalised recommendations