Zone d’atterrissage pour HPC
La méthodologie Ready du Cloud Adoption Framework pour Azure peut vous guider tout au long de la préparation de votre environnement à l’adoption du cloud. Pendant la phase de préparation, vous pouvez utiliser une zone d’atterrissage Azure. Une zone d’atterrissage est un accélérateur technique qui fournit le bloc de construction de base pour tout environnement d’adoption du cloud. Une zone d’atterrissage peut automatiser la configuration de votre environnement Azure, en s’alignant sur les meilleures pratiques du Cloud Adoption Framework. Pendant la préparation du calcul haute performance (HPC), vous pouvez rencontrer des configurations d’environnement qui dépendent du cas d’usage et des exigences de votre secteur d’activité.
Architecture conceptuelle de la zone d’atterrissage Azure
Lorsque vous préparez votre environnement pour une adoption durable du cloud, vous pouvez utiliser une architecture conceptuelle des zones d’atterrissage Azure qui représente un état final cible. Pour HPC, il existe plusieurs références d’architecture conceptuelle qui sont basées sur les trois secteurs traités actuellement par le Cloud Adoption Framework :
Prenez en compte de ces références d’architecture lorsque vous développez une vision à long terme pour votre zone d’atterrissage. Ces références constituent un point de départ. En fonction des besoins métier de votre organisation et des besoins de vos utilisateurs finaux, vous devrez peut-être les modifier.
Évaluation pour HPC
Les décisions que vous prenez lors de l’évaluation de l’impact stratégique et la planification technique ont une influence sur la configuration de la zone d’atterrissage que vous choisissez pour vos déploiements HPC sur Azure. Nous vous recommandons d'envisager les questions suivantes :
- Quelle est la maturité de votre environnement sur Azure ? Est-ce à l’étape de la preuve de concept ? S’agit-il plutôt déjà d’une application mature qui sert les utilisateurs ? Selon sa phase, vous pouvez inclure ou omettre la gouvernance, la sécurité ou l’organisation des ressources.
- L’application que vous générez sur Azure est-elle un projet éphémère ou un projet de longue date ? La réponse à cette question peut vous aider à choisir vos options de calcul et de stockage.
- Votre organisation exige-t-elle que les personnes accèdent aux ressources Azure à différents niveaux ?
Comme vous pouvez le voir à partir de ces questions, le modèle de déploiement varie en fonction de votre entreprise, de votre secteur d’activité et de l’utilisation de votre application.
Accélération de zone d’atterrissage Azure pour HPC
Azure Batch et Azure CycleCloud sont tous deux un service tiers fourni par Azure, tandis qu'Azure HPC OnDemand Platform (AzHop) est une automatisation basée sur Azure Cycle Cloud qui fournit un mécanisme de déploiement de bout en bout pour une solution de cluster HPC complète dans Azure.
Azure Batch
- Batch est conçu pour exécuter efficacement des tâches par lots de calcul haute performance (HPC) et en parallèle à grande échelle dans Azure.
- Batch crée et gère un pool de nœuds de calcul ou des machines virtuelles. Vous pouvez également utiliser Batch pour installer les applications que vous souhaitez exécuter, mais aussi planifier des travaux à exécuter sur les nœuds.
- Il n’y a aucun logiciel de planificateur de travail ou de cluster à installer, gérer ou mettre à l’échelle.
- Le service Batch offre de bons résultats avec les charges de travail intrinsèquement parallèles. Ces charges de travail ont des applications pouvant s’exécuter indépendamment, chaque instance terminant une partie du travail.
- Vous pouvez également utiliser Azure Batch pour exécuter des charges de travail fortement couplées dans lesquelles les applications exécutées doivent communiquer entre elles, et pas s’exécuter indépendamment.
- Les tâches Batch peuvent s’exécuter directement sur des machines virtuelles ou des nœuds dans un pool Batch. Vous pouvez toutefois également configurer un pool Batch pour exécuter des tâches dans des conteneurs compatibles Docker sur les nœuds.
Azure CycleCloud
- Il prend en charge différents planificateurs HPC, tels que SLURM, OpenPBS, PBSPro, LSF, Grid Engine et HTCondor12.
- Il vous permet de provisionner l’infrastructure pour les systèmes HPC, tels que les machines virtuelles identiques, les interfaces réseau et les disques.
- Il met automatiquement à l’échelle l’infrastructure pour exécuter des travaux efficacement à n’importe quelle échelle en fonction des exigences de charge, de disponibilité et de temps des travaux.
- Il fournit un format de création de modèles riche et déclaratif pour construire des environnements HPC complets sur Azure.
- Il s’intègre aux services Azure tels que Azure Monitor et les outils Microsoft Cost Management.
AzHop
- AzHop fournit un mécanisme de déploiement de bout en bout pour une infrastructure HPC de base sur Azure en utilisant CycleCloud pour orchestrer les travaux.
- Il fournit une solution complète de cluster HPC, prête pour l’exécution des applications par les utilisateurs, mais aussi facile à déployer et à gérer pour les administrateurs HPC.
- AzHop utilise diverses applications intégrées que vous pouvez utiliser "telles quelles" ou que vous pouvez facilement personnaliser et étendre pour répondre à des besoins non satisfaits.
- Il comprend un portail Open OnDemand pour un accès utilisateur unifié, un accès à distance à l’interpréteur de commandes, un accès à la visualisation à distance, un envoi de travaux, un accès aux fichiers, etc.
- Il se sert d’Active Directory pour l’authentification utilisateur et le contrôle de domaine.
- Il se sert de OpenPBS ou de l’utilitaire SLURM (Simple Linux Utility for Resource Management) comme planificateur de travaux.
- L’approvisionnement et la mise à l’échelle automatique des ressources dynamiques sont effectués par les files d’attente de travaux CycleCloud préconfigurés et les contrôles d’intégrité intégrés pour éviter rapidement les nœuds non optimaux.
- Azure NetApp Files fournit un système de fichiers partagé pour le répertoire d’accueil et les applications.
Graphique comparatif
Fonctionnalité | Azure Batch | Azure CycleCloud |
---|---|---|
Planificateur | Des API et outils Batch sont disponibles. Vous pouvez également utiliser des scripts natifs cloud de ligne de commande dans le Portail Azure. | Vous pouvez utiliser des planificateurs HPC Standard tels que SLURM, OpenPBS, PBS Pro, LSF, Grid Engine, et HTCondor. Vous pouvez également étendre des plug-ins de mise à l’échelle automatique Azure CycleCloud pour utiliser votre propre planificateur. |
Ressources de calcul | Nœuds SaaS (Software as a service) – PaaS (Platform as a service). | Logiciel PaaS – PaaS. |
Outils de supervision | Azure Monitor. | Azure Monitor et Grafana. |
Personnalisation | Vous pouvez utiliser des pools d’images personnalisés, des images de tiers ou un accès à l’API Batch. | Vous pouvez utiliser l’API RESTful complète pour personnaliser et étendre des fonctionnalités, déployer votre propre planificateur et prendre en charge des gestionnaires de charges de travail existants. |
Intégration | Des pipelines Azure Synapse Analytics, Azure Data Factory et l’interface Azure CLI. | Une interface CLI intégrée pour Windows et Linux. |
Type d’utilisateur | Développeurs. | Administrateurs et utilisateurs HPC classiques. |
Type de travail | Lots et workflows. | Workflows fortement couplés qui utilisent l’interface MPI (interface de passage de messages). |
Prise en charge de Windows | Fourni. | Dépend du choix du planificateur. |
Azure CycleCloud et Azure Batch sont de outils puissants pour les tâches HPC sur Azure, ils sont destinés à des cas d’usage différents.
Azure CycleCloud est un outil pour entreprises destiné à l’orchestration et à la gestion des environnements HPC sur Azure. Il s’adresse aux administrateurs HPC et aux utilisateurs souhaitant déployer un environnement HPC avec un planificateur spécifique à l’esprit. Azure CycleCloud fournit de puissants outils pour mettre en place des environnements HPC complets sur Azure, notamment des serveurs NFS (Network File Sharing), des systèmes de fichiers parallèles, des hôtes de connexion, des serveurs de licences et des services d’annuaire. Il est utile pour les organisations ayant exploité des environnements HPC pendant un certain temps et ayant accumulé des années d’expertise, ainsi que des outils internes autour d’un planificateur spécifique.
En revanche, Batch vise plus les développeurs et les équipes qui créent une fonctionnalité dans leur propre produit ou service. Batch contient son propre planificateur et est conçu pour exécuter efficacement des travaux parallèles à grande échelle, sans cluster ou logiciel de planification de travaux. Batch est utile lorsque vous n’avez pas besoin de gérer un planificateur de charge de travail.
En résumé, utilisez Azure CycleCloud lorsque vous souhaitez déployer un environnement HPC, avec un planificateur spécifique à l’esprit, et avez besoin d’un environnement HPC complet. Utilisez Batch lorsque vous développez un produit ou un service qui nécessite un traitement parallèle à grande échelle et ne souhaitez pas gérer un planificateur de charge de travail.
Étapes suivantes
- Examiner les tailles de VM disponibles pour le calcul haute performance.
- Après avoir préparé votre zone d’atterrissage HPC, commencez à examiner votre migration.
- Consultez l’accélérateur de zone d’atterrissage HPC global.