1. Storage-Saving Scheduling Policies for Clusters Running Containers
- Author
-
Luca Petrucci, Ludovico Funari, and Andrea Detti
- Subjects
File system ,Settore ING-INF/03 ,Computer Networks and Communications ,business.industry ,Computer science ,Overhead (engineering) ,Cloud computing ,computer.software_genre ,Virtualization ,Computer Science Applications ,Scheduling (computing) ,Resource (project management) ,Hardware and Architecture ,Server ,Container (abstract data type) ,business ,computer ,Software ,Information Systems ,Computer network - Abstract
Container technology plays an important role in the virtualization landscape today. A container uses its own file system consisting of a stack of layers, which are stored on the execution server's disk. Containers running on the same server share the layers they have in common, and this sharing results in valuable savings in server storage space. Many containers can run on a single server, but when their resource demands grow enough, they are distributed across a cluster of nodes/servers by orchestration systems, such as Kubernetes. In this work, we found that for the same amount of containers to run, the storage required is higher for clusters consisting of a larger number of nodes. The severity of this storage overhead depends on the scheduling policy used to select the nodes that run the containers. By comparing different storage-saving scheduling policies that differ from each other in the depth of storage knowledge they leverage to make decisions, our analysis reveals that only deep, layer-level knowledge can effectively counter the growth in storage demand as the cluster size increases. Policies with coarser-grained knowledge achieve limited benefit because they achieve performance that is nearly equal to that of a random, zero-knowledge policy.
- Published
- 2023