创建配额份额 - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

创建配额份额

配额共享充当关联作业队列中的虚拟队列, Amazon Batch 调度器在调度时会在该队列之间进行迭代。它们使管理员能够通过为团队或项目分配计算配额 capacity limits ,并对资源共享策略进行明确配置。

先决条件

在创建配额份额之前,请确保您具有:

  • 配额管理调度策略、服务环境和作业队列-启用配额管理的配额管理调度策略、服务环境和作业队列。有关更多信息,请参阅 创建配额管理资源

  • IAM 权限 — 创建和管理 Amazon Batch 配额份额的权限。有关更多信息,请参阅 Amazon Batch IAM 策略、角色和权限

Configure quota shares (Amazon Batch console)
  1. 打开 Amazon Batch 控制台,网址为https://console.aws.amazon.com/batch/

  2. 在导航窗格中,选择 Job qu eues,然后从列表中选择已启用配额管理的作业队列。选择作业队列名称链接。

  3. 配额份额部分中,选择创建配额共享

  4. 提供配额份额的名称

  5. 对于容量限制,请选择添加容量限制。必须至少指定一个容量限制。

    1. 从下拉列表中选择一个实例类型,然后设置此配额份额分配给它的最大实例数

    2. (可选)选择 “添加容量限制”,然后重复添加最多五个容量限制。

  6. 对于容量共享,请选择此配额共享如何与同一作业队列中的其他配额共享共享其容量:

    • 如果配额份额不应借出或借用闲置计算,请选择 “预留”。

    • 如果配额份额可以将闲置计算借给其他配额份额,请选择 “借出”。

    • 如果配额份额既可以借出闲置计算,也可以借用闲置计算,当工作到来时,通过交叉共享抢占回借出的计算,则选择 “借出”。

  7. (可选)对于共享内抢占,请选择是启用还是禁用共享内抢占。启用共享内抢占允许优先级较高的作业抢占已处于、或状态的低优先级作业。SCHEDULED STARTING RUNNING禁用共享内抢占意味着优先级较高的作业将等待容量变为可用。

  8. 选择创建配额共享

Configure quota shares (Amazon CLI)

使用create-quota-share命令创建配额共享。您必须选择资源共享策略以及是否启用共享内抢占。

借贷示例

以下示例创建了一个可以借出和借用闲置容量的配额份额,借用限制为其配置容量限制的 100%。它还支持共享内抢占,因此优先级较高的作业无需等待 SageMaker AI 中安排的优先级较低的任务完成。

aws batch create-quota-share \ --quota-share-name lend_and_borrow_qs \ --job-queue my-qm-sagemaker-jq \ --capacity-limits maxCapacity=5,capacityUnit=ml.m6i.large \ --resource-sharing-configuration strategy=LEND_AND_BORROW,borrowLimit=100 \ --preemption-configuration inSharePreemption=ENABLED

仅借用示例

可以将配额份额配置为仅借出闲置容量,而不能自行借用。以下示例LEND与禁用共享内抢占配对。

aws batch create-quota-share \ --quota-share-name lend_qs \ --job-queue my-qm-sagemaker-jq \ --capacity-limits maxCapacity=8,capacityUnit=ml.m6i.large \ --resource-sharing-configuration strategy=LEND \ --preemption-configuration inSharePreemption=DISABLED

预留示例

也可以将配额份额配置为预留空闲容量。当配额共享具有空闲容量时,新提交的作业可能会更快地启动,但是如果配额共享中没有任务,则总体队列利用率会降低。

aws batch create-quota-share \ --quota-share-name reserved_qs \ --job-queue my-qm-sagemaker-jq \ --capacity-limits maxCapacity=2,capacityUnit=ml.m6i.large \ --resource-sharing-configuration strategy=RESERVE \ --preemption-configuration inSharePreemption=DISABLED