Mutualization des services d'orchestration au sein de l'orchestrateur HTC/HPC ArmoniK (H/F)

L’objectif du stage est de mutualiser les services d’orchestration sur les nœuds.

ArmoniK est un système hybride entre un orchestrateur HTC/HPC et un “runtime HPC par tâche”. Développé conjointement avec AWS et Crédit Agricole, ArmoniK permet d’exécuter des graphes de tâches sur des cluster Kubernetes. Les graphes de tâches peuvent être complétés au fur et à mesure de l’exécution aussi bien depuis le code de soumission des tâches mais aussi directement depuis les tâches elles-même. Pensé pour être élastique et résilient, ArmoniK permet de faire varier le nombre de nœuds et offre des services de monitoring à l'échelle de la tâche. ArmoniK est utilisé en production et permet d’exécuter des milions de tâches sur des milliers de nœuds dans AWS. Il sera mis en production sur une infrastructure on-premises début 2023.

Selon la configuration utilisée, ArmoniK peut mettre en œuvre jusqu'à un service d’exécution par cœur. Aujourd’hui, chaque service d’exécution dispose de son service d’orchestration. Afin de réduire les resources consommées et améliorer les performances, nous souhaitons mutualiser les services d’orchestration. Pour cela, il conviendra de concevoir un système d'élection du service maître et de développer la prise en charge de plusieurs services d’exécution. Comme le nombre de cœurs alloués au calcul peut varier, il conviendra de mettre en place les mécanismes permettant de transférer le statut de service maître. L’objectif du stage sera de mettre en place le système d'élection, de l’intégrer à ArmoniK et de concevoir les tests de résilience associés.

Note : bien que de nombreux sujets de stage soient proposés autour d’ArmoniK, nous n’accueuillerons pas plus de quatre stagiaires ArmoniK simultanéement au sein de l'équipe. Les sujets seront priorisés en fonction des compétences et appétences des candidats.

Mots-clés : Programmation distribuée par tâches, Kubernetes, logiciel open-source

Pré-requis : Programmation orientée objet, programmation parallèle et distribuée, profiling de performances

Compétences optionnelles : Kubernetes, Terraform, C#, CI/CD

Contacts :

Candidater via mail sur recrut’at’aneo.fr

  • Florian Lemaitre - flemaitre’at’aneo.fr
  • Jérôme Gurhem - jgurhem’at’aneo.fr
  • Lilia Ziane Khodja - lzianekhodja’at’aneo.fr

Lieu du stage : Boulogne Billancourt

Référence :