Speakers
Description
The past years have shown a revolution in the way scientific workloads are being executed thanks to the wide adoption of software containers. These containers run largely isolated from the host system, ensuring that the development and execution environments are the same everywhere. This enables full reproducibility of the workloads and therefore also the associated scientific analysis performed. However, as the research software used becomes increasingly complex, the software images grow easily to sizes of multiple gigabytes. Downloading the full image onto every single compute node on which the containers are executed becomes unpractical. In our presentation, we describe a novel way of distributing software images on the kubernetes platform, with which the container can start before the entire image contents become available locally (so-called "lazy pulling"). Each file required for the execution is fetched individually and subsequently cached on-demand using CVMFS, enabling the execution of very large software images on potentially thousands of Kubernetes nodes with very little overhead. We present several performance benchmarks making use of typical analysis workloads performed by the CMS Experiment at the CERN Large Hadron Collider.