Facing the Unplanned Migration of Serverless Applications: A Study on Portability Problems, Solutions, and Dead Ends

Serverless computing focuses on developing cloud applications that comprise components fully managed by providers. Function-as-a-Service (FaaS) service model is often associated with the term serverless as it allows developing entire applications by composing provider-managed, event-driven code snippets. However, such reduced control over the infrastructure and tight-coupling with provider's services amplify the various lock-in problems. In this work, we explore the challenges of migrating serverless, FaaS-based applications across cloud providers. To achieve this, we conduct an experiment in which we implement four prevalent yet intentionally simple serverless use cases and manually migrate them across three popular commercial cloud providers. The results show that even when migrating simple use cases, developers encounter multiple aspects of a lock-in problem. Moreover, we present a categorization of the problems and discuss the feasibility of possible solutions.

[1]  Frank Leymann,et al.  How to adapt applications for the Cloud environment , 2012, Computing.

[2]  Gerti Kappel,et al.  A Systematic Review of Cloud Modeling Languages , 2018, ACM Comput. Surv..

[3]  Vatche Ishakian,et al.  The rise of serverless computing , 2019, Commun. ACM.

[4]  Olivier Terzo,et al.  Cloud Computing with e-Science Applications , 2015 .

[5]  Frank Leymann,et al.  CMotion: A framework for migration of applications into and between clouds , 2011, 2011 IEEE International Conference on Service-Oriented Computing and Applications (SOCA).

[6]  Euripides G. M. Petrakis,et al.  A Survey on Approaches for Interoperability and Portability of Cloud Computing Services , 2014, CLOSER.

[7]  Perry Cheng,et al.  Serverless Computing: Current Trends and Open Problems , 2017, Research Advances in Cloud Computing.

[8]  Frank Leymann,et al.  Supporting the Migration of Applications to the Cloud through a Decision Support System , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[9]  Dana Petcu Portability and Interoperability between Clouds: Challenges and Case Study - (Invited Paper) , 2011, ServiceWave.

[10]  Perry Cheng,et al.  The serverless trilemma: function composition for serverless computing , 2017, Onward!.

[11]  Joseph M. Hellerstein,et al.  Serverless Computing: One Step Forward, Two Steps Back , 2018, CIDR.

[12]  Reda Bendraou,et al.  Towards a solution avoiding Vendor Lock-in to enable Migration Between Cloud Platforms , 2013, MDHPCL@MoDELS.

[13]  Geoffrey C. Fox,et al.  Status of Serverless Computing and Function-as-a-Service(FaaS) in Industry and Research , 2017, ArXiv.

[14]  Frank Leymann,et al.  CloudDSF - The Cloud Decision Support Framework for Application Migration , 2014, ESOCC.

[15]  Carlos Canal,et al.  Identifying adaptation needs to avoid the vendor lock-in effect in the deployment of cloud SBAs , 2012, WAS4FI-Mashups '12.

[16]  Radu Calinescu,et al.  A Systematic Review of Cloud Lock-In Solutions , 2013, 2013 IEEE 5th International Conference on Cloud Computing Technology and Science.

[17]  S. Greenstein Lock-in and the Costs of Switching Mainframe Computer Vendors: What Do Buyers See? , 1991 .

[18]  Mark von Rosing,et al.  Business Process Model and Notation - BPMN , 2015, The Complete Business Process Handbook, Vol. I.

[19]  Karolina Vukojevic-Haupt,et al.  Migrating e-Science Applications to the Cloud: Methodology and Evaluation , 2017 .

[20]  P. Mell,et al.  SP 800-145. The NIST Definition of Cloud Computing , 2011 .

[21]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[22]  Schahram Dustdar,et al.  Winds of Change: From Vendor Lock-In to the Meta Cloud , 2013, IEEE Internet Computing.

[23]  Marc Sánchez Artigas,et al.  Comparison of FaaS Orchestration Systems , 2018, 2018 IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion).

[24]  Feng Tian,et al.  Critical review of vendor lock-in and its impact on adoption of cloud computing , 2014, International Conference on Information Society (i-Society 2014).