Création d'un groupe de nœuds de calcul dans AWS PCS - AWS PCS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'un groupe de nœuds de calcul dans AWS PCS

Cette rubrique fournit une vue d'ensemble des options disponibles et décrit les éléments à prendre en compte lorsque vous créez un groupe de nœuds de calcul dans AWS Parallel Computing Service (AWS PCS). Si c'est la première fois que vous créez un groupe de nœuds de calcul dans AWS PCS, nous vous recommandons de suivre le didacticiel dansCommencer avec AWS PCS. Le didacticiel peut vous aider à créer un HPC système fonctionnel sans étendre toutes les options disponibles et les architectures système possibles.

Prérequis

  • Quotas de service suffisants pour lancer le nombre d'EC2instances souhaité dans votre Région AWS. Vous pouvez utiliser le AWS Management Consolepour vérifier et demander des augmentations de vos quotas de service.

  • Un réseau existant VPC et un ou plusieurs sous-réseaux qui répondent aux exigences du AWS PCS réseau. Nous vous recommandons de bien comprendre ces exigences avant de déployer un cluster à des fins de production. Pour de plus amples informations, veuillez consulter AWS PCSVPCexigences et considérations relatives aux sous-réseaux. Vous pouvez également utiliser un CloudFormation modèle pour créer des sous-réseaux VPC et. AWS fournit une HPC recette pour le CloudFormation modèle. Pour plus d'informations, voir aws-hpc-recipesci-dessous GitHub.

  • Un profil d'IAMinstance avec les autorisations nécessaires pour lancer l' AWS PCSRegisterComputeNodeGroupInstanceAPIaction et accéder à toutes les autres AWS ressources requises pour les instances de votre groupe de nœuds. Pour de plus amples informations, veuillez consulter IAMprofils d'instance pour AWS Parallel Computing Service.

  • Un modèle de lancement pour les instances de votre groupe de nœuds. Pour de plus amples informations, veuillez consulter Utilisation des modèles EC2 de lancement Amazon avec AWS PCS.

  • Pour créer un groupe de nœuds de calcul utilisant des instances Amazon EC2 Spot, vous devez avoir le rôle AWSServiceRoleForEC2Spotlié au service dans votre. Compte AWS Pour de plus amples informations, veuillez consulter Rôle Amazon EC2 Spot pour AWS PCS.

Créez un groupe de nœuds de calcul dans AWS PCS

Vous pouvez créer un groupe de nœuds de calcul à l'aide du AWS Management Console ou du AWS CLI.

AWS Management Console
Pour créer votre groupe de nœuds de calcul à l'aide de la console
  1. Ouvrez la AWS PCSconsole.

  2. Sélectionnez le cluster dans lequel vous souhaitez créer un groupe de nœuds de calcul. Accédez à Compute node groups et choisissez Create.

  3. Dans la section Configuration du groupe de nœuds de calcul, donnez un nom à votre groupe de nœuds. Le nom ne peut contenir que des caractères alphanumériques et des tirets distinguant majuscules et minuscules. Il doit commencer par un caractère alphabétique et ne doit pas comporter plus de 25 caractères. Le nom doit être unique au sein du cluster.

  4. Sous Configuration informatique, entrez ou sélectionnez les valeurs suivantes :

    1. EC2modèle de lancement : sélectionnez un modèle de lancement personnalisé à utiliser pour ce groupe de nœuds. Les modèles de lancement peuvent être utilisés pour personnaliser les paramètres réseau tels que les sous-réseaux et les groupes de sécurité, la configuration de surveillance et le stockage au niveau de l'instance. Si vous n'avez pas préparé de modèle de lancement, consultez la section Utilisation des modèles EC2 de lancement Amazon avec AWS PCS pour savoir comment en créer un.

      Important

      AWS PCScrée un modèle de lancement géré pour chaque groupe de nœuds de calcul. Ils sont nomméspcs-identifier-do-not-delete. Ne les sélectionnez pas lorsque vous créez ou mettez à jour un groupe de nœuds de calcul, sinon le groupe de nœuds ne fonctionnera pas correctement.

    2. EC2version du modèle de lancement : sélectionnez une version de votre modèle de lancement personnalisé. Vous pouvez choisir une version spécifique, qui peut améliorer la reproductibilité. Si vous modifiez la version ultérieurement, vous devez mettre à jour le groupe de nœuds de calcul pour détecter les modifications apportées au modèle de lancement. Pour de plus amples informations, veuillez consulter Mise à jour d'un groupe AWS PCS de nœuds de calcul.

    3. AMIID : si votre modèle de lancement n'inclut pas d'AMIidentifiant, ou si vous souhaitez remplacer la valeur du modèle de lancement, indiquez-en un AMI ici. Notez que le nom AMI utilisé pour le groupe de nœuds doit être compatible avec AWS PCS. Vous pouvez également sélectionner un échantillon AMI fourni par AWS. Pour plus d'informations sur ce sujet, consultezAmazon Machine Images (AMIs) pour AWS PCS.

    4. IAMprofil d'instance — Choisissez un profil d'instance pour le groupe de nœuds. Un profil d'instance accorde à l'instance les autorisations nécessaires pour accéder aux AWS ressources et aux services en toute sécurité. Si vous n'en avez pas préparé un, consultez IAMprofils d'instance pour AWS Parallel Computing Service la section pour savoir comment en créer un.

    5. Sous-réseaux — Choisissez un ou plusieurs sous-réseaux dans l'VPCendroit où votre AWS PCS cluster est déployé. Si vous sélectionnez plusieurs sous-réseaux, les EFA communications ne seront pas disponibles entre les nœuds et la communication entre les nœuds de différents sous-réseaux peut augmenter le temps de latence. Assurez-vous que les sous-réseaux que vous spécifiez ici correspondent à ceux que vous définissez dans le modèle de EC2 lancement.

    6. Instances — Choisissez un ou plusieurs types d'instances pour répondre aux demandes de dimensionnement dans le groupe de nœuds. Tous les types d'instances doivent avoir la même architecture de processeur (x864_64 ou arm64) et le même nombre de. vCPUs Si les instances en ontGPUs, tous les types d'instances doivent avoir le même nombre deGPUs.

    7. Configuration de dimensionnement : spécifiez le nombre minimum et maximum d'instances pour le groupe de nœuds. Vous pouvez définir soit une configuration statique, dans laquelle un nombre fixe de nœuds sont en cours d'exécution, soit une configuration dynamique, dans laquelle le nombre maximum de nœuds peut être exécuté. Pour une configuration statique, définissez le minimum et le maximum sur le même nombre, supérieur à zéro. Pour une configuration dynamique, définissez le nombre minimum d'instances à zéro et le nombre maximal d'instances à un nombre supérieur à zéro. AWS PCSne prend pas en charge les groupes de nœuds de calcul composés d'une combinaison d'instances statiques et dynamiques.

  5. (Facultatif) Sous Paramètres supplémentaires, spécifiez les éléments suivants :

    1. Option d'achat : choisissez entre les instances Spot et On-Demand.

    2. Stratégie d'allocation : si vous avez sélectionné l'option d'achat ponctuel, vous pouvez spécifier comment les pools de capacité ponctuels sont choisis lors du lancement des instances dans le groupe de nœuds. Pour plus d'informations, consultez la section Stratégies d'allocation pour les instances Spot dans le guide de l'utilisateur d'Amazon Elastic Compute Cloud. Cette option n'a aucun effet si vous avez sélectionné l'option d'achat à la demande.

  6. (Facultatif) Dans la section Slurmdes paramètres personnalisés, indiquez les valeurs suivantes :

    1. Poids : cette valeur définit la priorité des nœuds du groupe à des fins de planification. Les nœuds dont le poids est faible ont une priorité plus élevée et les unités sont arbitraires. Pour plus d'informations, consultez la section Poids dans la Slurm documentation.

    2. Mémoire réelle : cette valeur définit la taille (en Go) de la mémoire réelle sur les nœuds du groupe de nœuds. Il est destiné à être utilisé conjointement avec l'CR_CPU_Memoryoption de la Slurm configuration du cluster dans AWS PCS. Pour plus d'informations, consultez RealMemoryla Slurm documentation.

  7. (Facultatif) Sous Balises, ajoutez des balises à votre groupe de nœuds de calcul.

  8. Choisissez Créer un groupe de nœuds de calcul. Le champ Status s'affiche Creating lors du AWS PCS provisionnement du groupe de nœuds. Cela peut prendre plusieurs minutes.

Étape suivante recommandée
  • Ajoutez votre groupe de nœuds à une file d'attente AWS PCS pour lui permettre de traiter les tâches.

AWS CLI
Pour créer votre groupe de nœuds de calcul à l'aide de AWS CLI

Créez votre file d'attente avec la commande suivante. Avant d'exécuter la commande, effectuez les remplacements suivants :

  1. Remplacez regionavec l'ID du dans Région AWS lequel créer votre cluster, tel queus-east-1.

  2. Remplacez my-cluster avec le nom ou celui clusterId de votre cluster.

  3. Remplacez my-node-groupavec le nom de votre groupe de nœuds de calcul. Un nom ne peut contenir que des caractères alphanumériques (sensibles à la casse) et des traits d'union. Il doit commencer par un caractère alphabétique et ne doit pas comporter plus de 25 caractères. Le nom doit être unique au sein du cluster.

  4. Remplacez subnet-ExampleID1 avec un ou plusieurs sous-réseaux IDs de votre clusterVPC.

  5. Remplacez lt-ExampleID1 avec l'ID de votre modèle de lancement personnalisé. Si vous n'en avez pas préparé un, consultez Utilisation des modèles EC2 de lancement Amazon avec AWS PCS la section pour savoir comment en créer un.

    Important

    AWS PCScrée un modèle de lancement géré pour chaque groupe de nœuds de calcul. Ils sont nomméspcs-identifier-do-not-delete. Ne les sélectionnez pas lorsque vous créez ou mettez à jour un groupe de nœuds de calcul, sinon le groupe de nœuds ne fonctionnera pas correctement.

  6. Remplacez launch-template-version avec une version de modèle de lancement spécifique si vous souhaitez associer votre groupe de nœuds à une version spécifique.

  7. Remplacez arn:InstanceProfileavec le profil ARN de votre IAM instance. Si vous n'en avez pas préparé un, consultez Utilisation des modèles EC2 de lancement Amazon avec AWS PCS pour obtenir des conseils.

  8. Remplacez min-instances and max-instances avec des valeurs entières. Vous pouvez définir soit une configuration statique, dans laquelle un nombre fixe de nœuds sont en cours d'exécution, soit une configuration dynamique, dans laquelle le nombre maximum de nœuds peut être exécuté. Pour une configuration statique, définissez le minimum et le maximum sur le même nombre, supérieur à zéro. Pour une configuration dynamique, définissez le nombre minimum d'instances à zéro et le nombre maximal d'instances à un nombre supérieur à zéro. AWS PCSne prend pas en charge les groupes de nœuds de calcul composés d'une combinaison d'instances statiques et dynamiques.

  9. Remplacez t3.large avec un autre type d'instance. Vous pouvez ajouter d'autres types d'instances en spécifiant une liste de instanceType paramètres. Par exemple, --instance-configs instanceType=c6i.16xlarge,instanceType=c6a.16xlarge. Tous les types d'instances doivent avoir la même architecture de processeur (x864_64 ou arm64) et le même nombre de. vCPUs Si les instances en ontGPUs, tous les types d'instances doivent avoir le même nombre deGPUs.

aws pcs create-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-name my-node-group \ --subnet-ids subnet-ExampleID1 \ --custom-launch-template id=lt-ExampleID1,version='launch-template-version' \ --iam-instance-profile arn=arn:InstanceProfile \ --scaling-config minInstanceCount=min-instances,maxInstanceCount=max-instance \ --instance-configs instanceType=t3.large

Vous pouvez ajouter plusieurs paramètres de configuration facultatifs à la create-compute-node-group commande.

  • Vous pouvez spécifier --amiId si votre modèle de lancement personnalisé n'inclut pas de référence à unAMI, ou si vous souhaitez remplacer cette valeur. Notez que le nom AMI utilisé pour le groupe de nœuds doit être compatible avec AWS PCS. Vous pouvez également sélectionner un échantillon AMI fourni par AWS. Pour plus d'informations sur ce sujet, consultezAmazon Machine Images (AMIs) pour AWS PCS.

  • Vous pouvez choisir entre des instances à la demande (ONDEMAND) et des instances Spot (SPOT) à l'aide de--purchase-option. On-Demand est la valeur par défaut. Si vous choisissez des instances Spot, vous pouvez également les utiliser --allocation-strategy pour définir comment choisir AWS PCS les pools de capacité Spot lorsqu'il lance des instances dans le groupe de nœuds. Pour plus d'informations, consultez la section Stratégies d'allocation pour les instances Spot dans le guide de l'utilisateur d'Amazon Elastic Compute Cloud.

  • Il est possible de fournir des options Slurm de configuration pour les nœuds du groupe de nœuds à l'aide de--slurm-configuration. Vous pouvez définir le poids (priorité de planification) et la mémoire réelle. Les nœuds dont le poids est faible ont une priorité plus élevée et les unités sont arbitraires. Pour plus d'informations, consultez la section Poids dans la Slurm documentation. La mémoire réelle définit la taille (en Go) de la mémoire réelle sur les nœuds du groupe de nœuds. Il est destiné à être utilisé conjointement avec l'CR_CPU_Memoryoption pour le cluster AWS PCS dans votre Slurm configuration. Pour plus d'informations, consultez RealMemoryla Slurm documentation.

Important

La création du groupe de nœuds de calcul peut prendre plusieurs minutes.

Vous pouvez demander l'état de votre groupe de nœuds à l'aide de la commande suivante. Vous ne pourrez pas associer le groupe de nœuds à une file d'attente tant que son statut ne sera pas atteintACTIVE.

aws pcs get-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-node-group