本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用作业自动修复 StateTimeLimitActions
或者,您可以通过 CreateJobQueue 和 UpdateJobQueue API 操作配置 jobStateTimeLimitActions 参数。
注意
目前,对于连接到 Amazon ECS、Amazon EKS 或 Fargate 计算环境的任务队列,您可以使用的唯一操作jobStateLimitActions.action就是取消任务。
该jobStateTimeLimitActions参数用于指定对处于特定状态的作业 AWS Batch 执行的一组操作。您可以通过 maxTimeSeconds 字段设置以秒为单位的时间阈值。
当作业处于已定义的RUNNABLE状态时statusReason,将在经过后 AWS Batch maxTimeSeconds执行指定的操作。
例如,对于处于 RUNNABLE 状态等待足够容量可用的任何作业,您可以将 jobStateTimeLimitActions 参数设置为最多等待 4 小时。为此,您可以先将该任务设置statusReasonmaxTimeSeconds为CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY和设置为 14400,然后再取消该任务并允许下一个作业进入任务队列的开头。
ListJobs和 DescribeJobs API 操作返回的值与您可以为jobStateTimeLimitActions.statusReason参数定义的值相同。statusReason但是,并非所有statusReason值都支持自动修复。
支持以下statusReason值jobStateTimeLimitActions:
-
CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY -
MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE -
MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT
以下statusReason值不支持jobStateTimeLimitActions,需要手动调查:
-
MISCONFIGURATION:SERVICE_ROLE_PERMISSIONS -
ACTION_REQUIRED -
UNDETERMINED