CVMFS: Stratum 0 in Kubernetes

IceCube is a cubic kilometer neutrino detector located at the south pole. CVMFS is a key component to IceCube’s Distributed High Throughput Computing analytics workflow for sharing 500GB of software across datacenters worldwide. Building the IceCube software suite across multiple platforms and deplo...

Full description

Bibliographic Details
Published in:EPJ Web of Conferences
Main Authors: Schultz David, Skarlupka Heath, Brik Vladimir, Merino Gonzalo
Format: Article in Journal/Newspaper
Language:English
Published: EDP Sciences 2019
Subjects:
Online Access:https://doi.org/10.1051/epjconf/201921407032
https://doaj.org/article/d2088f84d1a3434f9a1c4c401b0c57a9
Description
Summary:IceCube is a cubic kilometer neutrino detector located at the south pole. CVMFS is a key component to IceCube’s Distributed High Throughput Computing analytics workflow for sharing 500GB of software across datacenters worldwide. Building the IceCube software suite across multiple platforms and deploying it into CVMFS has until recently been a manual, time consuming task that doesn’t fit well within an agile continuous delivery framework. Within the last 2 years a plethora of tooling around microservices has created an opportunity to upgrade the IceCube software build and deploy pipeline. We present a framework using Kubernetes to deploy Buildbot. The Buildbot pipeline is a set of pods (docker containers) in the Kubernetes cluster that builds the IceCube software across multiple platforms, tests the new software for critical errors, syncs the software to a containerized CVMFS server, and finally executes a publish. The time from code commit to CVMFS publish has been greatly reduced and has enabled the capability of publishing nightly builds to CVMFS.