Abstract
This paper introduces an open-source platform to support serverless computing for scientific data-processing workflow-based applications across the Cloud continuum (i.e. simultaneously involving both on-premises and public Cloud platforms to process data captured at the edge). This is achieved via dynamic resource provisioning for FaaS platforms compatible with scale-to-zero approaches that minimise resource usage and cost for dynamic workloads with different elasticity requirements. The platform combines the usage of dynamically deployed auto-scaled Kubernetes clusters on on-premises Clouds and automated Cloud bursting into AWS Lambda to achieve higher levels of elasticity. A use case in public health for smart cities is used to assess the platform, in charge of detecting people not wearing face masks from captured videos. Faces are blurred for enhanced anonymity in the on-premises Cloud and detection via Deep Learning models is performed in AWS Lambda for this data-driven containerised workflow. The results indicate that hybrid workflows across the Cloud continuum can efficiently perform local data processing for enhanced regulations compliance and perform Cloud bursting for increased levels of elasticity.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
Change history
19 October 2021
Springer Nature’s version of this paper was updated to add the funding information: Open Access funding provided thanks to the CRUE-CSIC agreement with Springer Nature.
References
Agache, A., Brooker, M., Iordache, A., Liguori, A., Neugebauer, R., Piwonka, P., Popa, D.M.: Firecracker: lightweight virtualization for serverless applications. In: 17th USENIX Symposium on Networked Systems Design and Implementation (NSDI 20), pp. 419–434. USENIX Association, Santa Clara, CA. https://www.usenix.org/conference/nsdi20/presentation/agache (2020)
Al Nuaimi, E., Al Neyadi, H., Mohamed, N., Al-Jaroodi, J.: Applications of big data to smart cities. Journal of Internet Services and Applications 6(1), 25 (2015). https://doi.org/10.1186/s13174-015-0041-5.
de Alfonso, C., Caballer, M., Calatrava, A., Moltó, G., Blanquer, I.: Multi-elastic Datacenters: auto-scaled virtual clusters on energy-aware physical infrastructures. Journal of Grid Computing 17(1), 191–204 (2019). https://doi.org/10.1007/s10723-018-9449-z.
Amazon Web Services: Amazon EC2. https://aws.amazon.com/ec2/
Amazon Web Services: AWS Batch — Easy and Efficient Batch Computing Capabilities. https://aws.amazon.com/batch/
Amazon Web Services: AWS Lambda. https://aws.amazon.com/lambda
Apache: OpenWhisk - Open Source Serverless Cloud Platform. https://openwhisk.apache.org/
Argo: Workflows & Pipelines. https://argoproj.github.io/projects/argo/
Baldini, I., Castro, P., Chang, K., Cheng, P., Fink, S., Ishakian, V., Mitchell, N., Muthusamy, V., Rabbah, R., Slominski, A., Suter, P.: Serverless computing: Current trends and open problems. In: Research Advances in Cloud Computing., pp 1–20. Springer, Singapore (2017). https://doi.org/10.1007/978-981-10-5026-8_1
Baldini, I., Cheng, P., Fink, S.J., Mitchell, N., Muthusamy, V., Rabbah, R., Suter, P., Tardieu, O.: The serverless trilemma: function composition for serverless computing. In: Proceedings of the 2017 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software - Onward! 2017, pp 89–103. ACM Press, New York (2017). https://doi.org/10.1145/3133850.3133855. http://dl.acm.org/citation.cfm?doid=3133850.3133855
Balouek-Thomert, D., Renart, E.G., Zamani, A.R., Simonet, A., Parashar, M.: Towards a computing continuum: Enabling edge-to-cloud integration for data-driven workflows. International Journal of High Performance Computing Applications 33(6), 1159–1174 (2019). https://doi.org/10.1177/1094342019877383.
Baresi, L., Mendonça, D.F., Garriga, M., Guinea, S., Quattrocchi, G.: A unified model for the mobile-edge-cloud continuum. ACM Transactions on Internet Technology 19(2), 1–21 (2019). https://doi.org/10.1145/3226644
Beckman, P., Dongarra, J., Ferrier, N., Fox, G., Moore, T., Reed, D., Beck, M.: Harnessing the computing continuum for programming our world. In: Fog Computing., pp 215–230. Wiley (2020). https://doi.org/10.1002/9781119551713.ch7
Bello, J.P., Mydlarz, C., Salamon, J.: Sound analysis in smart cities. In: Computational Analysis of Sound Scenes and Events, pp 373–397. Springer International Publishing, Cham (2018). https://doi.org/10.1007/978-3-319-63450-0_13
Brewer, E.A.: Kubernetes and the path to cloud native. In: Proceedings of the Sixth ACM Symposium on Cloud Computing - SoCC ’15, pp 167–167. Association for Computing Machinery (ACM), New York (2015). https://doi.org/10.1145/2806777.2809955. http://dl.acm.org/citation.cfm?doid=2806777.2809955
Caballer, M., Blanquer, I., Moltó, G., de Alfonso, C.: Dynamic management of virtual infrastructures. Journal of Grid Computing 13(1), 53–70 (2015). https://doi.org/10.1007/s10723-014-9296-5
Calatrava, A., Romero, E., Moltó, G., Caballer, M., Alonso, J.M.: Self-managed cost-efficient virtual elastic clusters on hybrid Cloud infrastructures. Future Generation Computer Systems 61, 13–25 (2016). https://doi.org/10.1016/j.future.2016.01.018
Camero, A., Alba, E.: Smart City and information technology: A review. Cities 93, 84–94 (2019). https://doi.org/10.1016/j.cities.2019.04.014
Casalboni, A.: AWS Lambda Power Tuning. https://github.com/alexcasalboni/aws-lambda-power-tuning
Chard, R., Babuji, Y., Li, Z., Skluzacek, T., Woodard, A., Blaiszik, B., Foster, I., Chard, K.: funcX: a federated function serving fabric for science. In: Proceedings of the 29th International symposium on high-performance parallel and distributed computing, pp 65–76. ACM, New York (2020). https://doi.org/10.1145/3369583.3392683
Chen, C.H., Favre, J., Kurillo, G., Andriacchi, T.P., Bajcsy, R., Chellappa, R.: Camera networks for healthcare, teleimmersion, and surveillance. Computer 47(5), 26–36 (2014). https://doi.org/10.1109/MC.2014.112. http://ieeexplore.ieee.org/document/6818909/
Chen, Q., Wang, W., Wu, F., De, S., Wang, R., Zhang, B., Huang, X.: A survey on an emerging area: deep learning for smart city data. IEEE Trans. Emerg. Topics Comput. Intell. 3(5), 392–410 (2019). https://doi.org/10.1109/TETCI.2019.2907718. https://ieeexplore.ieee.org/document/8704334/
Christidis, A., Davies, R., Moschoyiannis, S.: Serving machine learning workloads in resource constrained environments: A serverless deployment example. In: Proceedings - 2019 IEEE 12th Conference on Service-Oriented Computing and Applications, SOCA 2019, pp. 55–63. Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1109/SOCA.2019.00016 (2019)
Christidis, A., Moschoyiannis, S., Hsu, C. H., Davies, R.: Enabling Serverless Deployment of Large-Scale AI Workloads. IEEE Access 8, 70150–70161 (2020). https://doi.org/10.1109/ACCESS.2020.2985282
CNCF: Serverless Workflow: A specification for defining declarative workflow models that orchestrate Event-driven, Serverless applications. https://serverlessworkflow.io
Couturier, R.: Designing scientific applications on GPUs. Chapman and Hall/CRC. https://doi.org/10.1201/b16051. https://www.taylorfrancis.com/books/designing-scientific-applications-gpus-raphael-couturier/e/10.1201/b16051 (2013)
Docker: Enterprise Container Platform. https://www.docker.com/
Docker: Docker hub. https://hub.docker.com/ (2019)
Dutka, Ł., Wrzeszcz, M., Lichoń, T., Słota, R., Zemek, K., Trzepla, K., Opioła, Ł., Słota, R., Kitowski, J.: Onedata - A step forward towards globalization of data access for computing infrastructures, vol. 51, pp 2843–2847 (2015). https://doi.org/10.1016/j.procs.2015.05.445. https://www.sciencedirect.com/science/article/pii/S1877050915012533
Fouladi, S., Romero, F., Iter, D., Li, Q., Chatterjee, S., Kozyrakis, C., Zaharia, M., Winstein, K.: From laptop to Lambda: Outsourcing everyday jobs to thousands of transient functional containers. In: Proceedings of the 2019 USENIX Annual Technical Conference, USENIX ATC 2019, pp 475–488 (2019). https://dl.acm.org/doi/10.5555/3358807.3358848
Giménez-Alventosa, V., Moltó, G., Caballer, M.: A framework and a performance assessment for serverless MapReduce on AWS Lambda. Future Generation Computer Systems 97, 259–274 (2019). https://doi.org/10.1016/j.future.2019.02.057
Gimėnez-Alventosa, V., Moltȯ, G., Segrelles, J. D.: RUPER-LB: Load balancing embarrasingly parallel applications in unpredictable cloud environments. In: International Symposium on Cloud Computing and Services for High Performance Computing Systems (as part of the 18th International Conference on High Performance Computing & Simulation (HPCS 2020) (2020)
GRyCAP: minicon: minimization containers. https://github.com/grycap/minicon
Heath, M.T.: Scientific computing: : an introductory survey, revised second edition. Society for Industrial and Applied Mathematics, Philadelphia, PA. https://doi.org/10.1137/1.9781611975581. (2018)
Ishakian, V., Muthusamy, V., Slominski, A.: Serving deep learning models in a serverless platform. In: Proceedings - 2018 IEEE International Conference on Cloud Engineering, IC2E 2018, pp. 257–262. Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1109/IC2E.2018.00052 (2018)
Ivie, P., Thain, D.: Reproducibility in scientific computing. https://doi.org/10.1145/3186266 (2018)
Jonas, E., Pu, Q., Venkataraman, S., Stoica, I., Recht, B.: Occupy the cloud. In: Proceedings of the 2017 Symposium on Cloud Computing, pp 445–451. ACM, New York (2017). https://doi.org/10.1145/3127479.3128601. arXiv:1702.04024
Knative: Kubernetes-based platform to deploy and manage modern serverless workloads. https://knative.dev/
Linux Containers: LXC. https://linuxcontainers.org/lxc/introduction/
Malawski, M., Gajek, A., Zima, A., Balis, B., Figiela, K.: Serverless execution of scientific workflows: Experiments with HyperFlow, AWS Lambda and Google Cloud functions. Future Generation Computer Systems 110, 502–514 (2020). https://doi.org/10.1016/j.future.2017.10.029. https://linkinghub.elsevier.com/retrieve/pii/167739X1730047X
McCallister, E., Grance, T., Kent, K.: Guide to protecting the confidentiality of personally identifiable information (PII). Special Publication 800-122 Guide pp. 1–59. https://doi.org/10.5555/2206206 (2010)
Microsoft Azure: Azure Functions—Develop Faster With Serverless Compute. https://azure.microsoft.com/en-us/services/functions/
MinIO: High Performance, Kubernetes Native Object Storage. https://min.io/
Mirkhan, A.: BlurryFaces: A tool to blur faces or other regions in photos and videos. https://github.com/asmaamirkhan/BlurryFaces
Morris, K.: Infrastructure as code: managing servers in the cloud. O’Reilly Media, Inc. https://www.oreilly.com/library/view/infrastructure-as-code/9781491924334/ (2016)
OASIS: TOSCA simple profile in YAML version 1.3. https://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.3/TOSCA-Simple-Profile-YAML-v1.3.html
OpenFaaS: Serverless functions made simple. https://www.openfaas.com/
OpenStack: Open Source Cloud Computing Infrastructure. https://www.openstack.org
Pavlovic, M., Etsion, Y., Ramirez, A.: On the memory system requirements of future scientific applications: Four case-studies. In: Proceedings - 2011 IEEE International Symposium on Workload Characterization, IISWC - 2011, pp 159–170 (2011). https://doi.org/10.1109/IISWC.2011.6114176
Pérez, A., Moltó, G., Caballer, M., Calatrava, A.: Serverless computing for container-based architectures. Future Generation Computer Systems 83, 50–59 (2018). https://doi.org/10.1016/j.future.2018.01.022. http://linkinghub.elsevier.com/retrieve/pii/S0167739X17316485
Pérez, A., Moltó, G., Caballer, M., Calatrava, A.: Serverless computing for container-based architectures. Future Generation Computer Systems 83, 50–59 (2018). https://doi.org/10.1016/j.future.2018.01.022. http://www.sciencedirect.com/science/article/pii/S0167739X17316485
Pérez, A., Moltó, G., Caballer, M., Calatrava, A.: A programming model and middleware for high throughput serverless computing applications. In: Proceedings of the 34th ACM/SIGAPP symposium on applied Computing - SAC ’19, pp 106–113. ACM Press, New York (2019). https://doi.org/10.1145/3297280.3297292
Perez, A., Risco, S., Naranjo, D.M., Caballer, M., Molto, G.: On-premises serverless computing for event-driven data processing applications. In: 2019 IEEE 12th International Conference on Cloud Computing (CLOUD), pp. 414–421. Institute of Electrical and Electronics Engineers (IEEE). https://doi.org/10.1109/cloud.2019.00073. https://ieeexplore.ieee.org/document/8814513 (2019)
Purohit, A.: face-mask-detector: Real-Time Face mask detection using deep learning with Alert system. https://github.com/adityap27/face-mask-detector/
Reisslein, M., Rinner, B., Roy-Chowdhury, A.: Smart Camera Networks [Guest editors’ introduction]. Computer 47(5), 23–25 (2014). https://doi.org/10.1109/MC.2014.134
Risco, S., Moltó, G.: GPU-enabled serverless workflows for efficient multimedia processing. Applied Sciences 11(4), 1438 (2021). https://doi.org/10.3390/app11041438. https://www.mdpi.com/2076-3417/11/4/1438
Ristov, S., Pedratscher, S., Fahringer, T.: AFCL: An abstract function choreography language for serverless workflow specification. Future Generation Computer Systems 114, 368–382 (2021). https://doi.org/10.1016/j.future.2020.08.012. https://linkinghub.elsevier.com/retrieve/pii/S0167739X20302648
Sengupta, S.: faas-flow: Function Composition for OpenFaaS. https://github.com/s8sg/faas-flow
Sewak, M., Singh, S.: Winning in the era of serverless computing and function as a service. In: 2018 3rd International Conference for Convergence in Technology, I2CT 2018. Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1109/I2CT.2018.8529465 (2018)
Shields, M.: Control-versus data-driven workflows. In: Workflows for e-Science, pp 167–173. Springer , London (2007). https://link.springer.com/chapter/10.1007/978-1-84628-757-2_11
Spadini, T., Silva, D.L.d.O., Suyama, R.: Sound event recognition in a smart city surveillance context. arXiv:1910.12369 (2019)
Vecchiola, C., Pandey, S., Buyya, R.: High-performance cloud computing: A view of scientific applications. In: I-SPAN 2009 - The 10th International Symposium on Pervasive Systems, Algorithms, and Networks, pp 4–16 (2009). https://doi.org/10.1109/I-SPAN.2009.150
Acknowledgements
The authors would like to thank the European Union for the project “Artificial Intelligence in Secure PRIvacy-preserving computing coNTinuum” (AI-SPRINT), with code 101016577, funded under the H2020 Framework Programme and also the regional government of the Comunitat Valenciana (Spain) for the project IDIFEDER/2018/032 (High-Performance Algorithms for the Modeling, Simulation and early Detection of diseases in Personalized Medicine), co-funded by the European Union ERDF funds (European Regional Development Fund) of the Comunitat Valenciana 2014–2020.
Funding
Open Access funding provided thanks to the CRUE-CSIC agreement with Springer Nature.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Risco, S., Moltó, G., Naranjo, D.M. et al. Serverless Workflows for Containerised Applications in the Cloud Continuum. J Grid Computing 19, 30 (2021). https://doi.org/10.1007/s10723-021-09570-2
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10723-021-09570-2