English

Supporting Multi-Cloud in Serverless Computing

Distributed, Parallel, and Cluster Computing 2023-03-29 v4

Abstract

Serverless computing is a widely adopted cloud execution model composed of Function-as-a-Service (FaaS) and Backend-as-a-Service (BaaS) offerings. The increased level of abstraction makes vendor lock-in inherent to serverless computing, raising more concerns than previous cloud paradigms. Multi-cloud serverless is a promising emerging approach against vendor lock-in, yet multiple challenges must be overcome to tap its potential. First, we need to be aware of both the performance and cost of each FaaS provider. Second, a multi-cloud architecture must be proposed before deploying a multi-cloud workflow. Domain-specific serverless offerings must then be integrated into the multi-cloud architecture to improve performance or save costs. Moreover, dealing with serverless offerings from multiple providers is challenging. Finally, we require workload portability support for serverless multi-cloud. In this paper, we present a multi-cloud library for cross-serverless offerings. We develop the End Analysis System (EAS) to support comparison among public FaaS providers in terms of performance and cost. Moreover, we design proof-of-concept multi-cloud architectures with domain-specific serverless offerings to alleviate problems such as data gravity. Finally, we deploy workloads on these architectures to evaluate several public FaaS offerings.

Keywords

Cite

@article{arxiv.2209.09367,
  title  = {Supporting Multi-Cloud in Serverless Computing},
  author = {Haidong Zhao and Zakaria Benomar and Tobias Pfandzelter and Nikolaos Georgantas},
  journal= {arXiv preprint arXiv:2209.09367},
  year   = {2023}
}

Comments

Accepted for the 15th IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC'22 Companion)