

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用竞价型实例
<a name="spot-v3"></a>

AWS ParallelCluster 如果您在集群配置文件`SPOT`中将 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`CapacityType`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-CapacityType)或 [`AwsBatchQueues`](Scheduling-v3.md#Scheduling-v3-AwsBatchQueues)/设置为 [`CapacityType`](Scheduling-v3.md#yaml-Scheduling-AwsBatchQueues-CapacityType)，则使用竞价型实例。竞价型实例比按需型实例更具成本效益，但它们可能会中断。利用*竞价型实例中断通知可能会有所帮助，这些通知*会在 Amazon EC2 必须停止或终止您的竞价型实例之前提供两分钟的警告。有关更多信息，请参阅《Amazon EC2 用户指南》**中的[竞价型实例中断情况](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html)。要了解 [`AwsBatchQueues`](Scheduling-v3.md#Scheduling-v3-AwsBatchQueues) 如何使用竞价型实例，请参阅 *AWS Batch User Guide* 中的 [Compute Resources](https://docs.aws.amazon.com/batch/latest/userguide/compute_environment_parameters.html#compute_environment_compute_resources)。

 AWS ParallelCluster 配置的调度器将任务分配给带有竞价型实例的队列中的计算资源，就像将任务分配给带有按需实例的队列中的计算资源一样。

使用竞价型实例时，您的账户中必须存在 AWSServiceRoleForEC2竞价服务相关角色。要使用在您的账户中创建此角色 AWS CLI，请运行以下命令：

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

有关更多信息，请参阅《Amazon EC2 用户指南》**中的[竞价型实例请求的服务相关角色](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html#service-linked-roles-spot-instance-requests)。

以下各部分介绍了使用 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) 时竞价型实例可能被中断的三种情形。

# 情形 1：没有运行作业的竞价型实例被中断
<a name="no-jobs-v3"></a>

发生这种中断时，如果调度器队列有需要额外实例的待处理任务，或者活动实例的数量小于 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`ComputeResources`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-ComputeResources)/[`MinCount`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-MinCount)，则 AWS ParallelCluster 尝试替换实例。如果 AWS ParallelCluster 无法配置新实例，则会定期重复请求新实例。

# 情形 2：运行单节点作业的竞价型实例被中断
<a name="single-node-v3"></a>

作业失败，状态代码为 `NODE_FAIL`，并且该作业重新排入队列（除非在提交作业时指定了 `--no-requeue`）。如果节点是静态节点，则会将其替换。如果节点是动态节点，则会终止并重置该节点。有关 `sbatch`（包括 `--no-requeue` 参数）的更多信息，请参阅 *Slurm 文档*中的 [https://slurm.schedmd.com/sbatch.html](https://slurm.schedmd.com/sbatch.html)。

# 情形 3：运行多节点作业的竞价型实例被中断
<a name="multi-node-v3"></a>

作业失败，状态代码为 `NODE_FAIL`，并且该作业重新排入队列（除非在提交作业时指定了 `--no-requeue`）。如果节点是静态节点，则会将其替换。如果节点是动态节点，则会终止并重置该节点。运行已终止作业的其他节点可能会被分配给其他待处理作业，或在经过配置的 [`SlurmSettings`](Scheduling-v3.md#Scheduling-v3-SlurmSettings)/[`ScaledownIdletime`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-ScaledownIdletime) 时间后进行缩减。

有关竞价型实例的更多信息，请参阅《Amazon EC2 用户指南》**中的[竞价型实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html)。