在 PCS 中配置自定义 Slurm 设置 AWS - AWS PC

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

在 PCS 中配置自定义 Slurm 设置 AWS

使用自定义 Slurm 设置跨集群、队列和计算节点组资源配置其他 Slurm 参数。此版本增加了对队列资源上的 Slurm 设置的支持,从而提供了对特定分区的行为的精细控制。

自定义 Slurm 设置的好处

自定义 Slurm 设置可对 AWS 基于 PC 的 HPC 环境进行复杂的控制。您可以通过 quality-of-service配置和抢占策略实施详细记账、实施访问控制并优化工作负载执行。这些功能可确保关键作业获得必要的资源,同时保持集群的高效利用率。无论您是管理 GPU 加速的工作负载、实施公平共享调度还是控制作业生命周期,自定义设置都能帮助您的 HPC 基础架构与运营要求和研究目标保持一致。

配置自定义设置

自定义 Slurm 设置可以通过 AWS 控制台、CLI 进行配置,也可以在资源创建 SDKs 期间进行配置,也可以稍后通过更新操作进行修改。

AWS Management Console

在创建或编辑页面中导航到任何资源类型(群集、队列或计算节点组)的其他调度器设置

添加新设置
  1. 选择 “添加新设置”

  2. 从下拉列表中选择一个参数名称(其中包括简短的参数描述)。

  3. 提供相应的值。

取消设置自定义设置
  1. 选择相关 parameter/value 配对旁边的 “移除”。

  2. 创建或更新资源。

AWS CLI

要对自定义设置进行编程管理,请在创建或更新操作中使用该SlurmCustomSettings字段。

例 — 更新群集上的Prolog参数
aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'SlurmCustomSettings=[{parameterName=Prolog,parameterValue="/path/to/prolog.sh"}]'
例 — 将队列设置为集群Default上的队列
aws pcs update-queue \ --cluster-identifier my-cluster \ --queue-identifier my-queue \ --slurm-configuration 'SlurmCustomSettings=[{parameterName=Default,parameterValue=YES}]'
例 — 在计算节点组Features上设置自定义
aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng-1 \ --slurm-configuration \ 'SlurmCustomSettings=[{parameterName=Features,parameterValue="gpu,nvme"}]'

验证和错误处理

AWS PCS 为自定义 Slurm 设置实施了多层验证流程。在创建和更新操作期间,我们会执行同步验证,包括:

  • 字段级检查:我们会验证各个设置是否正确的数据类型、允许的值和格式要求。例如,我们确保时间值采用正确的 Slurm 格式,布尔值使用公认的 Slurm 布尔表示形式。

  • 上下文感知验证:某些设置是根据更广泛的配置上下文进行检查的。例如,某些参数仅在启用 Slurm 记账时才有效。

  • 设置间的一致性:我们验证互斥选项没有设置在一起,并且相互依赖的设置配置正确。

如果验证失败,您将收到ValidationException包含特定错误代码(例如 InvalidInput)、描述问题的清晰错误消息以及无效字段及其相应错误详细信息的列表。

虽然在初始验证过程中发现了许多问题,但设置之间的一些复杂交互只有在应用配置时才会显现出来。在这种情况下,操作将失败并显示一条提示性错误消息,并且所有部分更改都将被回滚。

限制

AWS PCS 采用允许名单方法来保护服务安全和操作稳定性。可能危及服务帐户安全或干扰托管服务功能的设置受到限制。但是,我们会持续评估客户需求,并可以根据客户反馈增加对其他设置的支持。