Présentation des clusters HPC avec des fonctionnalités de gestion de cluster améliorées

Pour créer l'infrastructure d'applications étroitement couplées qui évoluent sur plusieurs nœuds, vous pouvez créer un cluster d'instances de machines virtuelles (VM). Ce guide fournit un aperçu général des principales considérations et étapes à suivre pour configurer un cluster d'instances de machines virtuelles (VM) pour les charges de travail de calcul hautes performances (HPC) à l'aide d'une allocation de ressources dense.

Avec H4D, Compute Engine permet d'exécuter des charges de travail HPC massives en traitant un cluster entier d'instances de VM comme un seul ordinateur. L'utilisation du placement des VM tenant compte de la topologie vous permet d'accéder à de nombreuses instances au sein d'un même superbloc réseau et de minimiser la latence réseau. Vous pouvez également configurer Cloud RDMA sur ces instances pour maximiser les performances de communication entre les nœuds, ce qui est essentiel pour les charges de travail HPC à couplage fort.

Vous créez ces clusters de VM HPC avec H4D en réservant des blocs de capacité plutôt que des ressources individuelles. L'utilisation de blocs de capacité pour votre cluster permet de bénéficier de fonctionnalités de gestion de cluster améliorées.

Vous pouvez créer des clusters HPC avec des instances H4D avec ou sans fonctionnalités de gestion de cluster améliorées. Si vous n'avez pas besoin de fonctionnalités de gestion de cluster améliorées avec votre cluster HPC H4D, ou si vous souhaitez créer des clusters HPC à l'aide d'une série de machines autre que H4D, suivez les instructions ci-dessous pour créer des instances ou des clusters HPC :

Terminologie des clusters

Lorsque vous travaillez avec des blocs de capacité, les termes suivants sont utilisés :

Blocs
 Plusieurs sous-blocs sont interconnectés avec une structure non bloquante, ce qui fournit une interconnexion à bande passante élevée. Tout processeur du bloc est accessible en deux sauts réseau maximum. Le système expose les métadonnées des blocs et des sous-blocs aux orchestrateurs pour permettre un placement optimal des jobs.
Clusters
Plusieurs blocs s'interconnectent pour former un cluster qui peut évoluer jusqu'à des milliers de processeurs pour exécuter des charges de travail HPC à grande échelle. Chaque cluster est unique au niveau mondial. La communication entre différents blocs n'ajoute qu'un seul saut supplémentaire, ce qui permet de maintenir des performances et une prévisibilité élevées, même à grande échelle. Les métadonnées au niveau du cluster sont également disponibles pour les orchestrateurs afin de permettre un placement intelligent des jobs à grande échelle.
Cluster Toolkit
 Outil Open Source proposé par Google qui simplifie la configuration et le déploiement des clusters utilisant Slurm ou Google Kubernetes Engine. Vous utilisez des plans prédéfinis pour créer un dossier de déploiement basé sur le plan. Vous pouvez modifier les plans ou le dossier de déploiement pour personnaliser les déploiements et votre pile logicielle. Vous utilisez ensuite Terraform ou Packer pour exécuter les commandes générées par Cluster Toolkit afin de déployer le cluster.
Déploiement dense
Une demande de ressources qui alloue les ressources de votre instance de calcul à proximité physique les unes des autres pour minimiser les sauts de réseau et optimiser la latence la plus faible.
Maillage réseau
Un réseau fournit une connectivité à haut débit et à faible latence entre tous les blocs et services Google Cloud d'un cluster. Jupiter est l'architecture de réseau de centres de données de Google. Elle s'appuie sur la mise en réseau définie par logiciel et les commutateurs de circuits optiques pour faire évoluer le réseau et optimiser ses performances.
Nœud ou hôte
Une seule machine serveur physique dans le centre de données. Chaque hôte est associé à des ressources de calcul (CPU, mémoire et interfaces réseau). Le nombre et la configuration de ces ressources de calcul dépendent de la famille de machines. Les instances de VM sont provisionnées sur un hôte physique.
Orchestrator
Un orchestrateur automatise la gestion de vos clusters. Avec un orchestrateur, vous n'avez pas besoin de gérer chaque instance de VM dans le cluster. Un orchestrateur, tel que Slurm ou Google Kubernetes Engine (GKE), gère des tâches telles que la mise en file d'attente des jobs, l'allocation des ressources, l'autoscaling (avec GKE) et d'autres tâches de gestion de cluster quotidiennes.
Sous-blocs
 Il s'agit d'unités de base dans lesquelles un groupe d'hôtes est physiquement colocalisé sur un même rack. Un commutateur en haut du rack (ToR) connecte ces hôtes, ce qui permet une communication à un seul saut extrêmement efficace entre deux processeurs du sous-bloc. Cloud RDMA facilite cette communication directe.

Présentation du processus de création de clusters avec des VM H4D

Pour créer des clusters HPC sur des blocs de capacité réservés, vous devez procéder comme suit :

  1. Examiner les modèles de provisionnement disponibles
  2. Choisir une option de consommation et obtenir de la capacité
  3. Choisir une option de déploiement et un orchestrateur
  4. Choisir l'image du système d'exploitation ou du cluster
  5. Créer votre cluster

Modèles de provisionnement pour la création de VM et de clusters

Lorsque vous créez des instances de VM, vous pouvez utiliser les modèles de provisionnement décrits dans Modèles de provisionnement des instances Compute Engine.

Pour créer des instances H4D étroitement couplées, vous devez utiliser l'un des modèles de provisionnement suivants pour obtenir les ressources nécessaires à la création d'instances de calcul :

  • Lié à une réservation : vous pouvez réserver des ressources à prix réduit pour une date et une durée futures. Au début de la période de réservation, vous pouvez utiliser les ressources réservées pour créer des VM ou des clusters. Vous bénéficiez d'un accès exclusif à vos ressources réservées pendant toute la période de réservation.

  • Démarrage flexible : vous pouvez demander des ressources à prix réduit pour une durée maximale de sept jours. Compute Engine s'efforce de planifier le provisionnement des ressources demandées dès qu'elles sont disponibles. Vous bénéficiez d'un accès exclusif aux ressources obtenues pendant la période demandée.

  • Spot : en fonction de la disponibilité, vous pouvez obtenir immédiatement des ressources à prix très réduit. Toutefois, Compute Engine peut arrêter ou supprimer les instances de VM à tout moment pour récupérer de la capacité.

Modèle de provisionnement lié à une réservation

Le modèle de provisionnement lié à la réservation associe les instances de VM que vous avez créées à la capacité que vous avez réservée précédemment. Lorsque vous réservez de la capacité, Compute Engine crée une réservation vide. Ensuite, à l'heure de début de la réservation, voici ce qui se produit :

  • Compute Engine ajoute vos ressources réservées à la réservation. Vous bénéficiez d'un accès exclusif à la capacité réservée jusqu'à la fin de la période de réservation.

  • Google Cloud vous facture la capacité réservée jusqu'à la fin de votre période de réservation, que vous utilisiez ou non la capacité.

Vous pouvez ensuite utiliser les ressources réservées pour créer des VM sans frais supplémentaires. Vous ne payez que les ressources qui ne sont pas incluses dans la réservation, comme les disques ou les adresses IP.

Vous pouvez réserver des ressources pour autant de VM que vous le souhaitez, pour la durée de votre choix et pour une date ultérieure. Vous pouvez ensuite utiliser les ressources réservées pour créer et exécuter des VM jusqu'à la fin de la période de réservation. Si vous réservez des ressources pendant au moins un an, vous devez souscrire un engagement basé sur les ressources et l'associer à vos ressources réservées.

Pour provisionner des ressources à l'aide du modèle de provisionnement lié à la réservation, consultez les pages suivantes :

Vous pouvez utiliser le provisionnement lié à une réservation avec les instances H4D en spécifiant le modèle de provisionnement lié à une réservation lorsque vous créez des VM individuelles, un cluster HPC ou un groupe de VM.

Modèle de provisionnement Démarrage flexible

Pour exécuter des charges de travail de courte durée qui nécessitent des ressources allouées de manière dense, vous pouvez demander des ressources de calcul pendant sept jours maximum à l'aide du démarrage flexible. Chaque fois que des ressources sont disponibles, Compute Engine crée le nombre de VM demandé. Vous pouvez arrêter les VM à démarrage flexible autonomes, mais pas celles qu'un groupe d'instances géré (MIG) crée à l'aide de requêtes de redimensionnement. Les VM à démarrage flexible existent jusqu'à ce que vous les supprimiez ou jusqu'à ce que Compute Engine les supprime à la fin de leur durée d'exécution.

Le démarrage flexible est idéal pour les charges de travail qui peuvent démarrer à tout moment. Le modèle de provisionnement à démarrage flexible provisionne les ressources à partir d'un pool de capacité sécurisé. Les ressources allouées sont donc allouées de manière dense pour minimiser la latence du réseau.

Lorsque vous ajoutez des VM à démarrage flexible à un groupe d'instances géré (MIG) à l'aide de requêtes de redimensionnement, le MIG crée les VM simultanément. Cette approche vous permet d'éviter des frais inutiles liés à la capacité partielle que Compute Engine peut fournir en attendant que la capacité totale nécessaire au démarrage de votre charge de travail soit disponible.

Vous pouvez utiliser le provisionnement de démarrage Flex avec les instances H4D, en utilisant n'importe quel modèle de déploiement disponible.

Modèle de provisionnement Spot

Pour exécuter des charges de travail tolérantes aux pannes, vous pouvez obtenir des ressources de calcul immédiatement en fonction de leur disponibilité. Vous obtenez des ressources au prix le plus bas possible. Toutefois, Compute Engine peut arrêter ou supprimer les VM Spot créées à tout moment pour récupérer de la capacité. Ce processus est appelé préemption.

Les VM Spot sont idéales pour les charges de travail où les interruptions sont acceptables, par exemple :

  • Traitement par lot
  • Calcul hautes performances (HPC)
  • Analyse de données
  • Intégration continue et déploiement continu (CI/CD)
  • Encodage multimédia

Vous pouvez utiliser des VM Spot avec n'importe quel type de machine, à l'exception des types de machines A4X, X4 et Bare Metal. L'allocation dense dépend de la disponibilité des ressources. Pour vous assurer d'une allocation plus proche, vous pouvez appliquer une stratégie de concentration aux VM Spot.

Vous pouvez utiliser des Spot VM avec les options de déploiement dense suivantes :

Choisir une option de consommation et obtenir la capacité

Les options de consommation déterminent la manière dont les ressources sont obtenues pour votre cluster. Pour créer un cluster qui utilise des fonctionnalités de gestion de cluster améliorées, vous devez demander des blocs de capacité pour un déploiement dense.

Le tableau suivant récapitule les principales différences entre les options de consommation pour les blocs de capacité :

Option d'utilisation Réservations futures pour les blocs de capacité Réservations futures jusqu'à 90 jours (en mode Agenda) Démarrage flexible Spot
Caractéristiques de la charge de travail Charges de travail distribuées à grande échelle et de longue durée nécessitant des ressources allouées de manière dense Charges de travail de courte durée nécessitant des ressources allouées de manière dense Charges de travail de courte durée nécessitant des ressources allouées de manière dense Charges de travail tolérantes aux pannes
Durée de vie N'importe quand Jusqu'à 90 jours Jusqu'à 7 jours À tout moment, mais sous réserve de préemption
Préemptif Non Non Non Oui
Garantie de capacité Très élevée Très élevée Optimisation limitée Optimisation limitée
Quota Vérifiez que vous disposez d'un quota suffisant avant de créer des instances. Aucun quota n'est facturé Le quota préemptif est facturé. Le quota préemptif est facturé.
Tarifs
Allocation des ressources Dense Dense Dense Standard (stratégie d'emplacement compacte facultative)
Modèle de provisionnement Lié à la réservation Lié à la réservation Démarrage flexible Spot
Méthode de création

Pour créer des clusters et des VM HPC, vous devez procéder comme suit :

  1. Réserver de la capacité via l'équipe chargée de votre compte
  2. À la date et à l'heure de votre choix, vous pouvez utiliser la capacité réservée pour créer des clusters HPC. Consultez Choisir une option de déploiement.

Pour créer des clusters et des VM HPC, vous devez procéder comme suit :

  1. Créer une demande de réservation future en mode Agenda
  2. À la date et à l'heure de votre choix, vous pouvez utiliser la capacité réservée pour créer des clusters HPC. Consultez Choisir une option de déploiement.

Pour créer des VM, sélectionnez l'une des options suivantes :

Lorsque la capacité demandée devient disponible, Compute Engine la provisionne.

Vous pouvez créer des VM immédiatement. Consultez Choisir une option de déploiement.

Choisir une option de déploiement

Les charges de travail de calcul hautes performances (HPC) agrègent des ressources de calcul afin d'obtenir des performances supérieures à celles d'une station de travail, d'un serveur ou d'un ordinateur unique. Le HPC permet de résoudre des problèmes dans les domaines de la recherche universitaire, de la science, de la conception, de la simulation et de l'informatique décisionnelle.

Pour les clusters HPC dotés de fonctionnalités de gestion de cluster améliorées, choisissez la série de machines H4D. Si vous prévoyez d'utiliser une autre série de machines, suivez la documentation Créer une instance de VM compatible avec le HPC au lieu d'utiliser les méthodes de déploiement listées sur cette page.

Parmi les options de déploiement disponibles, vous trouverez l'installation et la configuration d'un orchestrateur pour une gestion améliorée du cluster HPC.

Pour choisir l'option la plus appropriée pour créer vos VM ou clusters pour votre cas d'utilisation, sélectionnez l'une des options suivantes :

Option Cas d'utilisation
Cluster Toolkit

Vous souhaitez utiliser un logiciel Open Source qui simplifie le processus de déploiement des clusters Slurm et Google Kubernetes Engine (GKE). Cluster Toolkit est conçu pour être hautement personnalisable et extensible. Pour en savoir plus, consultez la ressource suivante :

GKE Vous souhaitez une flexibilité maximale pour configurer votre cluster Google Kubernetes Engine en fonction des besoins de votre charge de travail. Pour en savoir plus, consultez Exécuter des charges de travail HPC avec H4D.
Utiliser Compute Engine

Vous souhaitez contrôler entièrement la couche d'infrastructure afin de pouvoir configurer votre propre orchestrateur. Pour en savoir plus, consultez la ressource suivante :

Choisir l'image du système d'exploitation

L'image du système d'exploitation (OS) que vous choisissez dépend du service que vous utilisez pour déployer votre cluster.

  • Pour les clusters sur GKE : utilisez une image de nœud GKE, telle que Container-Optimized OS. Si vous utilisez Cluster Toolkit pour déployer votre cluster GKE, une image Container-Optimized OS est utilisée par défaut. Pour en savoir plus sur les images de nœuds, consultez Images de nœuds dans la documentation GKE.

  • Pour les clusters sur Compute Engine : vous pouvez utiliser l'une des images suivantes :

  • Pour les clusters Slurm : Cluster Toolkit déploie le cluster Slurm avec une image de VM HPC basée sur Rocky Linux 8, optimisée pour les charges de travail HPC à couplage fort.

Créer votre cluster HPC

Après avoir examiné le processus de création de cluster et pris des décisions préliminaires pour votre charge de travail, créez votre cluster à l'aide de l'une des options de déploiement.

Fonctionnalités de gestion de cluster améliorées pour votre cluster HPC

Lorsque vous créez des instances H4D avec des ressources allouées de manière dense à l'aide des méthodes de déploiement mentionnées dans Choisir une option de déploiement, vous pouvez utiliser des fonctionnalités de gestion de cluster HPC améliorées avec vos instances.

Pour en savoir plus sur ces fonctionnalités, consultez Gestion améliorée des clusters HPC avec les instances H4D.

Étapes suivantes