Cargando…

Optimizing Provisioning of LCG Software Stacks with Kubernetes

The building, testing and deployment of coherent large software stacks is very challenging, in particular when they consist of the diverse set of packages required by the LHC*** experiments, the CERN Beams department and data analysis services such as SWAN. These software stacks comprise a large num...

Descripción completa

Detalles Bibliográficos
Autores principales: Bachmann, Richard, Ganis, Gerardo, Konstantinov, Dmitri, Razumov, Ivan, Heinz, Johannes Martin
Lenguaje:eng
Publicado: 2020
Materias:
Acceso en línea:https://dx.doi.org/10.1051/epjconf/202024505030
http://cds.cern.ch/record/2752842
_version_ 1780969330604769280
author Bachmann, Richard
Ganis, Gerardo
Konstantinov, Dmitri
Razumov, Ivan
Heinz, Johannes Martin
author_facet Bachmann, Richard
Ganis, Gerardo
Konstantinov, Dmitri
Razumov, Ivan
Heinz, Johannes Martin
author_sort Bachmann, Richard
collection CERN
description The building, testing and deployment of coherent large software stacks is very challenging, in particular when they consist of the diverse set of packages required by the LHC*** experiments, the CERN Beams department and data analysis services such as SWAN. These software stacks comprise a large number of packages (Monte Carlo generators, machine learning tools, Python modules, HEP**** specific software), all available for several compilers, operating systems and hardware architectures. Along with several releases per year, development builds are provided each night to allow for quick updates and testing of development versions of packages such as ROOT, Geant4, etc. It also provides the possibility to test new compilers and new configurations.Timely provisioning of these development and release stacks requires a large amount of computing resources. A dedicated infrastructure, based on the Jenkins continuous integration system, has been developed to this purpose. Resources are taken from the CERN OpenStack cloud; Puppet configurations are used to control the environment on virtual machines, which are either used directly as resource nodes or as hosts for Docker containers. Containers are used more and more to optimize the usage of our resources and ensure a consistent build environment while providing quick access to new Linux flavours and specific configurations.In order to add build resources on demand more easily, we investigated the integration of a CERN provided Kubernetes cluster into the existing infrastructure. In this contribution we present the status of this prototype, focusing on the new challenges faced, such as the integration of these ephemeral build nodes into CERN’s IT infrastructure, job priority control, and debugging of job failures.
id oai-inspirehep.net-1832168
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2020
record_format invenio
spelling oai-inspirehep.net-18321682021-03-01T20:16:22Zdoi:10.1051/epjconf/202024505030http://cds.cern.ch/record/2752842engBachmann, RichardGanis, GerardoKonstantinov, DmitriRazumov, IvanHeinz, Johannes MartinOptimizing Provisioning of LCG Software Stacks with KubernetesComputing and ComputersThe building, testing and deployment of coherent large software stacks is very challenging, in particular when they consist of the diverse set of packages required by the LHC*** experiments, the CERN Beams department and data analysis services such as SWAN. These software stacks comprise a large number of packages (Monte Carlo generators, machine learning tools, Python modules, HEP**** specific software), all available for several compilers, operating systems and hardware architectures. Along with several releases per year, development builds are provided each night to allow for quick updates and testing of development versions of packages such as ROOT, Geant4, etc. It also provides the possibility to test new compilers and new configurations.Timely provisioning of these development and release stacks requires a large amount of computing resources. A dedicated infrastructure, based on the Jenkins continuous integration system, has been developed to this purpose. Resources are taken from the CERN OpenStack cloud; Puppet configurations are used to control the environment on virtual machines, which are either used directly as resource nodes or as hosts for Docker containers. Containers are used more and more to optimize the usage of our resources and ensure a consistent build environment while providing quick access to new Linux flavours and specific configurations.In order to add build resources on demand more easily, we investigated the integration of a CERN provided Kubernetes cluster into the existing infrastructure. In this contribution we present the status of this prototype, focusing on the new challenges faced, such as the integration of these ephemeral build nodes into CERN’s IT infrastructure, job priority control, and debugging of job failures.oai:inspirehep.net:18321682020
spellingShingle Computing and Computers
Bachmann, Richard
Ganis, Gerardo
Konstantinov, Dmitri
Razumov, Ivan
Heinz, Johannes Martin
Optimizing Provisioning of LCG Software Stacks with Kubernetes
title Optimizing Provisioning of LCG Software Stacks with Kubernetes
title_full Optimizing Provisioning of LCG Software Stacks with Kubernetes
title_fullStr Optimizing Provisioning of LCG Software Stacks with Kubernetes
title_full_unstemmed Optimizing Provisioning of LCG Software Stacks with Kubernetes
title_short Optimizing Provisioning of LCG Software Stacks with Kubernetes
title_sort optimizing provisioning of lcg software stacks with kubernetes
topic Computing and Computers
url https://dx.doi.org/10.1051/epjconf/202024505030
http://cds.cern.ch/record/2752842
work_keys_str_mv AT bachmannrichard optimizingprovisioningoflcgsoftwarestackswithkubernetes
AT ganisgerardo optimizingprovisioningoflcgsoftwarestackswithkubernetes
AT konstantinovdmitri optimizingprovisioningoflcgsoftwarestackswithkubernetes
AT razumovivan optimizingprovisioningoflcgsoftwarestackswithkubernetes
AT heinzjohannesmartin optimizingprovisioningoflcgsoftwarestackswithkubernetes