This project provides a framework to implement a serverless environments that supports containers, or, in other words, containers are deployed and executed with their resources managed following the serverless paradigm. To implement such environment, several policies of resource scaling are available including scaling the resources limits to fit them according to the usage, in real time.
The resources that can be scaled and managed with this frameworks are the CPU, memory, disk and network and the container engine supported is LXD and LXC.
The next plot shows how CPU is scaled according to the real usage for a cluster of containers running concurrent Big Data TeraSort executions. As it can be seen, the allocated CPU (blue line) follows close the usage pattern of the workloads executed on the container cluster (orange line).
On this serverless scenario, the allocated (and billed) CPU tend would ideally evolve to match that of the used one, thus having a serverless environment with the flexibility and support of the container virtualization technology.
Serverless Containers has also been used to create an environment where the energy of containers is continuously monitored with the option of setting an energy cap and have it enforced overall.
This scenario has been developed with the integration of Serverless Containers along with the BDWatchdog and PowerAPI frameworks. This work was carried out as a joint effort with the Spirals research group (University of Lille 1 and Inria).
For more information of this use case, you can visit this webpage.
Serverless Containers has been developed in the Computer Architecture Group at the University of A Coruña by Jonatan Enes (jonatan.enes@udc.es), Roberto R. Expósito and Juan Touriño.
For more information on this project you can visit its webpage.
For precise documentation, please check out this webpage.
The Serverless Containers framework has been published [1] in Future Generation Computer Systems (FGCS) and the full-lenght paper is publicly available (link)
[1] Jonatan Enes, Roberto R. Expósito, Juan Touriño. Real-time resource scaling platform for Big Data workloads on serverless environments. Future Generation Computer Systems, vol. 105, pages 361-379, April 2020