本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
作业处于 “可运行” 状态
如果 AWS Batch 检测到你有RUNNABLE任务挡住队列前面,你会服务作业队列阻塞事件收到来信并说明原因。同样的原因也会更新到 statusReason 字段,作为 ListServiceJobs 和 DescribeServiceJob API 调用的一部分。
或者,您可以通过 CreateJobQueue 和 UpdateJobQueue API 操作配置 jobStateTimeLimitActions 参数。该jobStateTimeLimitActions参数指定对处于特定状态的作业 AWS Batch
执行的一组操作。您可以通过 maxTimeSeconds 字段设置以秒为单位的时间阈值。
对于连接到SAGEMAKER_TRAINING服务环境的任务队列,您可以使用的唯一操作jobStateTimeLimitActions.action是TERMINATE,这将终止作业。
例如,对于处于 RUNNABLE 状态等待足够容量可用的任何作业,您可以将 jobStateTimeLimitActions 参数设置为最多等待 4 小时。为此,可以在终止作业之前reasonmaxTimeSeconds将其设置为CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY和设置为 14400,并允许下一个作业进入作业队列的开头。
以下各节分别描述了一种 AWS Batch 可以推断的不同类型的屏蔽原因。每个部分包括:
-
statusReason设置开启ListServiceJobs和DescribeServiceJobAPI 操作。 -
jobStateTimeLimitActions配置的reason值。 -
如果
jobStateTimeLimitActions触发终止,则statusReason显示出来。