The problem of software distribution has always been an issue at CERN, given the massive dimension of the software used for analyzing the data collected from the LHC. The problem of software distribution has been historically solved by the use of a distributed, read-only file system like CernVM-FS that allows distributing binaries to all the geographically distributed data-centers used for High Energy Physics computation. However, the problem of managing run-time dependencies is still open, indeed, some application can run perfectly well in an environment while not working in a different one. The problem of run-time dependencies is already been solved in the industry with the use of containers, immutable computing en- vironments which encapsulate all the run-time dependencies of an application allowing it to run with ease on different machines. More- over, containers are becoming more widespread also inside CERN, suggesting that they will be a key component for running future High Energy Physics workload. However the integration between containers and CernVM-FS is not yet mature enough and no automatic tool to manage the whole lifetime of a container images inside CernVM-FS exists yet. Indeed, containers are difficult to distribute in an efficient way since their content is stored inside a few large files. Moreover it has been shown that most of the content of containers is not used while running the application itself. Efficient content distribution and managing runtime dependencies should not be contrasting goals. Hence, in this work, we present a way to efficiently distribute the content of containers in order to avoid waste of bandwidth and time.

Il CERN è una organizzazione Europea che opera il più grande la- boratorio della fisica delle particelle al mondo. Il CERN ospita la strumentazione delle 4 più grandi collaborazioni nel campo della fisica: ALICE, ATLAS, CMS e LHCb. Al CERN sono ospitati anche un insieme di collaborazioni nel campo della fisica più piccole che beneficiano delle strumentazioni, conoscienze, effetto network e servizi disponibili. Tra i servizi che il CERN offre ai suoi utenti quello informatico è uno dei più interesanti. Infatti il CERN ospita e gestisce il WLCG [6], uno dei più grandi centri di calcolo usati per la ricerca pubblica. Un problema che influenza le operazioni dentro il centro di cal- colo è come installare e impostare il software sui singoli server. Il software usato nell ambito scientifico è di grandi dimensioni ed è molto dispendioso in tempo di banda e tempo spostare ogni binario da una posizione centrale ad ogni singolo computer. Diverse soluzioni sono state proposte e alla fine is problema è stato risolto con l’uso di CernVM-FileSystem [4], un file system di sola lettura che mette a disposizione un sistema di distribuzione software che è scalabile, solido e che richiede poca manutenzione. Provvedere solo alla distribuzione del software, pero’ non è suffi- ciente. Infatti anche le dipendenze a run time devono essere gestite per garantire operazioni senza problemi. Una possibile soluzion per gestire le dipendenze a run time è l’uso dei container. I container impacchettano tutte le dipendenze in un file system immutabile così da poter eseguire l’applicazione sempre nello stesso ambiente anche se su macchine diverse. Distribuire il contenuto dei container usando CVMFS non è pratico, visto che i containers sono distribuiti come un insieme di grandi file e questo è contrario ai principi di funzionamento di CVMFS che lavora meglio con tanti piccoli file. Questa tesi esplorerà il problema di create un file system di sola lettura addatto per distribuire il contenuto di container sui nodi di computazione. Descriveremo la struttura di un file system di sola lettura generico e implementero la metodologia proposta con CVMFS.

Efficient containers distribution at global scale

MOSCIATTI, SIMONE
2017/2018

Abstract

The problem of software distribution has always been an issue at CERN, given the massive dimension of the software used for analyzing the data collected from the LHC. The problem of software distribution has been historically solved by the use of a distributed, read-only file system like CernVM-FS that allows distributing binaries to all the geographically distributed data-centers used for High Energy Physics computation. However, the problem of managing run-time dependencies is still open, indeed, some application can run perfectly well in an environment while not working in a different one. The problem of run-time dependencies is already been solved in the industry with the use of containers, immutable computing en- vironments which encapsulate all the run-time dependencies of an application allowing it to run with ease on different machines. More- over, containers are becoming more widespread also inside CERN, suggesting that they will be a key component for running future High Energy Physics workload. However the integration between containers and CernVM-FS is not yet mature enough and no automatic tool to manage the whole lifetime of a container images inside CernVM-FS exists yet. Indeed, containers are difficult to distribute in an efficient way since their content is stored inside a few large files. Moreover it has been shown that most of the content of containers is not used while running the application itself. Efficient content distribution and managing runtime dependencies should not be contrasting goals. Hence, in this work, we present a way to efficiently distribute the content of containers in order to avoid waste of bandwidth and time.
BRONDOLIN, ROLANDO
ING - Scuola di Ingegneria Industriale e dell'Informazione
20-dic-2018
2017/2018
Il CERN è una organizzazione Europea che opera il più grande la- boratorio della fisica delle particelle al mondo. Il CERN ospita la strumentazione delle 4 più grandi collaborazioni nel campo della fisica: ALICE, ATLAS, CMS e LHCb. Al CERN sono ospitati anche un insieme di collaborazioni nel campo della fisica più piccole che beneficiano delle strumentazioni, conoscienze, effetto network e servizi disponibili. Tra i servizi che il CERN offre ai suoi utenti quello informatico è uno dei più interesanti. Infatti il CERN ospita e gestisce il WLCG [6], uno dei più grandi centri di calcolo usati per la ricerca pubblica. Un problema che influenza le operazioni dentro il centro di cal- colo è come installare e impostare il software sui singoli server. Il software usato nell ambito scientifico è di grandi dimensioni ed è molto dispendioso in tempo di banda e tempo spostare ogni binario da una posizione centrale ad ogni singolo computer. Diverse soluzioni sono state proposte e alla fine is problema è stato risolto con l’uso di CernVM-FileSystem [4], un file system di sola lettura che mette a disposizione un sistema di distribuzione software che è scalabile, solido e che richiede poca manutenzione. Provvedere solo alla distribuzione del software, pero’ non è suffi- ciente. Infatti anche le dipendenze a run time devono essere gestite per garantire operazioni senza problemi. Una possibile soluzion per gestire le dipendenze a run time è l’uso dei container. I container impacchettano tutte le dipendenze in un file system immutabile così da poter eseguire l’applicazione sempre nello stesso ambiente anche se su macchine diverse. Distribuire il contenuto dei container usando CVMFS non è pratico, visto che i containers sono distribuiti come un insieme di grandi file e questo è contrario ai principi di funzionamento di CVMFS che lavora meglio con tanti piccoli file. Questa tesi esplorerà il problema di create un file system di sola lettura addatto per distribuire il contenuto di container sui nodi di computazione. Descriveremo la struttura di un file system di sola lettura generico e implementero la metodologia proposta con CVMFS.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
ClassicThesis.pdf

Open Access dal 05/12/2019

Descrizione: Thesis text
Dimensione 933.51 kB
Formato Adobe PDF
933.51 kB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/144807