Cargando…

docker & HEP : containerization of applications for development, distribution and preservation

HEP software stacks are not shallow. Indeed, HEP experiments' software are usually many applications in one (reconstruction, simulation, analysis, ...) and thus require many libraries - developed in-house or by third parties - to be properly compiled and installed. Moreover, because of resource...

Descripción completa

Detalles Bibliográficos
Autores principales: Binet, Sebastien, COUTURIER, Ben
Lenguaje:eng
Publicado: 2015
Materias:
Acceso en línea:http://cds.cern.ch/record/2012075
_version_ 1780946569796780032
author Binet, Sebastien
COUTURIER, Ben
author_facet Binet, Sebastien
COUTURIER, Ben
author_sort Binet, Sebastien
collection CERN
description HEP software stacks are not shallow. Indeed, HEP experiments' software are usually many applications in one (reconstruction, simulation, analysis, ...) and thus require many libraries - developed in-house or by third parties - to be properly compiled and installed. Moreover, because of resource constraints, experiments' software is usually installed, tested, validated and deployed on a very narrow set of platforms, architectures, toolchains and operating systems. As a consequence, bootstrapping a software environment on a developer machine or deploying the software on production or user machines is usually perceived as tedious and iterative work, especially when one wants the native performances of bare metal. `Docker` containers provide an interesting avenue for packaging applications and development environment, relying on the Linux kernel capabilities for process isolation, adding "git"-like capabilities to the filesystem layer and providing (close to) native CPU, memory and I/O performances. This paper will introduce in more details the modus operandi of `Docker` containers and then focus on the `hepsw/docks` containers which provide containerized software stacks for -among others- `LHCb`. The paper will then discuss various strategies experimented with to package software (e.g. `CVMFS`, `RPM`s, from-source) and applied to optimize provisioning speed and disk usage, leveraging the caching system of `Docker`. Finally, the paper will report on benchmarks comparing workloads on native, VM and `Docker` containers setups.
id cern-2012075
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2015
record_format invenio
spelling cern-20120752019-09-30T06:29:59Zhttp://cds.cern.ch/record/2012075engBinet, SebastienCOUTURIER, Bendocker & HEP : containerization of applications for development, distribution and preservationTalkHEP software stacks are not shallow. Indeed, HEP experiments' software are usually many applications in one (reconstruction, simulation, analysis, ...) and thus require many libraries - developed in-house or by third parties - to be properly compiled and installed. Moreover, because of resource constraints, experiments' software is usually installed, tested, validated and deployed on a very narrow set of platforms, architectures, toolchains and operating systems. As a consequence, bootstrapping a software environment on a developer machine or deploying the software on production or user machines is usually perceived as tedious and iterative work, especially when one wants the native performances of bare metal. `Docker` containers provide an interesting avenue for packaging applications and development environment, relying on the Linux kernel capabilities for process isolation, adding "git"-like capabilities to the filesystem layer and providing (close to) native CPU, memory and I/O performances. This paper will introduce in more details the modus operandi of `Docker` containers and then focus on the `hepsw/docks` containers which provide containerized software stacks for -among others- `LHCb`. The paper will then discuss various strategies experimented with to package software (e.g. `CVMFS`, `RPM`s, from-source) and applied to optimize provisioning speed and disk usage, leveraging the caching system of `Docker`. Finally, the paper will report on benchmarks comparing workloads on native, VM and `Docker` containers setups.LHCb-TALK-2015-074oai:cds.cern.ch:20120752015
spellingShingle Talk
Binet, Sebastien
COUTURIER, Ben
docker & HEP : containerization of applications for development, distribution and preservation
title docker & HEP : containerization of applications for development, distribution and preservation
title_full docker & HEP : containerization of applications for development, distribution and preservation
title_fullStr docker & HEP : containerization of applications for development, distribution and preservation
title_full_unstemmed docker & HEP : containerization of applications for development, distribution and preservation
title_short docker & HEP : containerization of applications for development, distribution and preservation
title_sort docker & hep : containerization of applications for development, distribution and preservation
topic Talk
url http://cds.cern.ch/record/2012075
work_keys_str_mv AT binetsebastien dockerhepcontainerizationofapplicationsfordevelopmentdistributionandpreservation
AT couturierben dockerhepcontainerizationofapplicationsfordevelopmentdistributionandpreservation