
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.
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
GitLab automatise le build des images Docker et le déploiement des applications C# sur Kubernetes. Le cluster HPC exécute deux analyses scientifiques indépendantes. Un premier volet étudie le décalage vers le rouge et les vitesses. Le second utilise la soustraction d’images pour repérer des sources candidates lors de la recherche de nouveaux objets célestes.
C#
Docker
GitHub
GitLab
Kubernetes
Composants et flux
- Scripts versionnés dans le Git repo GitHub ; pipelines CI/CD dans GitLab
- Build des images Docker contenant les applications C# d’analyse astronomique
- Deploy dans le cluster Kubernetes et exécution des traitements HPC
- Analyse du décalage vers le rouge et estimation des vitesses dans un premier volet scientifique
- Soustraction d’une image de référence à une observation, puis examen des sources candidates dans un second volet indépendant
Compétences associées
- Logiciels et applications sur mesure
- API et intégration des systèmes
- Automatisation des infrastructures
Prestations par secteur
Autres réalisations
Parlons de votre projet
Un échange sur la conception, le développement et la mise en production de votre projet.