ABSTRACT
Serverless computing is a rapidly growing paradigm in the cloud industry that envisions functions as the computational building blocks of an application. Instead of forcing the application developer to provision cloud resources for their application, the cloud provider provisions the required resources for each function "under the hood." In this work, we envision virtual serverless providers (VSPs) to aggregate serverless offerings. In doing so, VSPs allow developers (and businesses) to get rid of vendor lock-in problems and exploit pricing and performance variation across providers by adaptively utilizing the best provider at each time, forcing the providers to compete to offer cheaper and superior services. We discuss the merits of a VSP and show that serverless systems are well-suited to cross-provider aggregation, compared to virtual machines. We propose a VSP system architecture and implement an initial version. Using experimental evaluations, our preliminary results show that a VSP can improve maximum sustained throughput by 1.2x to 4.2x, reduces SLO violations by 98.8%, and improves the total invocations' costs by 54%.
Supplemental Material
- Alexandru Agache, Marc Brooker, Alexandra Iordache, Anthony Liguori, Rolf Neugebauer, Phil Piwonka, and Diana-Maria Popa. Firecracker: Lightweight virtualization for serverless applications. In 17th Usenix symposium on networked systems design and implementation (NSDI 20), pages 419--434, 2020.Google Scholar
- Istemi Ekin Akkus, Ruichuan Chen, Ivica Rimac, Manuel Stein, Klaus Satzke, Andre Beck, Paarijaat Aditya, and Volker Hilt. SAND: Towards high-performance serverless computing. In 2018 Usenix Annual Technical Conference (USENIX ATC 18), pages 923--935, 2018.Google ScholarDigital Library
- Amazon EventBridge. https://aws.amazon.com/eventbridge/. Last accessed on 9/28/2020.Google Scholar
- Austin Aske and Xinghui Zhao. Supporting multi-provider server-less computing on the edge. In Proceedings of the 47th International Conference on Parallel Processing Companion, pages 1--6, 2018.Google ScholarDigital Library
- AWS lambda pricing. https://aws.amazon.com/lambda/pricing/. Last accessed on 5/28/2021.Google Scholar
- Ataollah Fatahi Baarzi, Timothy Zhu, and Bhuvan Urgaonkar. BurScale: Using burstable instances for cost-effective autoscaling in the public cloud. In Proceedings of the ACM Symposium on Cloud Computing, pages 126--138, 2019.Google ScholarDigital Library
- Matt Baughman, Rohan Kumar, Ian Foster, and Kyle Chard. Expanding cost-aware function execution with multidimensional notions of cost. In Proceedings of the 1st Workshop on High Performance Serverless Computing, pages 9--12, 2020.Google ScholarDigital Library
- David Bermbach, Ahmet-Serdar Karakaya, and Simon Buchholz. Using application knowledge to reduce cold starts in FaaS services. SAC '20, page 134--143. ACM, 2020.Google ScholarDigital Library
- Alysson Bessani, Miguel Correia, Bruno Quaresma, Fernando André, and Paulo Sousa. DepSky: dependable and secure storage in a cloud-of-clouds. ACM TOS, 2013.Google Scholar
- James Cadden, Thomas Unger, Yara Awad, Han Dong, Orran Krieger, and Jonathan Appavoo. SEUSS: skip redundant paths to make server-less fast. In Proceedings of the Fifteenth European Conference on Computer Systems, pages 1--15, 2020.Google ScholarDigital Library
- Joao Carreira, Pedro Fonseca, Alexey Tumanov, Andrew Zhang, and Randy Katz. Cirrus: A serverless framework for end-to-end ML workflows. In Proceedings of the ACM Symposium on Cloud Computing, pages 13--24, 2019.Google ScholarDigital Library
- Joao Carreira, Sumer Kohli, Rodrigo Bruno, and Pedro Fonseca. From warm to hot starts: Leveraging runtimes for the serverless era. HotOS, 2021.Google ScholarDigital Library
- Dong Du, Tianyi Yu, Yubin Xia, Binyu Zang, Guanglu Yan, Chenggang Qin, Qixuan Wu, and Haibo Chen. Catalyzer: Sub-millisecond startup for serverless computing with initialization-less booting. In Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 467--481, 2020.Google ScholarDigital Library
- TriggerMesh EveryBridge. https://triggermesh.com/cloud_native_integration_platform/everybridge/. Last accessed on 9/28/2020.Google Scholar
- Fn project. https://fnproject.io/. Last accessed on 5/28/2021.Google Scholar
- Alexander Fuerst and Prateek Sharma. FaasCache: keeping serverless computing alive with greedy-dual caching. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, pages 386--400, 2021.Google ScholarDigital Library
- GCP cloud function pricing. https://cloud.google.com/functions/pricing. Last accessed on 5/28/2021.Google Scholar
- Samuel Ginzburg and Michael J Freedman. Serverless isn't server-less: Measuring and exploiting resource variability on cloud FaaS platforms. In Proceedings of the 2020 Sixth International Workshop on Serverless Computing, pages 43--48, 2020.Google ScholarDigital Library
- What is gloo edge. https://docs.solo.io/gloo-edge/latest/. Last accessed on 5/28/2021.Google Scholar
- Oliver Hohlfeld, Jan Rüth, Konrad Wolsing, and Torsten Zimmermann. Characterizing a meta-CDN. In International Conference on Passive and Active Network Measurement, pages 114--128. Springer, 2018.Google ScholarCross Ref
- Peng Huang, Chuanxiong Guo, Lidong Zhou, Jacob R. Lorch, Yingnong Dang, Murali Chintalapati, and Randolph Yao. Gray failure: The Achilles' heel of cloud-scale systems. In Proceedings of the 16th Workshop on Hot Topics in Operating Systems, HotOS '17, page 150--155. ACM, 2017.Google ScholarDigital Library
- Eric Jonas, Qifan Pu, Shivaram Venkataraman, Ion Stoica, and Benjamin Recht. Occupy the cloud: Distributed computing for the 99%. In Proceedings of the 2017 Symposium on Cloud Computing, pages 445--451, 2017.Google ScholarDigital Library
- Kiranbir Kaur, DR Sandeep Sharma, and DR Karanjeet Singh Kahlon. Interoperability and portability approaches in inter-connected clouds: A review. ACM Computing Surveys (CSUR), 50(4):1--40, 2017.Google Scholar
- Knative. https://knative.dev/. Last accessed on 5/28/2021.Google Scholar
- Knative Eventing. https://knative.dev/docs/eventing/. Last accessed on 5/28/2021.Google Scholar
- Rohan Kumar, Matt Baughman, Ryan Chard, Zhuozhao Li, Yadu Babuji, Ian Foster, and Kyle Chard. Coding the computing continuum: Fluid function execution in heterogeneous computing environments. In 2021 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pages 66--75. IEEE, 2021.Google ScholarCross Ref
- Wei-Tsung Lin, Chandra Krintz, and Rich Wolski. Tracing function dependencies across clouds. In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD), pages 253--260. IEEE, 2018.Google ScholarCross Ref
- Hongqiang Harry Liu, Ye Wang, Yang Richard Yang, Hao Wang, and Chen Tian. Optimizing cost and performance for content multihoming. In Proceedings of the ACM SIGCOMM 2012 conference on Applications, technologies, architectures, and protocols for computer communication, pages 371--382, 2012.Google ScholarDigital Library
- Wes Lloyd, Shruti Ramesh, Swetha Chinthalapati, Lan Ly, and Shrideep Pallickara. Serverless computing: An investigation of factors influencing microservice performance. IEEE IC2E, 2018.Google Scholar
- Lena Mashayekhy, Mahyar Movahed Nejad, and Daniel Grosu. Cloud federations in the sky: Formation game and mechanism. IEEE Transactions on Cloud Computing, 3(1):14--27, 2014.Google ScholarCross Ref
- Garrett McGrath and Paul R Brenner. Serverless computing: Design, implementation, and performance. In 2017 IEEE 37th International Conference on Distributed Computing Systems Workshops (ICDCSW), pages 405--410. IEEE, 2017.Google ScholarCross Ref
- Anup Mohan, Harshad Sane, Kshitij Doshi, Saikrishna Edupuganti, Naren Nayak, and Vadim Sukhomlinov. Agile cold starts for scalable serverless. In 11th {USENIX} Workshop on Hot Topics in Cloud Computing (HotCloud 19), 2019.Google ScholarDigital Library
- Matthew K Mukerjee, Ilker Nadi Bozkurt, Bruce Maggs, Srinivasan Seshan, and Hui Zhang. The impact of brokers on the future of content delivery. In proceedings of the 15th ACM Workshop on Hot Topics in Networks, pages 127--133, 2016.Google ScholarDigital Library
- Matthew K Mukerjee, Ilker Nadi Bozkurt, Devdeep Ray, Bruce M Maggs, Srinivasan Seshan, and Hui Zhang. Redesigning CDN-broker interactions for improved content delivery. In Proceedings of the 13th International Conference on emerging Networking EXperiments and Technologies, pages 68--80, 2017.Google ScholarDigital Library
- Djob Mvondo, Mathieu Bacou, Kevin Nguetchouang, Lucien Ngale, Stéphane Pouget, Josiane Kouam, Renaud Lachaize, Jinho Hwang, Tim Wood, Daniel Hagimont, Noël De Palma, Bernabé Batchakui, and Alain Tchana. OFC: an opportunistic caching system for FaaS platforms. In Proceedings of the Sixteenth European Conference on Computer Systems, pages 228--244. ACM, 2021.Google ScholarDigital Library
- Nimbella. https://nimbella.com/platform. Last accessed on 5/28/2021.Google Scholar
- Hojin Park, Gregory R Ganger, and George Amvrosiadis. More IOPS for less: Exploiting burstable storage in public clouds. In 12th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 20), 2020.Google Scholar
- Haoran Qiu, Subho S. Banerjee, Saurabh Jha, Zbigniew T. Kalbarczyk, and Ravishankar K. Iyer. FIRM: An intelligent fine-grained resource management framework for slo-oriented microservices. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20), pages 805--825. USENIX Association, 2020.Google Scholar
- Benny Rochwerger, David Breitgand, Eliezer Levy, Alex Galis, Kenneth Nagin, Ignacio Martín Llorente, Rubén Montero, Yaron Wolfsthal, Erik Elmroth, Juan Caceres, et al. The reservoir model and architecture for open federated cloud computing. IBM Journal of Research and Development, 53(4):4--1, 2009.Google ScholarDigital Library
- Francisco Romero, Gohar Irfan Chaudhry, Íñigo Goiri, Pragna Gopa, Paul Batum, Neeraja J Yadwadkar, Rodrigo Fonseca, Christos Kozyrakis, and Ricardo Bianchini. Faa$T: A transparent auto-scaling cache for serverless applications. In Proceedings of the ACM Symposium on Cloud Computing, SoCC '21. ACM, 2021.Google ScholarDigital Library
- Josep Sampé, Pedro Garcia-Lopez, Marc Sánchez-Artigas, Gil Vernik, Pol Roca-Llaberia, and Aitor Arjona. Toward multicloud access transparency in serverless computing. IEEE Software, 38(1):68--74, 2020.Google ScholarDigital Library
- The Serverless framework. https://serverless.com. Last accessed on 5/28/2021.Google Scholar
- Mohammad Shahrad, Jonathan Balkind, and David Wentzlaff. Architectural implications of function-as-a-service computing. In Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture, pages 1063--1075, 2019.Google ScholarDigital Library
- Mohammad Shahrad, Rodrigo Fonseca, Íñigo Goiri, Gohar Chaudhry, Paul Batum, Jason Cooke, Eduardo Laureano, Colby Tresness, Mark Russinovich, and Ricardo Bianchini. Serverless in the wild: Characterizing and optimizing the serverless workload at a large cloud provider. In 2020 USENIX Annual Technical Conference (USENIX ATC 20), pages 205--218, 2020.Google Scholar
- Josef Spillner. Practical tooling for serverless computing. In Proceedings of the 10th International Conference on Utility and Cloud Computing, pages 185--186, 2017.Google ScholarDigital Library
- Ion Stoica and Scott Shenker. From cloud computing to sky computing. In Proceedings of the Workshop on Hot Topics in Operating Systems, pages 26--32, 2021.Google ScholarDigital Library
- Yang Tang and Junfeng Yang. Lambdata: Optimizing serverless computing by making data intents explicit. In 2020 IEEE 13th International Conference on Cloud Computing (CLOUD), pages 294--303. IEEE, 2020.Google ScholarCross Ref
- Ali Tariq, Austin Pahl, Sharat Nimmagadda, Eric Rozner, and Siddharth Lanka. Sequoia: Enabling quality-of-service in serverless computing. In Proceedings of the 11th ACM Symposium on Cloud Computing, SoCC '20, page 311--327, 2020.Google ScholarDigital Library
- Jörg Thalheim, Pramod Bhatotia, Pedro Fonseca, and Baris Kasikci. Cntr: Lightweight OS containers. In 2018 USENIX Annual Technical Conference (USENIX ATC 18), pages 199--212, 2018.Google Scholar
- Adbys Vasconcelos, Lucas Vieira, Italo Batista, Rodolfo Silva, and Francisco Brasileiro. DistributedFaaS: Execution of containerized serverless applications in multi-cloud infrastructures, 2019.Google Scholar
- Liang Wang, Mengyuan Li, Yinqian Zhang, Thomas Ristenpart, and Michael Swift. Peeking behind the curtains of serverless platforms. In 2018 USENIX Annual Technical Conference (USENIX ATC 18), pages 133--146, 2018.Google ScholarDigital Library
- Zhe Wu, Michael Butkiewicz, Dorian Perkins, Ethan Katz-Bassett, and Harsha V Madhyastha. SPANStore: Cost-effective geo-replicated storage spanning multiple cloud services. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles, pages 292--308, 2013.Google ScholarDigital Library
- Tianyi Yu, Qingyuan Liu, Dong Du, Yubin Xia, Binyu Zang, Ziqian Lu, Pingchao Yang, Chenggang Qin, and Haibo Chen. Characterizing serverless platforms with ServerlessBench. In Proceedings of the ACM Symposium on Cloud Computing, SoCC '20. ACM, 2020.Google ScholarDigital Library
- Tian Zhang, Dong Xie, Feifei Li, and Ryan Stutsman. Narrowing the gap between serverless and its state with storage functions. In Proceedings of the ACM Symposium on Cloud Computing, pages 1--12, 2019.Google ScholarDigital Library
- Yang Zhang, Arnob Ghosh, and Vaneet Aggarwal. Optimized portfolio contracts for bidding the cloud. IEEE Transactions on Services Computing, 2018.Google Scholar
- Liang Zheng, Carlee Joe-Wong, Christopher G Brinton, Chee Wei Tan, Sangtae Ha, and Mung Chiang. On the viability of a cloud virtual service provider. ACM SIGMETRICS Performance Evaluation Review, 44(1):235--248, 2016.Google ScholarDigital Library
Index Terms
- On Merits and Viability of Multi-Cloud Serverless
Recommendations
Next generation cloud computing
The landscape of cloud computing has significantly changed over the last decade. Not only have more providers and service offerings crowded the space, but also cloud infrastructure that was traditionally limited to single provider data centers is now ...
Towards an SLA-based service allocation in multi-cloud environments
CCGRID '14: Proceedings of the 14th IEEE/ACM International Symposium on Cluster, Cloud, and Grid ComputingCloud computing popularity is growing rapidly and consequently the number of companies offering their services in the form of Software-as-a-Service (SaaS) or Infrastructure-as-a-Service (IaaS) is increasing. The diversity and usage benefits of the IaaS ...
Portable Autoscaler for Managing Multi-cloud Elasticity
CUBE '13: Proceedings of the 2013 International Conference on Cloud & Ubiquitous Computing & Emerging TechnologiesAbility to scale resources up or down dynamically as per changes in workload conditions is one of the key features of clouds. We present here a framework for elastic scaling of cloud resources that is portable across clouds from a wide range of private ...
Comments