Scheduling Section - AWS ParallelCluster

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.

Scheduling Section

(Obligatoire) Définit le planificateur de tâches utilisé dans le cluster et les instances de calcul qu'il gère. Vous pouvez soit utiliser le Slurm ou AWS Batch planificateur. Chacun prend en charge un ensemble différent de paramètres et de propriétés.

Scheduling: Scheduler: slurm ScalingStrategy: string SlurmSettings: MungeKeySecretArn: string ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string DatabaseName: string ExternalSlurmdbd: boolean Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string
Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Propriétés de Scheduling

Scheduler(Obligatoire,String)

Spécifie le type de planificateur utilisé. Les valeurs prises en charge sont slurm et awsbatch.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

Note

awsbatchne prend en charge que le système alinux2 d'exploitation et x86_64 la plate-forme.

ScalingStrategy(Facultatif,String)

Vous permet de choisir le degré de dynamique Slurm les nœuds augmentent. Les valeurs prises en charge sontall-or-nothing, greedy-all-or-nothing et best-effort La valeur par défaut estall-or-nothing.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

La stratégie de dimensionnement s'applique uniquement aux nœuds devant être repris par Slurm, et non aux nœuds qui sont finalement déjà en cours d'exécution.

  • all-or-nothingCette stratégie suit strictement un all-or-nothing-approach, visant à éviter les instances inactives à la fin du processus de dimensionnement. Il fonctionne sur une all-or-nothing base, ce qui signifie qu'il évolue complètement ou pas du tout. Sachez que le lancement temporaire d'instances peut entraîner des coûts supplémentaires lorsque les tâches nécessitent plus de 500 nœuds ou couvrent plusieurs ressources de calcul. Cette stratégie présente le débit le plus faible parmi les trois stratégies de mise à l'échelle possibles. Le délai de mise à l'échelle dépend du nombre de tâches soumises par Slurm reprendre l'exécution du programme. Vous ne pouvez pas non plus dépasser la limite de compte de RunInstances ressources par défaut par exécution, qui est de 1 000 instances par défaut. Vous trouverez plus de détails dans la documentation Amazon EC2 API Throttling

  • greedy-all-or-nothing À l'instar de la all-or-nothing stratégie, elle vise à éviter les instances inactives après le dimensionnement. Cette stratégie permet de surdimensionner temporairement pendant le processus de dimensionnement afin d'atteindre un débit supérieur à celui de l' all-or-nothingapproche, mais elle est également assortie de la même limite de mise à l'échelle de 1 000 instances conformément à la limite du compte de RunInstances ressources.

  • best-effort Cette stratégie donne la priorité au débit élevé, même si cela signifie que certaines instances peuvent être inactives à la fin du processus de dimensionnement. Il essaie d'allouer autant de nœuds que demandé par les tâches, mais il est possible que la demande ne soit pas traitée dans son intégralité. Contrairement aux autres stratégies, l'approche basée sur le meilleur effort permet d'accumuler un plus grand nombre d'instances que la RunInstances limite standard, au prix de l'inactivité des ressources lors des multiples exécutions des processus de dimensionnement.

Chaque stratégie est conçue pour répondre à différents besoins de mise à l'échelle, ce qui vous permet de sélectionner celle qui répond à vos exigences et contraintes spécifiques.

AwsBatchQueues

(Facultatif) Les paramètres de la AWS Batch file d'attente. Une seule file d'attente est prise en charge. Si ce Schedulerparamètre est défini surawsbatch, cette section est obligatoire. Pour plus d'informations sur le awsbatch planificateur, consultez les sections Configuration réseau et. Utilisation du AWS Batchawsbatch planificateur () avec AWS ParallelCluster

AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Propriétés de AwsBatchQueues

Name(Obligatoire,String)

Nom de la AWS Batch file d'attente.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

CapacityType(Facultatif,String)

Type de ressources de calcul utilisées par la AWS Batch file d'attente. Les valeurs prises en charge sontONDEMAND, SPOT ouCAPACITY_BLOCK. La valeur par défaut est ONDEMAND.

Note

Si vous le définissez CapacityTypeSPOT, votre compte doit contenir un rôle AWSServiceRoleForEC2Spot lié à un service. Vous pouvez créer ce rôle à l'aide de la AWS CLI commande suivante.

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Pour plus d'informations, consultez la section Rôle lié au service pour les demandes d'instance Spot dans le guide de EC2 l'utilisateur Amazon Amazon pour les instances Linux.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

Networking

(Obligatoire) Définit la configuration réseau de la AWS Batch file d'attente.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string
Propriétés de Networking
SubnetIds(Obligatoire,[String])

Spécifie l'ID d'un sous-réseau existant dans lequel approvisionner la AWS Batch file d'attente. Actuellement, un seul sous-réseau est pris en charge.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

AssignPublicIp(Facultatif,String)

Crée ou attribue une adresse IP publique aux nœuds de la AWS Batch file d'attente. Les valeurs prises en charge sont true et false. La valeur par défaut dépend du sous-réseau que vous avez spécifié.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

SecurityGroups(Facultatif,[String])

Liste des groupes de sécurité utilisés par la AWS Batch file d'attente. Si vous ne spécifiez aucun groupe de sécurité, AWS ParallelCluster crée de nouveaux groupes de sécurité.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

AdditionalSecurityGroups(Facultatif,[String])

Liste des groupes de sécurité utilisés par la AWS Batch file d'attente.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

ComputeResources

(Obligatoire) Définit la ComputeResources configuration de la AWS Batch file d'attente.

ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float
Propriétés de ComputeResources
Name(Obligatoire,String)

Nom de l'environnement de calcul de la AWS Batch file d'attente.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

InstanceTypes(Obligatoire,[String])

Le tableau des types d'instances de l'environnement de AWS Batch calcul. Tous les types d'instances doivent utiliser l'x86_64architecture.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

MinvCpus(Facultatif,Integer)

Le nombre minimal de VCPUs substances qu'un environnement AWS Batch informatique peut utiliser.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

DesiredVcpus(Facultatif,Integer)

Le nombre souhaité de VCPUs dans l'environnement AWS Batch informatique. AWS Batch ajuste cette valeur entre MinvCpus et en MaxvCpus fonction de la demande dans la file d'attente des tâches.

Politique de mise à jour : ce paramètre n'est pas analysé lors d'une mise à jour.

MaxvCpus(Facultatif,Integer)

Le nombre maximum de VCPUs pour l'environnement AWS Batch de calcul. Vous ne pouvez pas définir une valeur inférieure àDesiredVcpus.

Politique de mise à jour : ce paramètre ne peut pas être réduit lors d'une mise à jour.

SpotBidPercentage(Facultatif,Float)

Pourcentage maximum du prix à la demande pour le type d'instance que le prix d'une instance Amazon EC2 Spot peut atteindre avant le lancement des instances. La valeur par défaut est 100 (100 %). La plage prise en charge est de 1 -100.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

SlurmQueues

(Facultatif) Paramètres pour Slurm queue. Si ce Schedulerparamètre est défini surslurm, cette section est obligatoire.

SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string

Politique de mise à jour : pour ce paramètre de valeurs de liste, une nouvelle valeur peut être ajoutée lors d'une mise à jour ou le parc informatique doit être arrêté lors de la suppression d'une valeur existante.

Propriétés de SlurmQueues

Name(Obligatoire,String)

Le nom du Slurm queue.

Note

La taille du cluster peut changer lors d'une mise à jour. Pour plus d'informations, voir Taille et mise à jour de la capacité du cluster

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

CapacityReservationTarget
Note

CapacityReservationTargetest ajouté avec la AWS ParallelCluster version 3.3.0.

CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Spécifie la réservation de capacité à la demande pour les ressources de calcul de la file d'attente.

CapacityReservationId(Facultatif,String)

L'ID de la réservation de capacité existante à cibler pour les ressources de calcul de la file d'attente. L'ID peut faire référence à un ODCRou à un bloc de capacité pour ML.

La réservation doit utiliser la même plateforme que celle utilisée par l'instance. Par exemple, si vos instances s'exécutent surrhel8, votre réservation de capacité doit s'exécuter sur la plate-forme Red Hat Enterprise Linux. Pour plus d'informations, consultez la section Plateformes prises en charge dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux.

Note

Si vous incluez Instancesdans la configuration du cluster, vous devez exclure ce CapacityReservationId paramètre de niveau de file d'attente de la configuration.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

CapacityReservationResourceGroupArn(Facultatif,String)

Le nom de ressource Amazon (ARN) du groupe de ressources qui sert de groupe lié au service pour les réservations de capacité pour les ressources de calcul de la file d'attente. AWS ParallelCluster identifie et utilise la réservation de capacité la plus appropriée auprès du groupe de ressources en fonction des conditions suivantes :

Le groupe de ressources doit en avoir au moins une ODCR pour chaque type d'instance réservée dans une zone de disponibilité pour toutes les ressources de calcul et zones de disponibilité de la file d'attente. Pour de plus amples informations, veuillez consulter Lancer des instances avec des réservations de capacité à la demande (ODCR).

Pour plus d'informations sur les exigences de configuration de plusieurs sous-réseaux, consultez Networking/SubnetIds.

Note

Plusieurs zones de disponibilité ont été ajoutées dans la AWS ParallelCluster version 3.4.0.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

CapacityType(Facultatif,String)

Le type de ressources de calcul que le Slurm utilisations des files d'attente. Les valeurs prises en charge sontONDEMAND, SPOT ouCAPACITY_BLOCK. La valeur par défaut est ONDEMAND.

Note

Si vous définissez le paramètre CapacityType surSPOT, votre compte doit avoir un rôle AWSServiceRoleForEC2Spot lié au service. Vous pouvez créer ce rôle à l'aide de la AWS CLI commande suivante.

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Pour plus d'informations, consultez la section Rôle lié au service pour les demandes d'instance Spot dans le guide de EC2 l'utilisateur Amazon Amazon pour les instances Linux.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

AllocationStrategy(Facultatif,String)

Spécifiez la stratégie d'allocation pour toutes les ressources de calcul définies dans Instances.

Valeurs valides : lowest-price | capacity-optimized | price-capacity-optimized

Par défaut : lowest-price

lowest-price
  • Si vous l'utilisezCapacityType = ONDEMAND, Amazon EC2 Fleet utilise le prix pour déterminer la commande et lance d'abord les instances au prix le plus bas.

  • Si vous en utilisezCapacityType = SPOT, Amazon EC2 Fleet lance des instances à partir du pool d'instances Spot le moins cher disposant de la capacité disponible. Si un pool est à court de capacité avant d'atteindre la capacité requise, Amazon EC2 Fleet répond à votre demande en lançant des instances pour vous. Amazon EC2 Fleet lance notamment des instances à partir du pool d'instances Spot le moins cher disposant de la capacité disponible. Amazon EC2 Fleet peut lancer des instances Spot à partir de plusieurs pools différents.

  • Si vous définissezCapacityType = CAPACITY_BLOCK, il n'existe aucune stratégie d'allocation, le AllocationStrategy paramètre ne peut donc pas être configuré.

capacity-optimized
  • Si vous avez définiCapacityType = ONDEMAND, capacity-optimized n'est pas disponible.

  • Si vous le souhaitezCapacityType = SPOT, Amazon EC2 Fleet lance des instances à partir de pools d'instances Spot avec une capacité optimale compte tenu du nombre d'instances à lancer.

price-capacity-optimized
  • Si vous avez définiCapacityType = ONDEMAND, capacity-optimized n'est pas disponible.

  • Si vous le définissezCapacityType = SPOT, Amazon EC2 Fleet identifie les pools présentant la disponibilité de capacité la plus élevée en fonction du nombre d'instances lancées. Cela signifie que nous demanderons des instances Spot auprès des groupes qui, selon nous, présentent le moins de risques d’interruption à court terme. Amazon EC2 Fleet demande ensuite des instances Spot auprès du pool le moins cher.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Note

AllocationStrategyest pris en charge à partir de AWS ParallelCluster la version 3.3.0.

JobExclusiveAllocation(Facultatif,String)

S'il est défini surtrue, le Slurm le OverSubscribe drapeau de partition est défini surEXCLUSIVE. Lorsque OverSubscribe =EXCLUSIVE, les tâches de la partition ont un accès exclusif à tous les nœuds alloués. Pour plus d'informations, consultez EXCLUSIVEle Slurm .

Valeurs valides : true | false

Par défaut: false

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

JobExclusiveAllocationest pris en charge à partir de AWS ParallelCluster la version 3.7.0.

CustomSlurmSettings(Facultatif,Dict)

Définit la coutume Slurm paramètres de configuration de partition (file d'attente).

Spécifie un dictionnaire personnalisé Slurm paires clé-valeur des paramètres de configuration qui s'appliquent aux files d'attente (partitions).

Chaque paire clé-valeur distincte, telle queParam1: Value1, est ajoutée séparément à la fin du Slurm ligne de configuration de partition au formatParam1=Value1.

Vous ne pouvez que spécifier Slurm paramètres de configuration qui ne sont pas refusés dans. CustomSlurmSettings Pour plus d'informations sur la liste refusée Slurm paramètres de configuration, voirListé par DenySlurmparamètres de configuration pourCustomSlurmSettings.

AWS ParallelCluster vérifie uniquement si un paramètre figure dans une liste de refus. AWS ParallelCluster ne valide pas votre personnalisation Slurm syntaxe ou sémantique des paramètres de configuration. Vous êtes responsable de la validation de votre personnalisation Slurm paramètres de configuration. Personnalisation non valide Slurm les paramètres de configuration peuvent provoquer Slurm défaillances de daemon pouvant entraîner des échecs de création et de mise à jour de clusters.

Pour plus d'informations sur la façon de définir un paramètre personnalisé Slurm paramètres de configuration avec AWS ParallelCluster, voirSlurmpersonnalisation de la configuration.

Pour plus d'informations sur Slurm paramètres de configuration, voir slurm.conf dans Slurm .

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

CustomSlurmSettingsest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

Tags(Facultatif, [Chaîne])

Une liste de paires clé-valeur de balises. ComputeResourceles balises remplacent les balises dupliquées spécifiées dans le Tags Section ou dansSlurmQueues/Tags.

Key(Facultatif,String)

Identification de balise.

Value(Facultatif,String)

Valeur de balise.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

HealthChecks(Facultatif)

Spécifiez les contrôles de santé des nœuds de calcul sur toutes les ressources informatiques de la file d'attente.

Gpu(Facultatif)

Spécifiez les contrôles de GPU santé de toutes les ressources informatiques d'une file d'attente.

Note

AWS ParallelCluster ne prend pas en chargeHealthChecks/Gpudans les nœuds utilisant des systèmes alinux2 ARM d'exploitation. Ces plateformes ne prennent pas en charge le NVIDIAData Center GPU Manager (DCGM).

Enabled(Facultatif,Boolean)

AWS ParallelCluster Effectue ou non des contrôles de GPU santé sur les nœuds de calcul. L’argument par défaut est false.

Gpucomportement en matière de bilan de santé
  • SiGpu/Enabledest défini surtrue, AWS ParallelCluster effectue des contrôles GPU de santé sur les ressources informatiques de la file d'attente.

  • Le bilan Gpu de santé effectue des contrôles de GPU santé sur les ressources informatiques afin d'empêcher la soumission de tâches sur les nœuds présentant un état dégradé. GPU

  • Si un nœud de calcul échoue à un contrôle de Gpu santé, l'état du nœud de calcul passe àDRAIN. Les nouvelles tâches ne démarrent pas sur ce nœud. Les tâches existantes s'exécutent jusqu'à leur fin. Une fois toutes les tâches en cours d'exécution terminées, le nœud de calcul se termine s'il s'agit d'un nœud dynamique, et il est remplacé s'il s'agit d'un nœud statique.

  • La durée du bilan de Gpu santé dépend du type d'instance sélectionné, du nombre d'instances GPUs présentes dans l'instance et du nombre de cibles du bilan de Gpu santé (équivalent au nombre d'GPUobjectifs de travail). Pour une instance comportant 8GPUs, la durée typique est inférieure à 3 minutes.

  • Si le bilan Gpu de santé s'exécute sur une instance qui n'est pas prise en charge, elle s'arrête et la tâche s'exécute sur le nœud de calcul. Par exemple, si une instance n'en possède pasGPU, ou si une instance en possède unGPU, mais ce n'est pas le cas NVIDIAGPU, le bilan de santé s'arrête et la tâche s'exécute sur le nœud de calcul. Seuls NVIDIA GPUs sont pris en charge.

  • Le Gpu bilan de santé utilise l'dcgmioutil pour effectuer des contrôles de santé sur un nœud et suit les étapes suivantes :

    Lorsque le Gpu bilan de santé commence dans un nœud :

    1. Il détecte si les nvidia-fabricmanager services nvidia-dcgm et sont en cours d'exécution.

    2. Si ces services ne fonctionnent pas, le bilan Gpu de santé les démarre.

    3. Il détecte si le mode de persistance est activé.

    4. Si le mode de persistance n'est pas activé, le Gpu bilan de santé l'active.

    À la fin du bilan de santé, le bilan de Gpu santé rétablit ces services et ressources dans leur état initial.

  • Si le travail est attribué à un ensemble de nœuds spécifiqueGPUs, le contrôle de Gpu santé ne s'exécute que sur cet ensemble spécifique. Dans le cas contraire, le bilan de Gpu santé s'exécute sur GPUs l'ensemble du nœud.

  • Si un nœud de calcul reçoit au moins deux demandes de contrôle de Gpu santé en même temps, seul le premier contrôle de santé est exécuté et les autres sont ignorés. C'est également le cas pour les bilans de santé ciblant le nœudGPUs. Vous pouvez consulter les fichiers journaux pour obtenir des informations supplémentaires concernant cette situation.

  • Le journal de vérification de l'état d'un nœud de calcul spécifique est disponible dans le /var/log/parallelcluster/slurm_health_check.log fichier. Le fichier est disponible sur Amazon CloudWatch, dans le groupe de CloudWatch journaux du cluster, où vous pouvez trouver :

    • Détails sur l'action exécutée par le bilan de Gpu santé, y compris l'activation et la désactivation des services et le mode de persistance.

    • L'GPUidentifiant, le numéro de série et leUUID.

    • Le résultat du bilan de santé.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

HealthChecksest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

Networking

(Obligatoire) Définit la configuration réseau pour Slurm queue.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Propriétés de Networking
SubnetIds(Obligatoire,[String])

Le IDs nombre de sous-réseaux existants que vous approvisionnez Slurm faire la queue.

Si vous configurez les types d'instances dans SlurmQueues/ComputeResources/InstanceType, vous ne pouvez définir qu'un seul sous-réseau.

Si vous configurez les types d'instances dans SlurmQueuesComputeResources//Instances, vous pouvez définir un ou plusieurs sous-réseaux.

Si vous utilisez plusieurs sous-réseaux, tous les sous-réseaux définis pour une file d'attente doivent être identiquesVPC, chaque sous-réseau se trouvant dans une zone de disponibilité (AZ) distincte.

Supposons, par exemple, que vous définissiez le sous-réseau 1 et le sous-réseau 2 pour votre file d'attente.

subnet-1et je ne subnet-2 peux pas être les deux dans l'AZ-1.

subnet-1peut être dans AZ-1 et subnet-2 peut être dans AZ-2.

Si vous configurez un seul type d'instance et que vous souhaitez utiliser plusieurs sous-réseaux, définissez votre type d'instance dans Instances plutôt que InstanceType dans.

Par exemple, définissezComputeResources/Instances/InstanceType= instance.type au lieu deComputeResources/InstanceType=instance.type.

Note

L'adaptateur Elastic Fabric (EFA) n'est pas pris en charge dans différentes zones de disponibilité.

L'utilisation de plusieurs zones de disponibilité peut entraîner une augmentation de la latence du réseau de stockage et des coûts supplémentaires de transfert de données inter-AZ. Cela peut se produire, par exemple, lorsqu'une instance accède à un stockage de fichiers situé dans une autre zone de disponibilité. Pour plus d'informations, consultez la section Transfert de données au sein d'un même appareil Région AWS.

Mises à jour du cluster pour passer de l'utilisation d'un seul sous-réseau à plusieurs sous-réseaux :
  • Supposons que la définition de sous-réseau d'un cluster soit définie avec un seul sous-réseau et un système de fichiers AWS ParallelCluster géré FSx pour Lustre. Dans ce cas, vous ne pouvez pas mettre à jour directement ce cluster avec une définition d'ID de sous-réseau mise à jour. Pour effectuer la mise à jour du cluster, vous devez d'abord remplacer le système de fichiers géré par un système de fichiers externe. Pour de plus amples informations, veuillez consulter Convertir le stockage AWS ParallelCluster géré en stockage externe.

  • Supposons que la définition de sous-réseau d'un cluster soit définie avec un seul sous-réseau et un système de EFS fichiers Amazon externe si les cibles de EFS montage n'existent pas AZs pour tous les sous-réseaux définis pour être ajoutés. Dans ce cas, vous ne pouvez pas mettre à jour directement ce cluster avec une définition d'ID de sous-réseau mise à jour. Pour mettre à jour le cluster ou pour créer un cluster, vous devez d'abord créer toutes les cibles de montage AZs pour tous les sous-réseaux définis.

Les zones de disponibilité et les réservations de capacité du cluster sont définies dans CapacityReservationResourceGroupArn:
  • Vous ne pouvez pas créer de cluster s'il n'y a aucun chevauchement entre l'ensemble de types d'instances et de zones de disponibilité couverts par le groupe de ressources de réservation de capacité défini et l'ensemble de types d'instances et de zones de disponibilité définis pour la file d'attente.

  • Vous pouvez créer un cluster s'il existe un chevauchement partiel entre l'ensemble de types d'instances et de zones de disponibilité couverts par le groupe de ressources de réservation de capacité défini et l'ensemble de types d'instances et de zones de disponibilité définis pour la file d'attente. AWS ParallelCluster envoie un message d'avertissement concernant le chevauchement partiel dans ce cas.

  • Pour de plus amples informations, veuillez consulter Lancer des instances avec des réservations de capacité à la demande (ODCR).

Note

Plusieurs zones de disponibilité ont été ajoutées dans la AWS ParallelCluster version 3.4.0.

Avertissement

Cet avertissement s'applique à toutes les AWS ParallelCluster versions 3.x.y antérieures à la version 3.3.1. AWS ParallelCluster la version 3.3.1 n'est pas affectée si ce paramètre est modifié.

Pour les AWS ParallelCluster 3 versions antérieures à la version 3.3.1 :

La modification de ce paramètre et la mise à jour d'un cluster créent un nouveau système de fichiers géré FSx pour Lustre et suppriment le système de fichiers géré FSx pour Lustre existant sans conserver les données existantes. Cela entraîne une perte de données. Avant de continuer, assurez-vous de sauvegarder les données du système de fichiers existant FSx pour Lustre si vous souhaitez conserver les données. Pour plus d'informations, consultez la section Utilisation des sauvegardes dans le guide de l'utilisateur de FSx for Lustre.

Si une nouvelle valeur de sous-réseau est ajoutée, Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Si une valeur de sous-réseau est supprimée, Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

AssignPublicIp(Facultatif,String)

Crée ou attribue une adresse IP publique aux nœuds du Slurm queue. Les valeurs prises en charge sont true et false. Le sous-réseau que vous spécifiez détermine la valeur par défaut. Sous-réseau public par IPs défaut pour l'attribution d'adresses IP publiques.

Si vous définissez un p4d or hpc6id type d'instance, ou autre type d'instance doté de plusieurs interfaces réseau ou d'une carte d'interface réseau, vous devez définir HeadNode/Networking/ElasticIpsur true pour fournir un accès public. AWS public ne IPs peut être attribué qu'aux instances lancées avec une seule interface réseau. Dans ce cas, nous vous recommandons d'utiliser une NATpasserelle pour fournir un accès public aux nœuds de calcul du cluster. Dans ce cas, réglez AssignPublicIp surfalse. Pour plus d'informations sur les adresses IP, consultez la section Attribuer une IPv4 adresse publique lors du lancement de l'instance dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

SecurityGroups(Facultatif,[String])

Liste des groupes de sécurité à utiliser pour Slurm queue. Si aucun groupe de sécurité n'est spécifié, AWS ParallelCluster crée des groupes de sécurité pour vous.

Vérifiez que les groupes de sécurité sont correctement configurés pour vos SharedStoragesystèmes.

Avertissement

Cet avertissement s'applique aux 3.x.y AWS ParallelCluster versions antérieures à la version 3.3.0. AWS ParallelCluster la version 3.3.0 n'est pas affectée si ce paramètre est modifié.

Pour les AWS ParallelCluster 3 versions antérieures à la version 3.3.0 :

La modification de ce paramètre et la mise à jour d'un cluster créent un nouveau système de fichiers géré FSx pour Lustre et suppriment le système de fichiers géré FSx pour Lustre existant sans conserver les données existantes. Cela entraîne une perte de données. Assurez-vous de sauvegarder les données du système de fichiers existant FSx pour Lustre si vous souhaitez conserver les données. Pour plus d'informations, consultez la section Utilisation des sauvegardes dans le guide de l'utilisateur de FSx for Lustre.

Avertissement

Si vous activez Efa pour vos instances de calcul, assurez-vous que celles-ci sont membres d'un groupe de sécurité qui autorise tout le trafic entrant et sortant à se diriger vers lui-même. EFA

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

AdditionalSecurityGroups(Facultatif,[String])

Liste des groupes de sécurité supplémentaires à utiliser pour Slurm queue.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

PlacementGroup(Facultatif)

Spécifie les paramètres du groupe de placement pour Slurm queue.

PlacementGroup: Enabled: boolean Id: string Name: string

Politique de mise à jour : tous les nœuds de calcul doivent être arrêtés pour la suppression d'un groupe de placement géré. Le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Enabled(Facultatif,Boolean)

Indique si un groupe de placement est utilisé pour Slurm queue. L’argument par défaut est false.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Id(Facultatif,String)

Le nom du groupe de placement d'un groupe de placement de clusters existant qui Slurm utilisations des files d'attente. Assurez-vous de fournir le nom du groupe de placement et non l'ID.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Name(Facultatif,String)

Le nom du groupe de placement d'un groupe de placement de clusters existant qui Slurm utilisations des files d'attente. Assurez-vous de fournir le nom du groupe de placement et non l'ID.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Note
Proxy(Facultatif)

Spécifie les paramètres de proxy pour Slurm queue.

Proxy: HttpProxyAddress: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

HttpProxyAddress(Facultatif,String)

Définit un serveur HTTPS proxy HTTP ou un serveur proxy pour Slurm queue. Généralement, c'est le cashttps://x.x.x.x:8080.

Il n'existe aucune valeur par défaut.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Image

(Facultatif) Spécifie l'image à utiliser pour Slurm queue. Pour utiliser la même chose AMI pour tous les nœuds, utilisez le CustomAmiparamètre de la Imagesection.

Image: CustomAmi: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

ImagePropriétés
CustomAmi(Facultatif,String)

Le AMI à utiliser pour Slurm file d'attente au lieu de la valeur par défautAMIs. Vous pouvez utiliser le plugin pcluster CLIcommande pour afficher la liste des valeurs par défautAMIs.

Note

AMIIl doit être basé sur le même système d'exploitation que celui utilisé par le nœud principal.

pcluster list-official-images

Si la personnalisation AMI nécessite des autorisations supplémentaires pour son lancement, vous devez ajouter ces autorisations à la politique du nœud principal.

Par exemple, si un instantané chiffré AMI est associé à une personnalisation, les politiques supplémentaires suivantes sont requises dans les politiques du nœud principal.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:<AWS_REGION>:<AWS_ACCOUNT_ID>:key/<AWS_KMS_KEY_ID>" ] } ] }

Pour résoudre les problèmes liés aux avertissements AMI de validation personnalisés, consultezRésolution des AMI problèmes personnalisés.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

ComputeResources

(Obligatoire) Définit la ComputeResources configuration pour Slurm queue.

Note

La taille du cluster peut changer lors d'une mise à jour. Pour plus d'informations, voir Taille et mise à jour de la capacité du cluster

ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string

Politique de mise à jour : pour ce paramètre de valeurs de liste, une nouvelle valeur peut être ajoutée lors d'une mise à jour ou le parc informatique doit être arrêté lors de la suppression d'une valeur existante.

Propriétés de ComputeResources
Name(Obligatoire,String)

Le nom du Slurm environnement de calcul en file d'attente. Le nom peut comporter jusqu'à 25 caractères.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

InstanceType(Obligatoire,String)

Le type d'instance utilisé dans ce Slurm ressource de calcul. Tous les types d'instances d'un cluster doivent utiliser la même architecture de processeur. Les instances peuvent utiliser l'arm64architecture x86_64 ou.

La configuration du cluster doit définir soit les instances, InstanceTypesoit les instances. Si les deux sont définis, AWS ParallelCluster échoue.

Lorsque vous définissezInstanceType, vous ne pouvez pas définir plusieurs sous-réseaux. Si vous configurez un seul type d'instance et que vous souhaitez utiliser plusieurs sous-réseaux, définissez votre type d'instance dans Instances plutôt que dansInstanceType. Pour plus d'informations, consultez Networking/SubnetIds.

Si vous définissez un p4d or hpc6id type d'instance, ou autre type d'instance doté de plusieurs interfaces réseau ou d'une carte d'interface réseau, vous devez lancer les instances de calcul dans un sous-réseau privé comme décrit dansAWS ParallelCluster en utilisant deux sous-réseaux. AWS public ne IPs peut être attribué qu'aux instances lancées avec une seule interface réseau. Pour plus d'informations, consultez la section Attribuer une IPv4 adresse publique lors du lancement de l'instance dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

Instances(Obligatoire)

Spécifie la liste des types d'instances pour une ressource de calcul. Pour spécifier la stratégie d'allocation pour la liste des types d'instances, consultez AllocationStrategy.

La configuration du cluster doit définir l'un InstanceTypeou l'autre Instances. Si les deux sont définis, AWS ParallelCluster échoue.

Pour de plus amples informations, veuillez consulter Allocation de plusieurs types d'instances avec Slurm.

Instances: - InstanceType: string
Note

À partir de AWS ParallelCluster la version 3.7.0, elle EnableMemoryBasedScheduling peut être activée si vous configurez plusieurs types d'instances dans Instances.

Pour AWS ParallelCluster les versions 3.2.0 à 3.6.x, ne EnableMemoryBasedScheduling peut pas être activé si vous configurez plusieurs types d'instances dans Instances.

Politique de mise à jour : pour ce paramètre de valeurs de liste, une nouvelle valeur peut être ajoutée lors d'une mise à jour ou le parc informatique doit être arrêté lors de la suppression d'une valeur existante.

InstanceType(Obligatoire,String)

Le type d'instance à utiliser dans ce Slurm ressource de calcul. Tous les types d'instances d'un cluster doivent utiliser la même architecture de processeur, x86_64 soitarm64.

Les types d'instances répertoriés dans Instancesdoivent avoir :

  • Le même nombre de cœurs ouvCPUs, s'il DisableSimultaneousMultithreadingest défini surtrue, le même nombre de cœurs.

  • Le même nombre d'accélérateurs des mêmes fabricants.

  • EFApris en charge, si Efa/Enabledest défini surtrue.

Les types d'instances répertoriés dans Instancespeuvent être les suivants :

  • Quantité de mémoire différente.

    Dans ce cas, la mémoire minimale doit être définie comme consommable Slurm ressource.

    Note

    À partir de AWS ParallelCluster la version 3.7.0, elle EnableMemoryBasedScheduling peut être activée si vous configurez plusieurs types d'instances dans Instances.

    Pour AWS ParallelCluster les versions 3.2.0 à 3.6.x, ne EnableMemoryBasedScheduling peut pas être activé si vous configurez plusieurs types d'instances dans Instances.

  • Différentes cartes réseau.

    Dans ce cas, le nombre d'interfaces réseau configurées pour la ressource de calcul est défini par le type d'instance possédant le plus petit nombre de cartes réseau.

  • Bande passante réseau différente.

  • Taille de magasin d'instance différente.

Si vous définissez un p4d or hpc6id type d'instance, ou autre type d'instance doté de plusieurs interfaces réseau ou d'une carte d'interface réseau, vous devez lancer les instances de calcul dans un sous-réseau privé comme décrit dansAWS ParallelCluster en utilisant deux sous-réseaux. AWS public ne IPs peut être attribué qu'aux instances lancées avec une seule interface réseau. Pour plus d'informations, consultez la section Attribuer une IPv4 adresse publique lors du lancement de l'instance dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

Note

Instancesest pris en charge à partir de AWS ParallelCluster la version 3.3.0.

MinCount(Facultatif,Integer)

Le nombre minimum d'instances que Slurm utilisation des ressources de calcul. La valeur par défaut est 0.

Note

La taille du cluster peut changer lors d'une mise à jour. Pour plus d'informations, voir Taille et mise à jour de la capacité du cluster

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

MaxCount(Facultatif,Integer)

Le nombre maximal d'instances que Slurm utilisation des ressources de calcul. La valeur par défaut est 10.

Lors de l'utilisationCapacityType = CAPACITY_BLOCK, MaxCount il doit être égal MinCount ou supérieur à 0, car toutes les instances faisant partie de la réservation du bloc de capacité sont gérées en tant que nœuds statiques.

Au moment de la création du cluster, le nœud principal attend que tous les nœuds statiques soient prêts avant de signaler le succès de la création du cluster. Toutefois, lors de l'utilisationCapacityType = CAPACITY_BLOCK, les nœuds faisant partie des ressources de calcul associées aux blocs de capacité ne seront pas pris en compte pour cette vérification. Le cluster sera créé même si tous les blocs de capacité configurés ne sont pas actifs.

Note

La taille du cluster peut changer lors d'une mise à jour. Pour plus d'informations, voir Taille et mise à jour de la capacité du cluster

DynamicNodePriority(Facultatif,Integer)

Priorité des nœuds dynamiques dans une ressource de calcul de file d'attente. Les cartes prioritaires correspondent à Slurm paramètre Weightde configuration de nœud pour les nœuds dynamiques de ressources de calcul. La valeur par défaut est 1000.

Slurm donne la priorité aux nœuds ayant les Weight valeurs les plus faibles en premier.

Avertissement

L'utilisation de nombreuses Weight valeurs différentes dans un Slurm la partition (file d'attente) peut ralentir le taux de planification des tâches dans la file d'attente.

Dans AWS ParallelCluster les versions antérieures à la version 3.7.0, le même poids par défaut était attribué aux nœuds statiques et dynamiques. 1 Dans ce cas, Slurm peut donner la priorité aux nœuds dynamiques inactifs par rapport aux nœuds statiques inactifs en raison du schéma de dénomination des nœuds statiques et dynamiques. Quand toutes les choses sont égales par ailleurs, Slurm planifie les nœuds par ordre alphabétique de leur nom.

Note

DynamicNodePriorityest ajouté dans la AWS ParallelCluster version 3.7.0.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

StaticNodePriority(Facultatif,Integer)

Priorité des nœuds statiques dans une ressource de calcul de file d'attente. Les cartes prioritaires correspondent à Slurm paramètre Weightde configuration de nœud pour les nœuds statiques de ressources de calcul. La valeur par défaut est 1.

Slurm donne la priorité aux nœuds ayant les Weight valeurs les plus faibles en premier.

Avertissement

L'utilisation de nombreuses Weight valeurs différentes dans un Slurm la partition (file d'attente) peut ralentir le taux de planification des tâches dans la file d'attente.

Note

StaticNodePriorityest ajouté dans la AWS ParallelCluster version 3.7.0.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

SpotPrice(Facultatif,Float)

Le prix maximum payé pour une instance Amazon EC2 Spot avant le lancement de toute instance. La valeur par défaut est le prix à la demande.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

DisableSimultaneousMultithreading(Facultatif,Boolean)

Sitrue, le multithreading sur les nœuds du Slurm la file d'attente est désactivée. La valeur par défaut est false.

Tous les types d'instances ne peuvent pas désactiver le multithreading. Pour obtenir la liste des types d'instances qui prennent en charge la désactivation du multithreading, consultez la section CPUcœurs et threads pour chaque CPU cœur par type d'instance dans le guide de l'utilisateur Amazon EC2.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

SchedulableMemory(Facultatif,Integer)

La quantité de mémoire en MiB configurée dans Slurm paramètre RealMemory pour les nœuds de calcul d'une ressource de calcul. Cette valeur est la limite supérieure de la mémoire de nœuds disponible pour les tâches lorsque SlurmSettings/EnableMemoryBasedSchedulingest activé. La valeur par défaut est de 95 % de la mémoire répertoriée dans Amazon EC2 Instance Types et renvoyée par Amazon EC2 API DescribeInstanceTypes. Assurez-vous de convertir les valeurs données en GiB en MiB.

Valeurs prises en charge : 1-EC2Memory

EC2Memoryest la mémoire (en MiB) répertoriée dans les types d'EC2instances Amazon et renvoyée par Amazon. EC2 API DescribeInstanceTypes Assurez-vous de convertir les valeurs données en GiB en MiB.

Cette option est particulièrement pertinente lorsque SlurmSettings/EnableMemoryBasedSchedulingest activé. Pour de plus amples informations, veuillez consulter Slurmplanification basée sur la mémoire.

Note

SchedulableMemoryest pris en charge à partir de AWS ParallelCluster la version 3.2.0.

À partir de la version 3.2.0, par défaut, AWS ParallelCluster configure pour RealMemory Slurm des nœuds de calcul sur 95 % de la mémoire renvoyée par Amazon EC2 APIDescribeInstanceTypes. Cette configuration est indépendante de la valeur deEnableMemoryBasedScheduling.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

HealthChecks(Facultatif)

Spécifiez les contrôles de santé d'une ressource de calcul.

Gpu(Facultatif)

Spécifiez les contrôles de GPU santé d'une ressource de calcul.

Enabled(Facultatif,Boolean)

AWS ParallelCluster Effectue des contrôles GPU de santé lors du calcul d'une ressource dans une file d'attente. L’argument par défaut est false.

Note

AWS ParallelCluster ne prend pas en chargeHealthChecks/Gpudans les nœuds utilisant des systèmes alinux2 ARM d'exploitation. Ces plateformes ne prennent pas en charge le NVIDIAData Center GPU Manager (DCGM).

Gpucomportement en matière de bilan de santé
  • SiGpu/Enabledest défini surtrue, AWS ParallelCluster effectue des contrôles GPU de santé sur une ressource de calcul.

  • Le bilan Gpu de santé effectue des contrôles de santé sur une ressource de calcul afin d'empêcher la soumission de tâches sur des nœuds présentant une valeur dégradée. GPU

  • Si un nœud de calcul échoue à un contrôle de Gpu santé, l'état du nœud de calcul passe àDRAIN. Les nouvelles tâches ne démarrent pas sur ce nœud. Les tâches existantes s'exécutent jusqu'à leur fin. Une fois toutes les tâches en cours d'exécution terminées, le nœud de calcul se termine s'il s'agit d'un nœud dynamique, et il est remplacé s'il s'agit d'un nœud statique.

  • La durée du bilan de Gpu santé dépend du type d'instance sélectionné, du nombre d'instances GPUs présentes dans l'instance et du nombre de cibles du bilan de Gpu santé (équivalent au nombre d'GPUobjectifs de travail). Pour une instance comportant 8GPUs, la durée typique est inférieure à 3 minutes.

  • Si le bilan Gpu de santé s'exécute sur une instance qui n'est pas prise en charge, elle s'arrête et la tâche s'exécute sur le nœud de calcul. Par exemple, si une instance n'en possède pasGPU, ou si une instance en possède unGPU, mais ce n'est pas le cas NVIDIAGPU, le bilan de santé s'arrête et la tâche s'exécute sur le nœud de calcul. Seuls NVIDIA GPUs sont pris en charge.

  • Le Gpu bilan de santé utilise l'dcgmioutil pour effectuer des contrôles de santé sur un nœud et suit les étapes suivantes :

    Lorsque le Gpu bilan de santé commence dans un nœud :

    1. Il détecte si les nvidia-fabricmanager services nvidia-dcgm et sont en cours d'exécution.

    2. Si ces services ne fonctionnent pas, le bilan Gpu de santé les démarre.

    3. Il détecte si le mode de persistance est activé.

    4. Si le mode de persistance n'est pas activé, le Gpu bilan de santé l'active.

    À la fin du bilan de santé, le bilan de Gpu santé rétablit ces services et ressources dans leur état initial.

  • Si le travail est attribué à un ensemble de nœuds spécifiqueGPUs, le contrôle de Gpu santé ne s'exécute que sur cet ensemble spécifique. Dans le cas contraire, le bilan de Gpu santé s'exécute sur GPUs l'ensemble du nœud.

  • Si un nœud de calcul reçoit au moins deux demandes de contrôle de Gpu santé en même temps, seul le premier contrôle de santé est exécuté et les autres sont ignorés. C'est également le cas pour les bilans de santé ciblant le nœudGPUs. Vous pouvez consulter les fichiers journaux pour obtenir des informations supplémentaires concernant cette situation.

  • Le journal de vérification de l'état d'un nœud de calcul spécifique est disponible dans le /var/log/parallelcluster/slurm_health_check.log fichier. Ce fichier est disponible sur Amazon CloudWatch, dans le groupe de CloudWatch journaux du cluster, où vous pouvez trouver :

    • Détails sur l'action exécutée par le bilan de Gpu santé, y compris l'activation et la désactivation des services et le mode de persistance.

    • L'GPUidentifiant, le numéro de série et leUUID.

    • Le résultat du bilan de santé.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

HealthChecksest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

Efa(Facultatif)

Spécifie les paramètres de l'adaptateur Elastic Fabric (EFA) pour les nœuds du Slurm queue.

Efa: Enabled: boolean GdrSupport: boolean

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Enabled(Facultatif,Boolean)

Spécifie qu'Elastic Fabric Adapter (EFA) est activé. Pour consulter la liste des EC2 instances Amazon compatiblesEFA, consultez la section Types d'instances pris en charge dans le Guide de EC2 l'utilisateur Amazon pour les instances Linux. Pour de plus amples informations, veuillez consulter Elastic Fabric Adapter. Nous vous recommandons d'utiliser un cluster SlurmQueues/Networking/PlacementGrouppour minimiser les latences entre les instances.

La valeur par défaut est false.

Note

L'adaptateur Elastic Fabric (EFA) n'est pas pris en charge dans différentes zones de disponibilité. Pour plus d'informations, consultez SubnetIds.

Avertissement

Si vous définissez un groupe de sécurité personnalisé dans SecurityGroups, assurez-vous que vos instances EFA activées sont membres d'un groupe de sécurité qui autorise l'intégralité du trafic entrant et sortant à destination de lui-même.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

GdrSupport(Facultatif,Boolean)

(Facultatif) À partir de AWS ParallelCluster la version 3.0.2, ce paramètre n'a aucun effet. La prise en charge par Elastic Fabric Adapter GPUDirect RDMA (EFA) pour (accès direct à distance à la mémoire) est toujours activée si elle est prise en charge par le type d'instance pour Slurm ressource de calcul et système d'exploitation.

Note

AWS ParallelCluster versions 3.0.0 à 3.0.1 : le support pour GPUDirect RDMA est activé pour Slurm ressources de calcul. Support pour GPUDirect RDMA est pris en charge par des types d'instances spécifiques (p4d.24xlarge) sur des systèmes d'exploitation spécifiques (Osis alinux2ubuntu1804, ouubuntu2004). La valeur par défaut est false.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

CapacityReservationTarget
CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Spécifie la réservation de capacité à la demande à utiliser pour la ressource de calcul.

CapacityReservationId(Facultatif,String)

L'ID de la réservation de capacité existante à cibler pour les ressources de calcul de la file d'attente. L'identifiant peut faire référence à un ODCRou à un bloc de capacité pour ML.

Lorsque ce paramètre est spécifié au niveau de la ressource de calcul, s'il InstanceType est facultatif, il sera automatiquement extrait de la réservation.

CapacityReservationResourceGroupArn(Facultatif,String)

Indique le nom de ressource Amazon (ARN) du groupe de ressources qui sert de groupe lié au service pour les réservations de capacité pour la ressource de calcul. AWS ParallelCluster identifie et utilise la réservation de capacité la plus appropriée auprès du groupe. Le groupe de ressources doit en avoir au moins un ODCR pour chaque type d'instance répertorié pour la ressource de calcul. Pour de plus amples informations, veuillez consulter Lancer des instances avec des réservations de capacité à la demande (ODCR).

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Note

CapacityReservationTargetest ajouté avec la AWS ParallelCluster version 3.3.0.

Networking
Networking: PlacementGroup: Enabled: boolean Name: string

Politique de mise à jour : tous les nœuds de calcul doivent être arrêtés pour la suppression d'un groupe de placement géré. Le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

PlacementGroup(Facultatif)

Spécifie les paramètres du groupe de placement pour la ressource de calcul.

Enabled(Facultatif,Boolean)

Indique si un groupe de placement est utilisé pour la ressource de calcul.

  • Si elle est Name définie surtrue, sans définition, cette ressource de calcul se voit attribuer son propre groupe de placement géré, quel que soit le PlacementGroupparamètre SlurmQueuesNetworking//.

  • Si elle est définie surtrue, avec une valeur Name définie, cette ressource de calcul se voit attribuer le groupe de placement nommé, quels que soient PlacementGroup les paramètres SlurmQueuesNetworking//.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Name(Facultatif,String)

Le nom du groupe de placement d'un groupe de placement de clusters existant utilisé pour la ressource de calcul.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Note
  • Si les paramètresPlacementGroup/Enabledet Name non sont définis, leurs valeurs respectives sont par défaut les PlacementGroupparamètres SlurmQueuesNetworking//.

  • ComputeResources/Networking/PlacementGroupest ajouté avec AWS ParallelCluster la version 3.3.0.

CustomSlurmSettings(Facultatif,Dict)

(Facultatif) Définit la coutume Slurm paramètres de configuration du nœud (ressource de calcul).

Spécifie un dictionnaire personnalisé Slurm paires clé-valeur des paramètres de configuration qui s'appliquent à Slurm nœuds (ressources de calcul).

Chaque paire clé-valeur distincte, telle queParam1: Value1, est ajoutée séparément à la fin du Slurm ligne de configuration du nœud au formatParam1=Value1.

Vous ne pouvez que spécifier Slurm paramètres de configuration qui ne sont pas refusés dans. CustomSlurmSettings Pour plus d'informations sur la liste refusée Slurm paramètres de configuration, voirListé par DenySlurmparamètres de configuration pourCustomSlurmSettings.

AWS ParallelCluster vérifie uniquement si un paramètre figure dans une liste de refus. AWS ParallelCluster ne valide pas votre personnalisation Slurm syntaxe ou sémantique des paramètres de configuration. Vous êtes responsable de la validation de votre personnalisation Slurm paramètres de configuration. Personnalisation non valide Slurm les paramètres de configuration peuvent provoquer Slurm défaillances de daemon pouvant entraîner des échecs de création et de mise à jour de clusters.

Pour plus d'informations sur la façon de définir un paramètre personnalisé Slurm paramètres de configuration avec AWS ParallelCluster, voirSlurmpersonnalisation de la configuration.

Pour plus d'informations sur Slurm paramètres de configuration, voir slurm.conf dans Slurm .

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

CustomSlurmSettingsest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

Tags(Facultatif, [Chaîne])

Une liste de paires clé-valeur de balises. ComputeResourceles balises remplacent les balises dupliquées spécifiées dans le Tags Section ou SlurmQueues/Tags.

Key(Facultatif,String)

Identification de balise.

Value(Facultatif,String)

Valeur de balise.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

ComputeSettings

(Obligatoire) Définit la ComputeSettings configuration pour Slurm queue.

Propriétés de ComputeSettings

Spécifie les propriétés ComputeSettings des nœuds du Slurm queue.

ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

LocalStorage(Facultatif)

Spécifie les propriétés LocalStorage des nœuds du Slurm queue.

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

RootVolume(Facultatif)

Spécifie les détails du volume racine des nœuds du Slurm queue.

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Size(Facultatif,Integer)

Spécifie la taille du volume racine en gibioctets (GiB) pour les nœuds du Slurm queue. La taille par défaut provient duAMI. L'utilisation d'une taille différente nécessite des AMI supportsgrowroot.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Encrypted(Facultatif,Boolean)

Sitrue, le volume racine des nœuds du Slurm les files d'attente sont cryptées. La valeur par défaut est false.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

VolumeType(Facultatif,String)

Spécifie le type de EBS volume Amazon des nœuds du Slurm queue. Les valeurs prises en charge sont gp2 gp3io1,io2,sc1,st1, etstandard. La valeur par défaut est gp3.

Pour plus d'informations, consultez les types de EBS volumes Amazon dans le guide de EC2 l'utilisateur Amazon.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Iops(Facultatif,Boolean)

Définit le nombre de volumes IOPS for io1io2, et gp3 type.

La valeur par défaut, les valeurs prises en charge et volume_iops le volume_size ratio de production varient selon VolumeType etSize.

VolumeType = io1

Valeur par défaut Iops = 100

Valeurs prises en charge Iops = 100—64 000 †

volume_sizeRapport volume_iops maximum = 50 IOPS par GiB. 5000 IOPS nécessite volume_size au moins 100 GiB.

VolumeType = io2

Valeur par défaut Iops = 100

Valeurs prises en charge Iops = 100 à 64 000 (256 000 pour les volumes io2 Block Express) †

SizeRapport Iops maximum = 500 IOPS par GiB. 5000 IOPS nécessite une valeur Size d'au moins 10 GiB.

VolumeType = gp3

Valeur par défaut Iops = 3000

Valeurs prises en charge Iops = 3000 à 16 000 †

SizeRapport Iops maximum = 500 IOPS par GiB pour les volumes IOPS supérieurs à 3 000.

† IOPS Le maximum est garanti uniquement pour les instances créées sur le système Nitro qui sont également approvisionnées en plus de 32 000. IOPS Les autres instances peuvent en avoir jusqu'à 32 000IOPS. io1Les volumes antérieurs risquent de ne pas atteindre leurs performances optimales à moins que vous ne modifiiez le volume. io2 Les volumes Block Express prennent en charge volume_iops des valeurs allant jusqu'à 256 000 pour les types d'R5binstances. Pour plus d'informations, consultez la section sur les volumes io2 Block Express dans le guide de EC2 l'utilisateur Amazon.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Throughput(Facultatif,Integer)

Définit le débit pour les types de gp3 volumes, en Mbits/s. Ce paramètre n'est valide que lorsqu'il l'VolumeTypeestgp3. La valeur par défaut est 125. Valeurs prises en charge : 125-1000 MiB/s

Le rapport de Throughput à ne Iops peut pas être supérieur à 0,25. Le débit maximal de 1 000 Mbits/s nécessite que le Iops paramètre soit d'au moins 4 000.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

EphemeralVolume(Facultatif,Boolean)

Spécifie les paramètres du volume éphémère. Le volume éphémère est créé en combinant tous les volumes de stockage d'instance en un seul volume logique formaté avec le ext4 système de fichiers. L’argument par défaut est /scratch. Si le type d'instance ne possède aucun volume de stockage d'instance, aucun volume éphémère n'est créé. Pour plus d'informations, consultez la section Volume de stockage des instances dans le guide de EC2 l'utilisateur Amazon.

EphemeralVolume: MountDir: string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

MountDir(Facultatif,String)

Le répertoire de montage du volume éphémère pour chaque nœud du Slurm queue.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

CustomActions

(Facultatif) Spécifie les scripts personnalisés à exécuter sur les nœuds du Slurm queue.

CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

CustomActionsPropriétés
OnNodeStart(Facultatif,String)

Spécifie une séquence de scripts ou un script unique à exécuter sur les nœuds du Slurm file d'attente avant le lancement de toute action de démarrage du déploiement d'un nœud. AWS ParallelCluster ne permet pas d'inclure à la fois un seul script et Sequence pour la même action personnalisée. Pour de plus amples informations, veuillez consulter Actions de bootstrap personnalisées.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

OnNodeConfigured(Facultatif,String)

Spécifie une séquence de scripts ou un script unique à exécuter sur les nœuds du Slurm file d'attente une fois que toutes les actions d'amorçage du nœud sont terminées. AWS ParallelCluster ne permet pas d'inclure à la fois un seul script et Sequence pour la même action personnalisée. Pour de plus amples informations, veuillez consulter Actions de bootstrap personnalisées.

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategydéfini pour que ce paramètre soit modifié en vue d'une mise à jour.

Note

Sequenceest ajouté à partir de AWS ParallelCluster la version 3.6.0. Lorsque vous le spécifiezSequence, vous pouvez répertorier plusieurs scripts pour une action personnalisée. AWS ParallelCluster continue de prendre en charge la configuration d'une action personnalisée avec un seul script, sans inclureSequence.

AWS ParallelCluster ne permet pas d'inclure à la fois un seul script et Sequence pour la même action personnalisée.

Iam

(Facultatif) Définit IAM les paramètres facultatifs pour Slurm queue.

Iam: S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string InstanceProfile: string InstanceRole: string

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

IamPropriétés
InstanceProfile(Facultatif,String)

Spécifie un profil d'instance pour remplacer le rôle d'instance ou le profil d'instance par défaut pour Slurm queue. Vous ne pouvez pas spécifier à la fois InstanceProfile etInstanceRole. Le format est arn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}.

Si cela est spécifié, les AdditionalIamPolicies paramètres S3Access et ne peuvent pas être spécifiés.

Nous vous recommandons de spécifier l'un des AdditionalIamPolicies paramètres S3Access et, ou les deux, car les fonctionnalités ajoutées nécessitent AWS ParallelCluster souvent de nouvelles autorisations.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

InstanceRole(Facultatif,String)

Spécifie un rôle d'instance pour remplacer le rôle d'instance ou le profil d'instance par défaut pour Slurm queue. Vous ne pouvez pas spécifier à la fois InstanceProfile etInstanceRole. Le format est arn:${Partition}:iam::${Account}:role/${RoleName}.

Si cela est spécifié, les AdditionalIamPolicies paramètres S3Access et ne peuvent pas être spécifiés.

Nous vous recommandons de spécifier l'un des AdditionalIamPolicies paramètres S3Access et, ou les deux, car les fonctionnalités ajoutées nécessitent AWS ParallelCluster souvent de nouvelles autorisations.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

S3Access(Facultatif)

Spécifie un compartiment pour Slurm queue. Ceci est utilisé pour générer des politiques visant à accorder l'accès spécifié au compartiment dans le Slurm queue.

Si cela est spécifié, les InstanceRole paramètres InstanceProfile et ne peuvent pas être spécifiés.

Nous vous recommandons de spécifier l'un des AdditionalIamPolicies paramètres S3Access et, ou les deux, car les fonctionnalités ajoutées nécessitent AWS ParallelCluster souvent de nouvelles autorisations.

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

BucketName(Obligatoire,String)

Le nom du compartiment .

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

KeyName(Facultatif,String)

La clé du seau. La valeur par défaut est *.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

EnableWriteAccess(Facultatif,Boolean)

Indique si l'accès en écriture est activé pour le compartiment.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

AdditionalIamPolicies(Facultatif)

Spécifie une liste de IAM politiques Amazon Resource Names (ARNs) pour AmazonEC2. Cette liste est attachée au rôle root utilisé pour Slurm file d'attente en plus des autorisations requises par AWS ParallelCluster.

Le nom d'une IAM politique et son nom ARN sont différents. Les noms ne peuvent pas être utilisés.

Si cela est spécifié, les InstanceRole paramètres InstanceProfile et ne peuvent pas être spécifiés.

Nous vous recommandons d'utiliser AdditionalIamPolicies car AdditionalIamPolicies ils sont ajoutés aux autorisations AWS ParallelCluster requises et InstanceRole doivent inclure toutes les autorisations requises. Les autorisations requises changent souvent d'une version à l'autre au fur et à mesure que des fonctions sont ajoutées.

Il n'existe aucune valeur par défaut.

AdditionalIamPolicies: - Policy: string

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

SlurmSettings

(Facultatif) Définit les paramètres pour Slurm qui s'appliquent à l'ensemble du cluster.

SlurmSettings: ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string ExternalSlurmdbd: Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

SlurmSettingsPropriétés

ScaledownIdletime(Facultatif,Integer)

Définit la durée (en minutes) pendant laquelle il n'y a pas de travail et Slurm le nœud se termine.

La valeur par défaut est 10.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

MungeKeySecretArn(Facultatif,String)

Le nom de ressource Amazon (ARN) du secret AWS Secrets Manager en texte clair qui contient la clé munge codée en base64 à utiliser dans le Slurm grappe. Cette clé munge sera utilisée pour authentifier les appels entre RPC Slurm commandes du client et Slurm des daemons agissant comme des serveurs distants. S'il n' MungeKeySecretArn est pas fourni, AWS ParallelCluster il générera une clé munge aléatoire pour le cluster.

Note

MungeKeySecretArnest pris en charge à partir de AWS ParallelCluster la version 3.8.0.

Avertissement

Si la clé munge MungeKeySecretArn vient d'être ajoutée à un cluster existant, elle ne ParallelCluster restaurera pas l'ancienne clé munge en cas de restauration ou lors de la suppression ultérieure de la. MungeKeySecretArn Au lieu de cela, une nouvelle clé de munge aléatoire sera générée.

Si l' AWS ParallelCluster utilisateur est autorisé à accéder DescribeSecretà cette ressource secrète spécifique, elle MungeKeySecretArn est validée. MungeKeySecretArn est valide si :

  • Le secret spécifié existe, et

  • Le secret est en texte brut et contient une chaîne codée en base64 valide, et

  • La clé de munge binaire décodée a une taille comprise entre 256 et 8192 bits.

Si la IAM politique utilisateur de pcluster n'inclut pas DescribeSecret, n' MungeKeySecretArnest pas validée et un message d'avertissement s'affiche. Pour de plus amples informations, veuillez consulter Politique AWS ParallelCluster pcluster utilisateur de base.

Lorsque vous effectuez une mise à jour MungeKeySecretArn, le parc informatique et tous les nœuds de connexion doivent être arrêtés.

Si la valeur du secret ARN est modifiée alors qu'ARNelle reste la même, le cluster ne sera pas automatiquement mis à jour avec la nouvelle clé munge. Pour utiliser la nouvelle clé munge ARN du secret, vous devez arrêter le parc informatique et connecter les nœuds, puis exécuter la commande suivante depuis le nœud principal.

sudo /opt/parallelcluster/scripts/slurm/update_munge_key.sh

Après avoir exécuté la commande, vous pouvez reprendre à la fois le parc de calcul et les nœuds de connexion : les nœuds de calcul et de connexion nouvellement provisionnés commenceront automatiquement à utiliser la nouvelle clé munge.

Pour générer une clé munge personnalisée codée en base64, vous pouvez utiliser l'utilitaire mungekey distribué avec le logiciel munge, puis l'encoder à l'aide de l'utilitaire base64 généralement disponible sur votre système d'exploitation. Vous pouvez également utiliser bash (veuillez définir le paramètre bs entre 32 et 1024)

dd if=/dev/random bs=128 count=1 2>/dev/null | base64 -w 0

ou Python comme suit :

import random import os import base64 # key length in bytes key_length=128 base64.b64encode(os.urandom(key_length)).decode("utf-8")

Politique de mise à jour : NEW UPDATE POLICY WITH COMPUTE FLEET AND LOGIN NODES STOPPED (non ajoutée par erreur dans la version 3.7.0).

QueueUpdateStrategy(Facultatif,String)

Spécifie la stratégie de remplacement pour les paramètres de SlurmQueues section soumis à la politique de mise à jour suivante :

Politique de mise à jour : le parc informatique doit être arrêté ou QueueUpdateStrategy défini pour que ce paramètre soit modifié en vue d'une mise à jour.

La QueueUpdateStrategy valeur est utilisée uniquement lorsqu'un processus de mise à jour du cluster démarre.

Valeurs valides : COMPUTE_FLEET_STOP | DRAIN | TERMINATE

Valeur par défaut : COMPUTE_FLEET_STOP

DRAIN

Les nœuds des files d'attente dont les valeurs de paramètres ont été modifiées sont définis sur. DRAINING Les nœuds dans cet état n'acceptent pas de nouvelles tâches et les tâches en cours d'exécution se poursuivent jusqu'à leur fin.

Une fois qu'un nœud devient idle (DRAINED), un nœud est remplacé s'il est statique, et le nœud est interrompu s'il est dynamique. Les autres nœuds d'autres files d'attente dont les valeurs de paramètres n'ont pas été modifiées ne sont pas affectés.

Le temps nécessaire à cette stratégie pour remplacer tous les nœuds de file d'attente par des valeurs de paramètres modifiées dépend de la charge de travail en cours.

COMPUTE_FLEET_STOP

La valeur par défaut du QueueUpdateStrategy paramètre. Avec ce paramètre, la mise à jour des paramètres dans la SlurmQueues section vous oblige à arrêter le parc de calcul avant d'effectuer une mise à jour du cluster :

$ pcluster update-compute-fleet --status STOP_REQUESTED
TERMINATE

Dans les files d'attente dont les valeurs de paramètres ont été modifiées, les tâches en cours sont interrompues et les nœuds sont immédiatement mis hors tension.

Les nœuds statiques sont remplacés et les nœuds dynamiques sont interrompus.

Les autres nœuds d'autres files d'attente dont les valeurs de paramètres n'ont pas été modifiées ne sont pas affectés.

Politique de mise à jour : ce paramètre n'est pas analysé lors d'une mise à jour.

Note

QueueUpdateStrategyest pris en charge à partir de AWS ParallelCluster la version 3.2.0.

EnableMemoryBasedScheduling(Facultatif,Boolean)

Si true la planification basée sur la mémoire est activée dans Slurm. Pour plus d'informations, consultez SlurmQueues/ComputeResources/SchedulableMemory.

La valeur par défaut est false.

Avertissement

L'activation de la planification basée sur la mémoire a un impact sur la façon dont Slurm le planificateur gère les tâches et l'allocation des nœuds.

Pour de plus amples informations, veuillez consulter Slurmplanification basée sur la mémoire.

Note

EnableMemoryBasedSchedulingest pris en charge à partir de AWS ParallelCluster la version 3.2.0.

Note

À partir de AWS ParallelCluster la version 3.7.0, elle EnableMemoryBasedScheduling peut être activée si vous configurez plusieurs types d'instances dans Instances.

Pour AWS ParallelCluster les versions 3.2.0 à 3.6.x, ne EnableMemoryBasedScheduling peut pas être activé si vous configurez plusieurs types d'instances dans Instances.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

CustomSlurmSettings(Facultatif,[Dict])

Définit la coutume Slurm paramètres qui s'appliquent à l'ensemble du cluster.

Spécifie une liste de Slurm dictionnaires de configuration de paires clé-valeur à ajouter à la fin du slurm.conf fichier généré. AWS ParallelCluster

Chaque dictionnaire de la liste apparaît sous la forme d'une ligne distincte ajoutée au Slurm fichier de configuration. Vous pouvez définir des paramètres simples ou complexes.

Les paramètres simples se composent d'une seule paire de clés, comme le montrent les exemples suivants :

- Param1: 100 - Param2: "SubParam1,SubParam2=SubValue2"

Exemple rendu dans Slurm configuration :

Param1=100 Param2=SubParam1,SubParam2=SubValue2

Complexe Slurm les paramètres de configuration se composent de plusieurs paires clé-valeur séparées par des espaces, comme indiqué dans les exemples suivants :

- NodeName: test-nodes[1-10] CPUs: 4 RealMemory: 4196 ... # other node settings - NodeSet: test-nodeset Nodes: test-nodes[1-10] ... # other nodeset settings - PartitionName: test-partition Nodes: test-nodeset ... # other partition settings

Exemple, rendu dans Slurm configuration :

NodeName=test-nodes[1-10] CPUs=4 RealMemory=4196 ... # other node settings NodeSet=test-nodeset Nodes=test-nodes[1-10] ... # other nodeset settings PartitionName=test-partition Nodes=test-nodeset ... # other partition settings
Note

Personnalisé Slurm les nœuds ne doivent pas contenir les -dy- modèles -st- or dans leurs noms. Ces modèles sont réservés aux nœuds gérés par AWS ParallelCluster.

Si vous spécifiez personnalisé Slurm paramètres de configuration dansCustomSlurmSettings, vous ne devez pas spécifier de paramètres personnalisés Slurm paramètres de configuration pourCustomSlurmSettingsIncludeFile.

Vous ne pouvez que spécifier Slurm paramètres de configuration qui ne sont pas refusés dans. CustomSlurmSettings Pour plus d'informations sur la liste refusée Slurm paramètres de configuration, voirListé par DenySlurmparamètres de configuration pourCustomSlurmSettings.

AWS ParallelCluster vérifie uniquement si un paramètre figure dans une liste de refus. AWS ParallelCluster ne valide pas votre personnalisation Slurm syntaxe ou sémantique des paramètres de configuration. Vous êtes responsable de la validation de votre personnalisation Slurm paramètres de configuration. Personnalisation non valide Slurm les paramètres de configuration peuvent provoquer Slurm défaillances de daemon pouvant entraîner des échecs de création et de mise à jour de clusters.

Pour plus d'informations sur la façon de définir un paramètre personnalisé Slurm paramètres de configuration avec AWS ParallelCluster, voirSlurmpersonnalisation de la configuration.

Pour plus d'informations sur Slurm paramètres de configuration, voir slurm.conf dans Slurm .

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

CustomSlurmSettingsest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

CustomSlurmSettingsIncludeFile(Facultatif,String)

Définit la coutume Slurm paramètres qui s'appliquent à l'ensemble du cluster.

Spécifie la coutume Slurm fichier composé de fichiers personnalisés Slurm paramètres de configuration à ajouter à la fin du slurm.conf fichier AWS ParallelCluster généré.

Vous devez inclure le chemin d'accès au fichier. Le chemin peut commencer par https:// ous3://.

Si vous spécifiez personnalisé Slurm paramètres de configuration pourCustomSlurmSettingsIncludeFile, vous ne devez pas spécifier de paramètres personnalisés Slurm paramètres de configuration pourCustomSlurmSettings.

Note

Personnalisé Slurm les nœuds ne doivent pas contenir les -dy- modèles -st- or dans leurs noms. Ces modèles sont réservés aux nœuds gérés par AWS ParallelCluster.

Vous ne pouvez que spécifier Slurm paramètres de configuration qui ne sont pas refusés dans. CustomSlurmSettingsIncludeFile Pour plus d'informations sur la liste refusée Slurm paramètres de configuration, voirListé par DenySlurmparamètres de configuration pourCustomSlurmSettings.

AWS ParallelCluster vérifie uniquement si un paramètre figure dans une liste de refus. AWS ParallelCluster ne valide pas votre personnalisation Slurm syntaxe ou sémantique des paramètres de configuration. Vous êtes responsable de la validation de votre personnalisation Slurm paramètres de configuration. Personnalisation non valide Slurm les paramètres de configuration peuvent provoquer Slurm défaillances de daemon pouvant entraîner des échecs de création et de mise à jour de clusters.

Pour plus d'informations sur la façon de définir un paramètre personnalisé Slurm paramètres de configuration avec AWS ParallelCluster, voirSlurmpersonnalisation de la configuration.

Pour plus d'informations sur Slurm paramètres de configuration, voir slurm.conf dans Slurm .

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Note

CustomSlurmSettingsest pris en charge à partir de AWS ParallelCluster la version 3.6.0.

Database

(Facultatif) Définit les paramètres à activer Slurm Comptabilité sur le cluster. Pour de plus amples informations, veuillez consulter Slurm comptabilité avec AWS ParallelCluster.

Database: Uri: string UserName: string PasswordSecretArn: string

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

Propriétés de Database

Uri(Obligatoire,String)

Adresse du serveur de base de données utilisé comme serveur principal pour Slurm comptabilité. Il URI doit être formaté host:port et ne doit pas contenir de schéma, tel quemysql://. L'hôte peut être une adresse IP ou un DNS nom pouvant être résolu par le nœud principal. Si aucun port n'est fourni, AWS ParallelCluster utilise le MySQL port par défaut 3306.

AWS ParallelCluster bootstrap le Slurm base de données de comptabilité au cluster et doit accéder à la base de données.

La base de données doit être accessible avant que les événements suivants ne se produisent :

  • Un cluster est créé.

  • Slurm la comptabilité est activée avec une mise à jour du cluster.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

UserName(Obligatoire,String)

L'identité qui Slurm permet de se connecter à la base de données, d'écrire des journaux de comptabilité et d'exécuter des requêtes. L'utilisateur doit disposer d'autorisations de lecture et d'écriture sur la base de données.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

PasswordSecretArn(Obligatoire,String)

Le nom de ressource Amazon (ARN) du AWS Secrets Manager secret qui contient le mot de passe en UserName texte clair. Ce mot de passe est utilisé conjointement avec UserName et Slurm comptabilité pour s'authentifier sur le serveur de base de données.

Note

Lorsque vous créez un secret à l'aide de la AWS Secrets Manager console, assurez-vous de sélectionner « Autre type de secret », de sélectionner du texte brut et d'inclure uniquement le texte du mot de passe dans le secret.

Pour plus d'informations sur la façon de AWS Secrets Manager créer un secret, reportez-vous à la section Créer un AWS Secrets Manager secret

Si l'utilisateur est autorisé à le faire DescribeSecret, PasswordSecretArn est validé. PasswordSecretArnest valide si le secret spécifié existe. Si la IAM politique utilisateur n'inclut pasDescribeSecret, PasswordSecretArn n'est pas validée et un message d'avertissement s'affiche. Pour de plus amples informations, veuillez consulter Politique AWS ParallelCluster pcluster utilisateur de base.

Lorsque vous effectuez une mise à jourPasswordSecretArn, le parc informatique doit être arrêté. Si la valeur du secret change et que le secret ARN ne change pas, le cluster n'est pas automatiquement mis à jour avec le nouveau mot de passe de base de données. Pour mettre à jour le cluster en fonction de la nouvelle valeur secrète, vous devez exécuter la commande suivante depuis le nœud principal une fois le parc informatique arrêté.

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
Avertissement

Nous vous recommandons de ne modifier le mot de passe de la base de données que lorsque le parc informatique est arrêté afin d'éviter toute perte de données comptables.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

DatabaseName(Facultatif,String)

Nom de la base de données sur le serveur de base de données (défini par le paramètre Uri) à utiliser pour Slurm Comptabilité.

Le nom de la base de données peut contenir des lettres minuscules, des chiffres et des traits de soulignement. Le nom ne doit pas comporter plus de 64 caractères.

Ce paramètre correspond au StorageLoc paramètre de slurmdbd.conf.

Si DatabaseName ce n'est pas le cas, il ParallelCluster utilisera le nom du cluster pour définir une valeur pourStorageLoc.

La mise à jour du DatabaseName est autorisée, sous réserve des considérations suivantes :

  • Si une base de données portant un nom DatabaseName n'existe pas encore sur le serveur de base de données, slurmdbd la créera. Il vous incombera de reconfigurer la nouvelle base de données selon les besoins (par exemple en ajoutant les entités comptables : clusters, comptes, utilisateurs, associationsQOSs, etc.).

  • Si une base de données portant un nom existe DatabaseName déjà sur le serveur de base de données, slurmdbd l'utilisera pour Slurm Fonctionnalité comptable.

Politique de mise à jour : le parc informatique doit être arrêté pour que ce paramètre soit modifié pour une mise à jour.

Note

Databaseest ajouté à partir de la version 3.3.0.

ExternalSlurmdbd

(Facultatif) Définit les paramètres à activer Slurm Comptabilité avec un serveur slurmdbd externe. Pour plus d’informations, consultez .Slurm comptabilité avec AWS ParallelCluster.

ExternalSlurmdbd: Host: string Port: integer

Propriétés de ExternalSlurmdbd

Host(Obligatoire,String)

L'adresse du serveur slurmdbd externe pour Slurm comptabilité. L'hôte peut être une adresse IP ou un DNS nom pouvant être résolu par le nœud principal.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Port(Facultatif,Integer)

Port écouté par le service slurmdbd. La valeur par défaut est 6819.

Politique de mise à jour : ce paramètre peut être modifié lors d'une mise à jour.

Dns

(Facultatif) Définit les paramètres pour Slurm qui s'appliquent à l'ensemble du cluster.

Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

Propriétés de Dns

DisableManagedDns(Facultatif,Boolean)

Si true les DNS entrées pour le cluster ne sont pas créées et Slurm les noms de nœuds ne peuvent pas être résolus.

Par défaut, AWS ParallelCluster crée une zone hébergée Route 53 dans laquelle les nœuds sont enregistrés lors du lancement. La valeur par défaut est false. Si DisableManagedDns ce paramètre est défini surtrue, la zone hébergée n'est pas créée par AWS ParallelCluster.

Pour savoir comment utiliser ce paramètre pour déployer des clusters dans des sous-réseaux sans accès à Internet, consultezAWS ParallelCluster dans un seul sous-réseau sans accès à Internet.

Avertissement

Un système de résolution de noms est nécessaire au bon fonctionnement du cluster. Si DisableManagedDns ce paramètre est défini surtrue, vous devez fournir un système de résolution de noms. Pour utiliser la EC2 valeur par défaut d'AmazonDNS, définissez UseEc2Hostnames surtrue. Vous pouvez également configurer votre propre DNS résolveur et vous assurer que les noms des nœuds sont enregistrés lors du lancement des instances. Par exemple, vous pouvez le faire en configurant CustomActions/OnNodeStart.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

HostedZoneId(Facultatif,String)

Définit un ID de zone hébergée Route 53 personnalisé à utiliser pour la résolution des DNS noms du cluster. Lorsqu'il est fourni, il AWS ParallelCluster enregistre les nœuds du cluster dans la zone hébergée spécifiée et ne crée pas de zone hébergée gérée.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.

UseEc2Hostnames(Facultatif,Boolean)

Sitrue, les nœuds de calcul du cluster sont configurés avec le EC2 nom d'hôte par défaut. Le Slurm NodeHostNameest également mis à jour avec ces informations. L’argument par défaut est false.

Pour savoir comment utiliser ce paramètre pour déployer des clusters dans des sous-réseaux sans accès à Internet, consultezAWS ParallelCluster dans un seul sous-réseau sans accès à Internet.

Note

Cette note n'est pas pertinente à partir de AWS ParallelCluster la version 3.3.0.

Pour les versions AWS ParallelCluster prises en charge avant la version 3.3.0 :

Lorsqu'il UseEc2Hostnames est défini surtrue, le fichier de configuration de Slurm est défini avec les scripts AWS ParallelCluster prolog et epilog :

  • prologs'exécute pour ajouter des informations /etc/hosts sur les nœuds aux nœuds de calcul lorsque chaque tâche est allouée.

  • epilogs'exécute pour nettoyer le contenu écrit parprolog.

Pour ajouter des epilog scripts personnalisés prolog ou personnalisés, ajoutez-les respectivement aux /opt/slurm/etc/pcluster/epilog.d/ dossiers /opt/slurm/etc/pcluster/prolog.d/ or.

Politique de mise à jour : si ce paramètre est modifié, la mise à jour n'est pas autorisée.