Vue d’ensemble de l’architecture HPC lift-and-shift de bout en bout
« Lift-and-shift » dans le contexte du calcul HPC fait principalement référence au processus de migration d’un environnement local et d’une charge de travail vers le cloud. En principe, les modifications sont limitées (par exemple, les applications, les planificateurs de travaux et leurs configurations doivent pratiquement rester identiques). Les ajustements sur le stockage et le matériel sont naturels, car les ressources sont différentes des plateformes locales vers le cloud. Grâce à l’approche lift-and-shift, les entreprises peuvent commencer à profiter plus rapidement du cloud.
L’élément suivant représente un cluster HPC local classique dans un environnement de production, généralement fourni par le fabricant du matériel. Cet environnement local comprend un ensemble de nœuds de calcul, qui peuvent ou non fonctionner à l’aide d’images de machines virtuelles et de conteneurs. Ces nœuds exécutent des charges de travail managées par un planificateur de travaux, généralement Slurm, PBS ou LSF. Les charges de travail proviennent de plusieurs utilisateurs qui ont la gestion des identités et accès. Il existe généralement des répertoires de base, des disques de travail et un stockage à long terme. Il existe également une forme de surveillance permettant de contrôler les performances des travaux et l’intégrité des nœuds de calcul. Les utilisateurs peuvent accéder à l’environnement via la ligne de commande, les navigateurs ou une technologie de visualisation à distance. L’ensemble de l’environnement est hébergé dans un réseau privé, de sorte que les utilisateurs disposent d’un mécanisme permettant d’accéder à l’installation informatique, via le VPN ou le portail.
Comme nous le verrons tout au long de ce document, l’environnement dans le cloud suivant le modèle Infrastructure-as-a-Service, d’un point de vue conceptuel, n’est pas si différent. Certaines technologies nécessitent des mises à jour. En outre, certaines étapes de la migration vers le cloud sont nécessaires.
Ainsi, le présent document :
- présente les options possibles du processus de migration ;
- fournit des pointeur pour les produits et les bonnes pratiques pour chaque composante ;
- contient des recommandations pour éviter les pièges dans le processus.
Avant de passer à la description de l’architecture, il convient découvrir les différents personnages dans ce contexte, leurs besoins et leurs attentes.
Personnages et expérience utilisateur
Plusieurs personnes peuvent accéder à l’environnement HPC. Leurs activités et la manière dont ils interagissent dans l’environnement varient considérablement.
Utilisateur final (ingénieur/scientifique/chercheur)
Ce personnage représente l’expert technique (par exemple, biologiste, physicien, ingénieur, etc.) dont la mission est d’effectuer des expériences (autrement dit, soumettre des travaux) et analyser les résultats. Les utilisateurs finaux interagissent avec les administrateurs système pour affiner l’environnement informatique chaque fois que cela est nécessaire. Ils peuvent avoir une certaine expérience sur l’utilisation d’outils basés sur l’interface de ligne de commande. Toutefois, certains d’entre eux peuvent utiliser uniquement des portails Web ou des interfaces utilisateur graphiques via VDI pour soumettre leurs travaux et analyser les résultats générés.
Nouvelles responsabilités dans l’environnement HPC cloud :
- L’utilisateur final ne devrait pas avoir de nouvelles responsabilités en raison du travail effectué par l’administrateur HPC et l’administrateur Cloud. En fonction de l’environnement local, les utilisateurs finaux disposent d’une plus grande capacité et variété de ressources informatiques qui leur permettent d’être plus productifs.
Administrateur HPC
Ce personnage est celui qui jouit d’une expertise HPC. Il est chargé de déployer l’infrastructure informatique initiale et de l’adapter en fonction des besoins de l’entreprise, et de l’utilisateur final. Il est également responsable de la vérification de l’intégrité du système et de la résolution des problèmes y afférents. Les administrateurs HPC sont capables d’accéder à l’architecture et à ses composants via l’interface de ligne de commande, les kits de développement logiciel (SDK) et les portails Web. Ils sont également les premiers interlocuteurs des utilisateurs finaux lorsqu’ils rencontrent des difficultés liées à l’environnement informatique.
Nouvelles responsabilités dans l’environnement HPC cloud :
- Gestion des ressources et services cloud (par exemple, machines virtuelles, stockage, mise en réseau) via des plateformes de gestion cloud.
- Mise en œuvre et gestion de clusters, de ressources via de nouveaux outils d’orchestration des ressources (par exemple, CycleCloud).
- Optimisation du déploiement des applications grâce à l’analyse des détails de l’infrastructure (notamment les types de machines virtuelles, le stockage et les options de réseau).
- Optimisation de l’utilisation des ressources et des coûts grâce à des fonctions spécifiques au cloud telles que la mise à l’échelle automatique et les instances spot.
Administrateur cloud
Ce personnage travaille avec l’administrateur HPC pour faciliter le déploiement et la maintenance de l’infrastructure informatique. Il n’est pas (nécessairement) un expert HPC. En revanche, il s’agit d’un expert Cloud qui maîtrise parfaitement l’ensemble de l’infrastructure informatique de l’entreprise, y compris les configurations/stratégies du réseau, les droits d’accès des utilisateurs et les appareils de ces derniers. Dans certains cas, l’administrateur HPC et l’administrateur cloud peuvent être la même personne.
Nouvelles responsabilités dans l’environnement HPC cloud :
- Collaboration avec les administrateurs HPC pour garantir l’intégration transparente des charges de travail HPC à l’infrastructure cloud.
- Surveillance et gestion du niveau de performance, de la sécurité et de la conformité de l’infrastructure cloud.
- Contribution à la mise en place de solutions pour la configuration réseau et stockage basées sur le cloud afin de gérer les charges de travail HPC.
Directeur commercial/propriétaire
Ce personnage est responsable de l’entreprise, ce qui implique qu’il doit s’occuper du budget et des projets afin d’atteindre les objectifs de l’organisation. Dans le cadre de sa mission, il doit maîtriser la composante gestion des comptes de l’architecture afin de gérer les coûts de chaque projet. Il travaille avec les administrateurs HPC et les utilisateurs finaux pour évaluer les besoins de la plateforme, notamment en matière de stockage, de réseau et de ressources informatiques. Il planifie également les charges de travail futures.
Nouvelles responsabilités dans l’environnement HPC cloud :
- Analyse des rapports détaillés sur les coûts et des métriques d’utilisation fournies par les prestataires de services cloud afin de gérer les budgets, et de prévoir les dépenses.
- Prise de décisions stratégiques basées sur l’utilisation des ressources cloud et les opportunités d’optimisation des coûts.
- Planification et approbation des investissements dans l’infrastructure cloud afin de soutenir les charges de travail HPC futures et les objectifs stratégiques de l’organisation.
Vue d’ensemble de l’architecture lift-and-shift
Un environnement HPC de production dans le cloud comprend plusieurs composantes. Certaines composantes essentielles permettent de mettre en place un environnement. Il s’agit notamment d’un planificateur de travaux, d’un fournisseur de ressources, d’un pointeur d’entrée permettant à l’utilisateur d’accéder à l’environnement, aux périphériques de calcul et de stockage, entre autres. Lorsque l’environnement est mis en production, la surveillance, l’observabilité, les contrôles d’intégrité, la sécurité, la gestion des identités et accès, la responsabilité, les différentes options de stockage, entre autres, commencent à jouer un rôle essentiel.
Des extensions peuvent également être mises en place, telles que des nœuds de connexion, des transferts de données, l’utilisation de containers, des gestionnaires de licences, etc. qui dépendent de l’installation.
Cet environnement de production peut nécessiter la configuration de plusieurs composantes. Par conséquent, les environnement de déploiement et les gestionnaires deviennent essentiels pour automatiser le déploiement initial et le mettre à niveau progressivement tout au long du processus. Les installations plus avancées peuvent également avoir des modèles d’environnement (ou des spécifications) incluant des versions logicielles et des configurations plus optimales, et dûment testées. Une fois que l’environnement est en production et que toutes les composantes requises sont en place, des ajustements peuvent s’avérer nécessaires au fil du temps pour répondre aux demandes des utilisateurs, notamment des modifications dans les types de machines virtuelles ou les options/capacités de stockage.
Instanciation de l’architecture cloud HPC lift-and-shift
Nous fournissons ici plus de détails pour chaque composante de l’architecture, y compris des pointeurs pour les produits Azure officiels, des blogs techniques contenant quelques bonnes pratiques, des dépôts git et des liens vers des solutions autres que des produits.
Démarrage rapide. Pour une solution de démarrage rapide afin de créer un environnement HPC dans le cloud à partir d’éléments essentiels, nous recommandons d’utiliser l’espace de travail Azure CycleCloud Slurm.