Configurer la pile de grappes de calcul de haute performance à partir d'Oracle Cloud Marketplace

La pile de grappes de calcul de haute performance utilise Terraform pour déployer des ressources Oracle Cloud Infrastructure. La pile créera des noeuds GPU, du stockage, un réseau standard et un réseau en grappe haute performance, ainsi qu'un noeud d'hôte bastion/en-tête pour l'accès à la grappe et sa gestion.

Déployer la grappe GPU

Votre compte Oracle Cloud doit faire partie d'un groupe autorisé à déployer et à gérer ces ressources. Pour plus de détails sur les exigences de politique, voir les instructions d'utilisation de grappe de calcul de haute performance.

Vous pouvez déployer la pile vers un compartiment existant, mais elle peut être plus propre si vous créez un compartiment spécifiquement pour la grappe.

Note :

Il n'y a aucun coût à utiliser la pile Marketplace pour provisionner un environnement, mais les ressources provisionnées lors du lancement de la pile vous seront facturées.
  1. Créez un compartiment pour votre location et votre région et vérifiez que les politiques sont disponibles.
    1. Connectez-vous à la console OCI en tant qu'utilisateur Oracle Cloud pour la location et la région dans lesquelles vous voulez travailler.
    2. Créez un compartiment pour les ressources de la grappe.
    3. Assurez-vous que des politiques OCI sont en place pour vous permettre de créer la grappe.
      Cela peut nécessiter l'aide de votre administrateur de sécurité ou de réseau. Voici un exemple de politique : "Autoriser le groupe myGroup à gérer toutes les ressources du compartiment compartment".
  2. Utilisez la pile de grappes de calcul de haute performance pour déployer la grappe GPU.
    1. Naviguez jusqu'à Marketplace, puis cliquez sur Toutes les applications.
    2. Dans la zone Rechercher des fiches descriptives, entrez Grappe de calcul de haute performance.

      Note :

      Si la pile de grappes de calcul de haute performance n'est pas disponible dans le marché des applications OCI dans votre location, vous pouvez cloner la pile à partir de GitHub (clone git https://github.com/oracle-quickstart/OCI-HPC.git) et l'importer dans le gestionnaire de ressources OCI. Cela offre les mêmes fonctionnalités, mais nécessite que vous ayez accès à une "image de système d'exploitation personnalisée" appropriée pour les noeuds GPU.
    3. Cliquez sur Grappe de calcul de haute performance.
    4. Sélectionnez une version.
      Nous avons utilisé la version par défaut v2.10.4.1.
    5. Sélectionner un compartiment dans lequel créer la grappe
    6. Cliquez sur Lancer la pile.

Configurer la grappe

Lorsque la pile est lancée, remplissez les pages Informations sur la pile et Configuration pour commencer à configurer le cluster.

  1. Remplissez la page Informations sur la pile :
    1. Entrez un nom pour votre grappe.
    2. (Facultatif) Ajoutez une brève description.
    3. Cliquez sur Suivant.

    La page Variables de configuration s'affiche.

  2. Configurez la grappe.
    La page Variables de configuration offre de nombreuses possibilités de personnaliser la grappe en fonction de vos besoins. Nous ne couvrons pas chaque option en détail. Nous fournissons plutôt des conseils lorsque des paramètres non par défaut sont nécessaires pour créer un cluster GPU prenant en charge le logiciel de cluster NVIDIA.
    1. Dans Clé SSH publique, ajoutez une clé publique qui vous permettra de vous connecter à la grappe.
    2. Cochez la case Utiliser un nom de grappe personnalisé, puis entrez un nom d'hôte de base.
      Utilisé en tant que préfixe pour les noms d'hôte de l'hôte bastion et du noeud de connexion.
  3. Utilisez les options de noeud d'en-tête pour personnaliser l'hôte bastion.
    Cette instance sert de noeud de connexion principal, le contrôleur Slurm, et peut également être utilisée pour certaines versions et autres activités de prise en charge du cluster. Ici, vous pouvez ajuster la capacité de l'UC, de la mémoire et du volume de démarrage en fonction de vos besoins
  4. Utilisez les options de noeud de calcul pour sélectionner le type et la quantité de noeuds de travail dans la grappe. Vous pouvez déployer ces noeuds avec une image de système d'exploitation à partir du marché des applications ou fournir une image personnalisée avec votre version de système d'exploitation préférée.
    • Domaine de disponibilité : Si vous travaillez dans une région comportant plusieurs domaines de disponibilité, sélectionnez le domaine de disponibilité ayant la meilleure disponibilité des ressources GPU.
    • Sélectionnez Utiliser le réseau en grappe.
    • Forme des noeuds de calcul : Sélectionnez la forme GPU sans système d'exploitation que vous utilisez dans cette grappe. Par exemple, BM.GPU4.8.
    • Taille initiale de la grappe : Entrez le nombre de noeuds sans système d'exploitation à provisionner.
    • Pour créer une image de système d'exploitation préconfigurée à partir du marché des applications, sélectionnez Utiliser l'image du marché des applications. Puis, sous Version d'image, sélectionnez l'une des images GPU pour un système d'exploitation préconfiguré avec des pilotes pour les GPU et le réseau RDMA.
    • Utiliser l'image du marché des applications : Si vous créez la grappe avec une image personnalisée, décochez cette case et sélectionnez Utiliser une image non prise en charge, puis sous OCID de l'image, indiquez l'OCID de l'image personnalisée que vous avez déjà chargée dans la location.
    • Utiliser l'agent de calcul : Cette option peut être requise pour les images du marché des applications.
  5. (Facultatif) Le noeud de connexion supplémentaire fournit un deuxième hôte pour que les utilisateurs de la grappe interagissent avec la grappe. La forme, l'ocpus et la mémoire peuvent être personnalisés pour répondre à vos besoins.
  6. Les options de stockage avancées offrent plusieurs façons de préconfigurer le stockage partagé disponible dans l'ensemble de la grappe. Cliquez sur Afficher les options de stockage avancées pour développer les sélections.
    • Le répertoire de base de l'hôte bastion est NFS partagé entre tous les noeuds de la grappe. Cela fait partie du volume de démarrage du noeud de tête, que vous pouvez personnaliser dans les options de noeud de tête.
    • Pour plus de stockage partagé, sélectionnez Volume par blocs supplémentaire pour l'espace partagé et entrez la capacité. Ce volume est attaché à l'hôte bastion et partagé dans la grappe en tant que /nfs/cluster.
    • L'espace de stockage NFS partagé de NVME ou de volume par blocs partage la capacité NVMe du premier noeud de calcul de la grappe en tant que /nfs/scratch. Cela offre un stockage plus performant que les volumes de noeud principal, mais peut fournir moins de capacité et de disponibilité.
    • Le disque local de montage créera un système de fichiers à partir de NVMe sur chaque noeud de calcul et le montera localement sur ce noeud.
    • Le service Un volume logique utilise LVM pour créer un volume plus important à partir de plusieurs appareils NVMe.
    • La redondance augmente la fiabilité (mais réduit de moitié la capacité utilisable) du stockage NVMe en mettant en miroir les appareils.
  7. Utilisez les options de réseau pour sélectionner le VCN.
    • Utiliser un VCN existant : Désélectionné par défaut. Si cette option est désélectionnée, un nouveau VCN est provisionné. Cochez cette case pour provisionner la grappe dans un VCN et des sous-réseaux existants. Cela peut faciliter l'intégration de cette grappe et d'autres ressources de location.
  8. Utilisez le logiciel pour sélectionner le logiciel à installer.
    • Sélectionnez Installer SLURM pour fournir la programmation et la gestion des tâches SLURM.
    • (Facultatif) Sélectionnez Installer les outils de surveillance de grappe de calcul de haute performance pour fournir plus d'informations sur l'activité et l'utilisation de la grappe.
    • Sélectionnez Installer NVIDIA Enroot pour les charges de travail GPU en conteneur. Cela prépare l'environnement à exécuter les charges de travail dans NVIDIA PyTorch, NVIDIA NeMo Platform et d'autres conteneurs.

      Note :

      Il est important de sélectionner cette option.
    • Sélectionnez Installer le plugiciel NVIDIA Pyxis pour Slurm.
    • Sélectionnez Activer PAM pour limiter l'accès de connexion aux noeuds de calcul.
  9. Débogage : Assurez-vous que l'option Configurer le système est sélectionnée (il s'agit de la valeur par défaut).
  10. Cliquez sur Suivant pour vérifier les paramètres de configuration.

    En cours de vérification, la configuration de la grappe affiche toutes vos sélections non par défaut. Vous pouvez retourner la page Précédent pour apporter des modifications et revoir tous les paramètres.

  11. Sélectionnez Exécuter l'application, puis cliquez sur Créer pour lancer la pile dans votre location et créer la grappe.
    La pile est créée dans le gestionnaire de ressources OCI et lancée avec vos spécifications pour commencer le provisionnement immédiatement.

    Ce processus peut prendre quelques minutes. Le provisionnement des noeuds ne prend que quelques minutes par noeud de calcul, mais l'installation de logiciels supplémentaires sur les noeuds ajoute au temps de création. Vous pouvez surveiller la progression de la compilation dans la console OCI. Allez à Gestionnaire de ressources, puis à Tâches pour vérifier le journal de tâche le plus récent pour connaître l'activité et les erreurs possibles. Lorsque le statut de la tâche du gestionnaire de ressources indique Réussite, le déploiement est terminé.

    Si le statut final échoue, consultez le journal de tâche pour plus de détails. Pour les problèmes liés aux instances de calcul et aux réseaux en grappe, des informations supplémentaires peuvent être disponibles sous Demandes de travail de réseau en grappe. Pour naviguer jusqu'à la page, allez à Calcul, Réseaux en grappe, Détails du réseau en grappe, puis Demandes de travail de réseau en grappe. Sélectionnez la demande de travail la plus récente pour en voir les détails.

  12. Pour les compilations réussies, l'adresse IP de l'hôte bastion est indiquée à la fin du journal des tâches. Si vous avez configuré un noeud de connexion supplémentaire, l'adresse IP du noeud de connexion est également affichée. Par exemple,
    Apply complete! Resources: 23 added, 0 changed, 0 destroyed.
    
    Outputs:
    RDMA_NIC_metrics_url = "https://objectstorage.us-gov-phoenix-1.oraclecloud.com
    backup = "No Slurm Backup Defined"
    bastion = 139.87.214.247
    login = "No Login Node Defined"
    private_ips = 172.16.6.4 172.16.7.109"
  13. Notez l'adresse IP publique de l'hôte bastion, car elle est nécessaire pour se connecter à la grappe.
    Vous pouvez également localiser les adresses IP dans la console OCI sous Calcul, puis sous Instances.