skip to main content
research-article

Modelling and Analysing Replica- and Fault-aware Management of Horizontally Scalable Applications

Authors Info & Claims
Published:25 July 2022Publication History
Skip Abstract Section

Abstract

Modern enterprise applications integrate multiple interdependent software components, whose management must be suitably coordinated. This must be done by taking into account all inter-component dependencies, the faults potentially affecting them, and the fact that each component can be horizontally scaled, i.e.,  that multiple instances of each component can be spawned or destroyed, depending on application needs. In this article, we introduce a novel solution for suitably modelling and analysing the replica- and fault-aware management of multi-component applications, based on topology graphs and management protocols. More precisely, we first introduce a compositional model of the management behaviour of the (possibly multiple) instances of the components forming an application, faults included. We then show how this model enables automating various useful analyses, from checking the validity of management plans to automatically determining management plans allowing the instance of an application to reach and maintain a desired target configuration.

REFERENCES

  1. [1] Bergmayr Alexander, Breitenbücher Uwe, Ferry Nicolas, Rossini Alessandro, Solberg Arnor, Wimmer Manuel, Kappel Gerti, and Leymann Frank. 2018. A systematic review of cloud modeling languages. ACM Comput. Surv. 51, 1 (2018). DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. [2] Betin-Can Aysu, Bultan Tevfik, Lindvall Mikael, Lux Benjamin, and Topp Stefan. 2007. Eliminating synchronization faults in air traffic control software via design for verification with concurrency controllers. Autom. Softw. Eng. 14 (07 2007), 129178. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. [3] Binz Tobias, Breitenbücher Uwe, Kopp Oliver, and Leymann Frank. 2014. TOSCA: Portable automated deployment and management of cloud applications. In Advanced Web Services. Springer, New York, NY, 527549. DOI:Google ScholarGoogle ScholarCross RefCross Ref
  4. [4] Binz Tobias, Fehling Christoph, Leymann Frank, Nowak Alexander, and Schumm David. 2012. Formalizing the cloud through enterprise topology graphs. In CLOUD’12. IEEE, 742749. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. [5] Breitenbücher Uwe, Binz Tobias, Képes Kálmán, Kopp Oliver, Leymann Frank, and Wettinger Johannes. 2014. Combining declarative and imperative cloud application provisioning based on TOSCA. In IC2E’14. IEEE, 8796. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] Brogi Antonio, Canciani Andrea, and Soldani Jacopo. 2018. Fault-aware management protocols for multi-component applications. J. Syst. Softw. 139 (2018), 189210. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. [7] Brogi Antonio, Canciani Andrea, and Soldani Jacopo. 2018. True concurrent management of multi-component applications. In ESOCC’18. Springer, Cham, 1732. DOI:Google ScholarGoogle ScholarCross RefCross Ref
  8. [8] Candea George, Brown Aaron, Fox Armando, and Patterson David. 2004. Recovery-oriented computing: Building multitier dependability. Computer 37 (12 2004), 6067. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. [9] Cosmo Roberto Di, Mauro Jacopo, Zacchiroli Stefano, and Zavattaro Gianluigi. 2014. Aeolus: A component model for the cloud. Inf. Comput. 239 (2014), 100121. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. [10] Durán Francisco and Salaün Gwen. 2016. Robust and reliable reconfiguration of cloud applications. J. Syst. Softw. 122 (2016), 524537. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. [11] Etchevers Xavier, Salaün Gwen, Boyer Fabienne, Coupaye Thierry, and Palma Noël De. 2017. Reliable self-deployment of distributed cloud applications. Softw.: Pract. Exper. 47, 1 (2017), 320. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Fehling Christoph, Leymann Frank, Retter Ralph, Schupeck Walter, and Arbitter Peter. 2014. Cloud Computing Patterns: Fundamentals to Design, Build, and Manage Cloud Applications. Springer-Verlag, Wien, Austria.Google ScholarGoogle ScholarCross RefCross Ref
  13. [13] Fischer Jeffrey, Majumdar Rupak, and Esmaeilsabzali Shahram. 2012. Engage: A deployment management system. SIGPLAN Not. 47, 6 (2012), 263274. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. [14] Friedrich G., Fugini M. G., Mussi E., Pernici B., and Tagni G.. 2010. Exception handling for repair in service-based processes. IEEE Trans. Softw. Eng. 36, 2 (Mar. 2010), 198215. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. [15] Johnsen Einar Broch, Owe Olaf, Munthe-Kaas Ellen, and Vain Juri. 2001. Incremental fault-tolerant design in an object-oriented setting. In APAQS’01. IEEE, 223230. DOI:Google ScholarGoogle ScholarCross RefCross Ref
  16. [16] Kratzke Nane and Quint Peter-Christian. 2017. Understanding cloud-native applications after 10 years of cloud computing: A systematic mapping study. J. Syst. Softw. 126 (2017), 116. DOI:Google ScholarGoogle ScholarCross RefCross Ref
  17. [17] OASIS. 2013. Topology and Orchestration Specification for Cloud Applications, Version 1.0. https://www.oasis-open.org/standard/tosca/.Google ScholarGoogle Scholar
  18. [18] Pahl Claus, Jamshidi Pooyan, and Zimmermann Olaf. 2018. Architectural principles for cloud software. ACM Trans. Internet Technol. 18, 2 (2018). DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] Soldani Jacopo, Tamburri Damian Andrew, and Heuvel Willem-Jan Van Den. 2018. The pains and gains of microservices: A systematic grey literature review. J. Syst. Softw. 146 (2018), 215232. DOI:Google ScholarGoogle ScholarCross RefCross Ref
  20. [20] Toffetti Giovanni, Brunner Sandro, Blöchlinger Martin, Dudouet Florian, and Edmonds Andrew. 2015. An architecture for self-managing microservices. In AIMC’15. ACM, 1924. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. [21] Vaquero Luis M., Rodero-Merino Luis, and Buyya Rajkumar. 2011. Dynamically scaling applications in the cloud. SIGCOMM Comput. Commun. Rev. 41, 1 (Jan. 2011), 4552. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Wang Qiang, Yan Lei, Bliudze Simon, and Mao Xiaoguang. 2015. Automatic fault localization for BIP. In SETTA’15(LNCS, Vol. 9409). Springer, Cham, 277283. DOI:Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. [23] Wilder Bill. 2012. Cloud Architecture Patterns. O’Reilly Media.Google ScholarGoogle Scholar
  24. [24] Wurster Michael, Breitenbücher Uwe, Brogi Antonio, Leymann Frank, and Soldani Jacopo. 2020. Cloud-native deploy-ability: An analysis of required features of deployment technologies to deploy arbitrary cloud-native applications. In CLOSER’20. SciTePress, Setúbal, Portugal, 171180. DOI:Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Modelling and Analysing Replica- and Fault-aware Management of Horizontally Scalable Applications

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM Transactions on Internet Technology
              ACM Transactions on Internet Technology  Volume 22, Issue 3
              August 2022
              631 pages
              ISSN:1533-5399
              EISSN:1557-6051
              DOI:10.1145/3498359
              • Editor:
              • Ling Liu
              Issue’s Table of Contents

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 25 July 2022
              • Online AM: 3 February 2022
              • Accepted: 1 January 2022
              • Revised: 1 May 2021
              • Received: 1 December 2020
              Published in toit Volume 22, Issue 3

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article
              • Refereed

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader

            Full Text

            View this article in Full Text.

            View Full Text

            HTML Format

            View this article in HTML Format .

            View HTML Format
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!