Aller au contenu
PERINGER Service Informatique, retour à l’accueil

Retour
Radiotélescope parabolique sous un ciel étoilé au crépuscule

Photo de Jan Baborák sur Unsplash

Réalisation d’ingénierie

Automatisation et calcul haute performance pour l’astronomie

Automatiser le build et le déploiement d’applications C# d’analyse astronomique sur un cluster de calcul haute performance avec GitLab, Docker et Kubernetes.

Recherche scientifiqueAgence spatiale européenne (ESA)GitLabGitHubC#DockerKubernetesHPC

Le projet

Pour un projet de l’Agence spatiale européenne, des applications C# traitaient des observations astronomiques selon deux approches distinctes. La première portait sur le décalage vers le rouge de la lumière et l’estimation des vitesses. La seconde utilisait la soustraction d’images pour rechercher de nouveaux objets célestes. La comparaison d’une observation à une image de référence faisait ressortir des différences à examiner comme sources candidates. Mon intervention couvrait les pipelines GitLab CI/CD et le déploiement des applications sur un cluster de calcul haute performance (HPC) Kubernetes.

Approche technique

Les images Docker réunissent le code C# et ses dépendances dans un environnement exécutable sur les nœuds de calcul. GitLab automatise leur création et leur déploiement ; Kubernetes assure l’exécution des conteneurs. Les mises à jour applicatives passent ainsi par le pipeline CI/CD avant leur utilisation pour traiter les observations astronomiques.

Résultat

Une chaîne CI/CD opérationnelle pour déployer les applications d’analyse astronomique sur les ressources HPC, avec les scripts du projet conservés dans GitHub.

Mon intervention
  • Configuration des pipelines GitLab CI/CD pour le build des applications C# et la création de leurs images Docker
  • Automatisation du déploiement des conteneurs dans le cluster Kubernetes utilisé pour les calculs scientifiques
  • Versionnement des scripts du projet dans GitHub

Vue fonctionnelle

Parlons de votre projet

Un échange sur la conception, le développement et la mise en production de votre projet.