Utilisation de instances Spot - 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.

Utilisation de instances Spot

AWS ParallelCluster utilise des instances Spot si vous avez défini SlurmQueues/CapacityTypeou AwsBatchQueues/CapacityTypesur SPOT dans le fichier de configuration du cluster. Les instances ponctuelles sont plus économiques que les instances à la demande, mais elles peuvent être interrompues. Il peut être utile de tirer parti des avis d'interruption des instances Spot, qui fournissent un avertissement de deux minutes avant qu'Amazon EC2 ne doive arrêter ou résilier votre instance Spot. Pour plus d'informations, consultez la section Interruptions des instances Spot dans le guide de l'utilisateur Amazon EC2. Pour en savoir plus sur le AwsBatchQueuesfonctionnement des instances Spot, consultez la section Ressources informatiques du guide de AWS Batch l'utilisateur.

Le planificateur AWS ParallelCluster configuré affecte les tâches aux ressources de calcul dans les files d'attente avec des instances ponctuelles de la même manière qu'il affecte les tâches aux ressources de calcul dans les files d'attente avec des instances à la demande.

Lorsque vous utilisez des instances Spot, un rôle AWSServiceRoleForEC2Spot lié au service doit exister dans votre compte. Pour créer ce rôle dans votre compte à l'aide de AWS CLI, exécutez la 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 l'utilisateur Amazon EC2.

Les sections suivantes décrivent trois scénarios dans lesquels les instances Spot peuvent être interrompues lors de leur utilisation SlurmQueues.

Scénario 1 : Une instance Spot sans tâches en cours d'exécution est interrompue

Lorsque cette interruption se produit, AWS ParallelCluster essaie de remplacer l'instance si la file d'attente du planificateur contient des tâches en attente qui nécessitent des instances supplémentaires, ou si le nombre d'instances actives est inférieur au SlurmQueues//ComputeResources. MinCount Si AWS ParallelCluster vous ne parvenez pas à approvisionner de nouvelles instances, une demande de nouvelles instances est répétée périodiquement.

Scénario 2 : Une instance Spot exécutant des tâches à nœud unique est interrompue

La tâche échoue avec un code d'état deNODE_FAIL, et la tâche est mise en attente (sauf indication contraire --no-requeue lors de la soumission de la tâche). S'il s'agit d'un nœud statique, il est remplacé. Si le nœud est un nœud dynamique, le nœud est arrêté et réinitialisé. Pour plus d'informationssbatch, notamment sur le --no-requeue paramètre, consultez la sbatchdocumentation de Slurm.

Scénario 3 : Une instance Spot exécutant des tâches à plusieurs nœuds est interrompue

La tâche échoue avec un code d'état deNODE_FAIL, et la tâche est mise en attente (sauf si cela --no-requeue a été spécifié lors de la soumission de la tâche). S'il s'agit d'un nœud statique, il est remplacé. Si le nœud est un nœud dynamique, le nœud est arrêté et réinitialisé. Les autres nœuds qui exécutaient les tâches terminées peuvent être alloués à d'autres tâches en attente ou réduits une fois le ScaledownIdletimetemps configuré SlurmSettings/dépassé.

Pour plus d'informations sur les instances Spot, consultez la section Instances Spot dans le guide de l'utilisateur Amazon EC2.