preloader
  • Home
  • DecaLog/ComputeOps project

The ComputeOps project has the goal to study the benefit of containers for HPC applications. Started in 2018, the project is funded by the IN2P3 master project for transverse R&D.

ComputeOps : calcul intensif en conteneurs

Le mouvement “DevOps” amène de plus en plus les développeurs à livrer leurs codes accompagnés d’une image de conteneur, ou d’un fichier permettant de reconstruire un tel conteneur (machines virtuelles légères). Ainsi, l’application peut être déployée beaucoup plus facilement, et dans un contexte d’exécution similaire à celui du développeur, sans nécessiter l’intervention d’un administrateur pour installer telle ou telle bibliothèque applicative. Docker est l’outil emblématique de ce mouvement.

Ce concept diffuse maintenant à grande vitesse dans le monde du cloud et des super-calculateurs ; dans ce dernier cas, plutôt autour de l’outil Singularity. Pour se garder la possibilité d’utiliser ces ressources de calcul, et bénéficier nous aussi de la souplesse apportée par les conteneurs, il devient vital de préparer l’usage de ces conteneurs dans nos disciplines et dans nos grilles de calcul.


Objectifs du projet

  • Comparer les différentes technologies de conteneurs (docker, rocket, lxd, udocker, singularity, shifter) : effet sur les performances, la vectorisation, accès aux accélérateurs de calcul, sécurité, facilité d’administration et d’utilisation. Y’a-t-il un avantage décisif à dédaigner l’outil dominant (Docker) et à se tourner vers les alternatives “HPC” (Singularity, Shifter,…) ?

  • Etudier l’inter-opérabilité des technologies. Notamment les images et les fichiers de reconstruction d’image. Par exemple, est-ce qu’un utilisateur pourrait développer sur son poste en Docker, puis déployer sur centre de calcul en Singularity ?

  • Valider la compatibilité des conteneurs avec la grille.

  • Prototyper un outil de soumission de travaux (jobs) qui puisse déployer une application en conteneur indifféremment sur une machine personnelle, la grille, les clouds, les super-calculateurs… c’est à dire permettre à un physicien, via une interface unique, de faire tourner son application indifféremment sur son poste ou sur toute ressource de calcul à sa disposition.

  • Lors de l’éxecution des conteneurs en production sur un cluster, il est nécessaire d’utiliser un orchestrateur de conteneurs qui distribue les taches sur les ressources disponibles et à la demande. Plusieurs solutions existent (Docker Swarm, Kubernetes, Mesos,…), il faut donc suivre et comparer les technologies.


Participants

Porteurs

  • Depuis 2019 : Martin Souchal (APC)*
  • 2017-2019 : Cécile Cavet (APC)

Participants IN2P3

  • APC : Cécile Cavet, Martin Souchal
  • LAL : Gerard Marchal-Duval, David Chamont.
  • LPNHE : Aurélien Baily-Reyre, Olivier Dadoun, Victor Mendoza.
  • LPC : Fabrice Jammes
  • LLR : Andrea Sartirana
  • IPHC : Jérôme Pansanel, Emmanuel Medernach.
  • CC IN2P3 : Sébastien Gadrat

Partenaires externes

  • Groupe de travail Aristote sur la virtualisation légère.
  • Centrale Nantes : Pierre-Emmanuel Guerin, Richard Randriatoamanana.
  • IAS : Marc Dexet.
  • INRAE : Alexandre Dehne-Garcia
  • CNES : Guillaume Eynard-Bontemps
  • CNRS/ISE-M : Rémy Dernat
  • GRICAD : Violaine Louvet
  • IN2P3 : équipe C3 du CC-IN2P3
  • Intel : Samuel Ortiz
  • Singularity : Cédric Clerget