本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建配额管理资源
在创建关联的调度策略、服务环境和作业队列时,配额管理需要特定的设置。
先决条件
在创建配额管理资源之前,请确保您具有:
-
IAM 权限 — 创建和管理 Amazon Batch 任务队列、调度策略和服务环境的权限。有关更多信息,请参阅 Amazon Batch IAM 策略、角色和权限。
- Configure quota management resources (Amazon Batch console)
-
Amazon Batch 控制台提供了一个集成的工作流程,用于创建配额管理所需的所有资源。配额管理作业队列创建工作流程还会创建支持配额管理的调度策略和服务环境。
-
打开 Amazon Batch 控制台,网址为https://console.aws.amazon.com/batch/
。 -
在导航窗格中,选择 Job 队列,然后选择 C reat e。
-
对于编排类型,请选择SageMaker训练。
-
对于作业队列配置:
-
在名称中,输入作业队列的名称。
-
在 “优先级” 中,输入一个介于 0 和 1000 之间的值。优先级较高的作业队列优先于服务环境。
-
-
对于日程安排:
-
对于计划算法,请选择配额管理。
-
对于计划策略 ARN:
-
如果已存在指定配额管理的计划策略,请从下拉列表中选择该策略。
-
否则,请选择创建计划策略。
-
将打开一个侧边栏,用于配置配额管理计划策略。
-
为计划策略提供名称。
-
选择创建。计划策略 ARN 字段现已填充。
-
-
-
-
对于服务环境配置,在 “连接的服务环境” 下:
注意
启用配额管理的服务环境只能连接到一个启用了配额管理的作业队列。
-
如果已经创建了与配额管理兼容的服务环境,并且尚未连接到启用配额管理的作业队列,请从下拉列表中将其选中。
-
否则,请选择创建服务环境。将打开一个侧边栏来配置服务环境。
-
为服务环境提供一个名称。
-
提供至少一个容量限制(最多为 5 个)。对于每个容量限制,请从下拉列表中选择一个实例类型和最大实例数。
-
-
-
(可选)对于 作业状态限制:
-
对于配置错误,请选择其中一个
SERVICE_ENVIRONMENT_MAX_RESOURCE并输入最大可运行时间(秒)。 -
对于容量,选择
INSUFFICIENT_INSTANCE_CAPACITY并输入最大可运行时间(秒)。
-
-
选择创建作业队列。
-
- Configure quota management resources (Amazon CLI)
-
要通过 Amazon CLI 配置配额管理,请创建计划策略、服务环境和作业队列。计划策略和服务环境都必须与配额管理兼容,并且必须在创建任务队列之前创建。
创建日程安排策略
使用
create-scheduling-policy命令创建与配额管理兼容的计划策略。在创建期间提供配额共享政策:aws batch create-scheduling-policy \ --namemy-qm-sagemaker-scheduling-policy\ --quota-share-policy idleResourceAssignmentStrategy="FIFO"验证计划策略是否已成功创建:
aws batch describe-scheduling-policies \ --arnsarn-for-my-qm-sagemaker-scheduling-policy创建服务环境
使用
create-service-environment命令创建支持配额管理的服务环境。确保容量限制使用 SageMaker 训练作业接受的实例类型,例如ml.g6.xlarge或ml.p4d.24xlarge。aws batch create-service-environment \ --service-environment-namemy-qm-sagemaker-service-env\ --service-environment-type SAGEMAKER_TRAINING \ --capacity-limits capacityUnit=instance_type,maxCapacity=instance_count验证服务环境是否已成功创建:
aws batch describe-service-environments \ --service-environmentsmy-qm-sagemaker-service-env创建任务队列
使用
create-job-queue命令创建启用配额管理的作业队列。必须满足以下标准:-
必须提供一个当前未连接到其他作业队列的单一
SAGEMAKER_TRAINING服务环境。 -
服务环境必须根据实例类型来表示容量限制,例如
ml.m6i.xlarge,而不是NUM_INSTANCES。 -
必须连接包含以下内容的调度策略
quotaSharePolicy。 -
jobQueueType必须是SAGEMAKER_TRAINING。
aws batch create-job-queue \ --job-queue-namemy-qm-sagemaker-jq\ --job-queue-type SAGEMAKER_TRAINING \ --priority 1 \ --service-environment-order order=1,serviceEnvironment=my-qm-sagemaker-service-env\ --scheduling-policy-arnarn-for-my-qm-sagemaker-scheduling-policy验证任务队列是否已成功创建:
aws batch describe-job-queues \ --job-queuesmy-qm-sagemaker-jq请确保:
-
state为ENABLED -
status为VALID -
statusReason为JobQueue Healthy
-