Skip to main content
Log in

Freezing and defrosting cloud applications: automated saving and restoring of running applications

  • Special Issue Paper
  • Published:
SICS Software-Intensive Cyber-Physical Systems

Abstract

In recent years, several technologies were developed enabling the automated provisioning and decommissioning of cloud applications. To reduce costs, these applications can be terminated and restarted on demand. However, as an application is terminated, its current application state, i.e., all application specific data is deleted along with the running application instance. This application state may be holding all business-critical information, and, hence, must be saved before the application is terminated. One possibility to save application states is to create VM snapshots although this is not always possible or sufficient. Therefore, we introduce two approaches: (1) a concept to generically terminate applications and save their internal state, and (2) an approach to reinstate the application in the same state again. To evaluate their practical feasibility, we implemented a proof of concept in the OpenTOSCA ecosystem.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  1. Ahmad RW, Gani A, Hamid SHA, Shiraz M, Yousafzai A, Xia F (2015) A survey on virtual machine migration and server consolidation frameworks for cloud data centers. J Netw Comput Appl 52:11–25

    Article  Google Scholar 

  2. Amazon (2016) AWS CloudFormation. https://aws.amazon.com/de/cloudformation/. Accessed 17 July 2019

  3. Bergmayr A et al (2018) A systematic review of cloud modeling languages. ACM Comput Surv (CSUR) 51(1):22:1–22:38

    Article  Google Scholar 

  4. Binz T, Breitenbücher U, Haupt F, Kopp O, Leymann F, Nowak A, Wagner S (2013) OpenTOSCA—a runtime for TOSCA-based cloud applications. In: Proceedings of the 11th international conference on service-oriented computing (ICSOC 2013). Springer, pp 692–695

  5. Breitenbücher U (2016) Eine musterbasierte Methode zur Automatisierung des Anwendungsmanagements. Dissertation, University of Stuttgart

  6. Breitenbücher U, Binz T, Kopp O, Leymann F, Wettinger J (2013) Integrated cloud application provisioning: interconnecting service-centric and script-centric management technologies. In: CoopIS 2013. Springer, pp 130–148

  7. Breitenbücher U, Binz T, Képes K, Kopp O, Leymann F, Wettinger J (2014a) Combining declarative and imperative cloud application provisioning based on TOSCA. In: International conference on cloud engineering (IC2E 2014). IEEE, pp 87–96

  8. Breitenbücher U, Binz T, Kopp O, Leymann F (2014b) Vinothek—a self-service portal for TOSCA. In: Proceedings of the 6th Central-European workshop on services and their composition (ZEUS 2014), CEUR-WS.org, pp 69–72

  9. Breitenbücher U, Endres C, Képes K, Kopp O, Leymann F, Wagner S, Wettinger J, Zimmermann M (2016) The OpenTOSCA ecosystem—concepts & tools. In: European space project on smart systems, big data, future internet—towards serving the grand societal challenges—volume 1: EPS Rome 2016. SciTePress, pp 112–130

  10. Bruno R, Ferreira P (2016) Alma: Gc-assisted JVM live migration for java server applications. In: Proceedings of the 17th international middleware conference, New York, NY, USA, Middleware’16. ACM, pp 5:1–5:14

  11. Cao J, Simonin M, Cooperman G, Morin C (2015) Checkpointing as a service in heterogeneous cloud environments. In: 2015 15th IEEE/ACM international symposium on cluster, cloud and grid computing, pp 61–70

  12. Chandy KM, Lamport L (1985) Distributed snapshots: determining global states of distributed systems. ACM Trans Comput Syst 3(1):63–75

    Article  Google Scholar 

  13. Clark C, Fraser K, Hand S, Hansen JG, Jul E, Limpach C, Pratt I, Warfield A (2005) Live migration of virtual machines. In: Proceedings of the 2nd conference on symposium on networked systems design & implementation. USENIX Association, pp 273–286

  14. Egwutuoha IP, Levy D, Selic B, Chen S (2013) A survey of fault tolerance mechanisms and checkpoint/restart implementations for high performance computing systems. J Supercomput 65(3):1302–1326

    Article  Google Scholar 

  15. Endres C et al (2017) Declarative vs. imperative: two modeling patterns for the automated deployment of applications. In: PATTERNS 2017. Xpert Publishing Services, pp 22–27

  16. Fehling C, Leymann F, Retter R, Schupeck W, Arbitter P (2014) Cloud computing patterns: fundamentals to design, build, and manage cloud applications. Springer, Berlin

    Book  Google Scholar 

  17. Harzenetter L, Breitenbücher U, Falkenthal M, Guth J, Krieger C, Leymann F (2018) Pattern-based deployment models and their automatic execution. In: 11th IEEE/ACM international conference on utility and cloud computing UCC 2018, 17–20, December 2018, Switzerland. IEEE Computer Society, Zurich, pp 41–52

  18. Horii M, Kojima Y, Fukuda K (2018) Stateful process migration for edge computing applications. In: 2018 IEEE wireless communications and networking conference (WCNC). IEEE, pp 1–6

  19. Kalaiselvi S, Rajaraman V (2000) A survey of checkpointing algorithms for parallel and distributed computers. Sadhana 25(5):489–510

    Article  Google Scholar 

  20. Képes K, Breitenbücher U, Leymann F (2017) Integrating IoT devices based on automatically generated ScaleOut plans. In: 2017 IEEE 10th conference on service-oriented computing and applications, SOCA 2017, 22–25 November 2017, Japan. IEEE Computer Society, Kanazawa, pp 155–163

  21. Kopp O, Binz T, Breitenbücher U, Leymann F (2013) Winery—a modeling tool for TOSCA-based cloud applications. In: ICSOC 2013. Springer, pp 700–704

  22. Lagar-Cavilla HA, Whitney JA, Scannell AM, Patchin P, Rumble SM, de Lara E, Brudno M, Satyanarayanan M (2009) Snowflock: rapid virtual machine cloning for cloud computing. In: Proceedings of the 4th ACM European Conference on Computer Systems, EuroSys’09. ACM, pp 1–12

  23. Leymann F (2009) Cloud computing: the next revolution in IT. In: Proceedings of the 52th photogrammetric week. Wichmann Verlag, pp 3–12

  24. OASIS (2007) web services business process execution language (WS-BPEL) version 2.0

  25. OASIS (2013) Topology and orchestration specification for cloud applications (TOSCA) version 1.0

  26. OASIS (2015) TOSCA simple profile in YAML version 1.0

  27. Oppenheimer D, Ganapathi A, Patterson DA (2003) Why do internet services fail, and what can be done about it? In: USITS 2003. USENIX

  28. Saatkamp K, Breitenbücher U, Kopp O, Leymann F (2017) Topology splitting and matching for multi-cloud deployments. In: Proceedings of the 7th international conference on cloud computing and services science (CLOSER 2017). SciTePress, pp 247–258

  29. Tamburri DA, Van den Heuvel WJ, Lauwers C, Lipton P, Palma D, Rutkowski M (2019) TOSCA-based intent modelling: goal-modelling for infrastructure-as-code. SICS Softw Intensive Cyber Phys Syst 34(2):163–172

    Article  Google Scholar 

  30. The Linux Foundation (2018) Kubernetes. https://kubernetes.io/. Accessed 17 July 2019

  31. Turnbull J (2017) The Docker book. James Turnbull

  32. University of Stuttgart (2019a) OpenTOSCA container. https://github.com/OpenTSOCA/container/. Accessed 17 July 2019

  33. University of Stuttgart (2019b) Winery. https://github.com/OpenTSOCA/winery/. Accessed 17 July 2019

  34. Wurster M, Breitenbücher U, Falkenthal M, Krieger C, Leymann F, Saatkamp K, Soldani J (2019) The essential deployment metamodel: a systematic review of deployment automation technologies. Software-intensive cyber-physical systems (SICS)

Download references

Acknowledgements

This work was partially funded by the German Research Foundation (DFG) projects SustainLife (379522012) and DiStOPT (252975529).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Lukas Harzenetter.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Harzenetter, L., Breitenbücher, U., Képes, K. et al. Freezing and defrosting cloud applications: automated saving and restoring of running applications. SICS Softw.-Inensiv. Cyber-Phys. Syst. 35, 101–114 (2020). https://doi.org/10.1007/s00450-019-00415-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00450-019-00415-8

Keywords

Navigation