

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

# PCS 中的 Slurm 会计 AWS
<a name="slurm-accounting"></a>

您可以在新 AWS PCS 集群上启用记账功能，以监控集群使用情况、强制执行资源限制以及管理对特定队列或计算节点组的精细访问控制。 AWS PCS 为您的集群创建和管理会计数据库，您无需创建和管理自己的独立会计数据库。 AWS PCS 使用 Slurm 中的记账功能。有关 Slurm 中记账功能的更多信息，请参阅 SchedMD 上的 [Slurm 文档](https://slurm.schedmd.com/accounting.html)。

要使用记账，请在创建新集群时将其启用，并可选择设置记账参数。在集群状态为`Active`并且具有计算节点组后，您可以连接到登录节点的 Linux 外壳以执行记账功能，例如使用 Slurm `sacct` 命令查看作业数据。

**注意**  
Slurm 24.11 或更高版本支持记账。

------
#### [ AWS PCS console ]

在**创建集群**页面上，必须选择有效的 Slurm 版本（版本 24.11 或更高版本）。在 “**日程安排器设置”** 下，启用 “**会计**”。

------
#### [ AWS PCS API ]

在调用 `CreateCluster` API 操作时提供`accounting`配置。在`accounting`对象中，将设置`mode`为`STANDARD`。有关更多信息，请参阅 *AWS PCS API 参考*中的[CreateCluster](https://docs.aws.amazon.com/pcs/latest/APIReference/API_CreateCluster.html)和[会计](https://docs.aws.amazon.com/pcs/latest/APIReference/API_Accounting.html)。

以下示例使用调 AWS CLI 用 `CreateCluster` API 操作。参数值子字符串`accounting='{mode=STANDARD}'`启用记账。

```
aws pcs create-cluster --cluster-name cluster-name \
                       --scheduler type=SLURM,version=24.11 \
                       --size SMALL \
                       --networking subnetIds=cluster-subnet-id,securityGroupIds=cluster-security-group-id \
                       --slurm-configuration scaleDownIdleTimeInSeconds=180,accounting='{mode=STANDARD}',slurmCustomSettings='[{parameterName=SelectTypeParameters,parameterValue=CR_CPU_Memory}]'
```

------

**重要**  
 如果您启用会计，则会收取额外的账单费用。有关更多信息，请参阅 [AWS PCS 定价页面](https://aws.amazon.com/pcs/pricing/)。

## 修改会计设置
<a name="slurm-accounting-modify"></a>

无需重建基础架构，即可在现有集群上启用或禁用记账。有关更多信息，请参阅 [在 AWS PCS 中更新集群](working-with_clusters_update.md)。

禁用记账功能后，一旦集群进入`UPDATING`状态，记账功能的计费就会停止。启用记账功能后，从集群成功恢复到`ACTIVE`状态时开始计费。

## PCS 中 Slurm 会计的关键概念 AWS
<a name="slurm-accounting-concepts"></a>

以下概念特定于 PCS，用于控制 AWS PCS 如何 AWS 实现 Slurm 记账。

### 会计数据库
<a name="slurm-accounting-concepts_accounting-db"></a>

AWS PCS 将您的会计数据存储在 AWS 拥有 AWS 账户 的数据库中。您无权访问 `slurmdbd.conf.`

### 默认清除时间
<a name="slurm-accounting-concepts_default-purge-time"></a>

此 AWS PCS 设置指定所有会计记录类型（作业、事件、预留、步骤、暂停、交易、使用数据）的保留期（以天为单位）。例如，如果值为 30，则 AWS PCS 会将会计记录保留 30 天。您在创建集群时提供此值。如果您不提供值， AWS PCS 会无限期地在数据库中保留会计记录。

------
#### [ AWS PCS console ]

在创建集群的步骤中，您可以指定默认的清除时间。在**创建集群**页面上，必须选择有效的 Slurm 版本（版本 24.11 或更高版本）并启用记账。在 “**计划程序设置”** 下，为 “**默认清除时间（天）**” 提供一个整数值。

------
#### [ AWS PCS API ]

在`defaultPurgeTimeInDays`调用 `CreateCluster` API 操作时提供的`accounting`信息中指定。有关更多信息，请参阅 *AWS PCS API 参考*中的[CreateCluster](https://docs.aws.amazon.com/pcs/latest/APIReference/API_CreateCluster.html)和[会计](https://docs.aws.amazon.com/pcs/latest/APIReference/API_Accounting.html)。

**注意**  
使用 AWS PCS API 创建集群时，的默认值为`-1`且`defaultPurgeTimeInDays``0`不是有效值。

------

### 会计政策的执行
<a name="slurm-accounting-concepts_accounting-policy-enforcement"></a>

此设置决定了 Slurm 对您的集群执行任务提交规则、资源限制和会计策略的严格程度。此设置与集群`slurm.conf`文件中的`AccountingStorageEnforce`参数相对应。您可以选择执法选项的任意组合。如果您未选择任何选项，则不会对集群上的作业施加任何记账限制。 AWS PCS 支持以下选项：
+ **关联**- job-to-account 映射
+ **限制**-资源限制
+ **QoS** — 服务质量要求
+ **安全模式** — 保证在限制范围内完成
+ **nosteps** — 禁用步数记账
+ **nojobs** — 禁用工作记账

有关这些选项的更多信息，请参阅 SchedMD 上的 [Slurm 文档。](https://slurm.schedmd.com/slurm.conf.html#OPT_AccountingStorageEnforce)

------
#### [ AWS PCS console ]

您可以在创建集群的步骤中设置这些选项。在**创建集群**页面上，必须选择有效的 Slurm 版本（版本 24.11 或更高版本）并启用记账。从 “**计划程序设置**” 下的 “**会计政策实施**” 下拉列表中选择所需的选项。

------
#### [ AWS PCS API ]

在 Slurm 中，这些选项是在集群文件中设置的。`slurm.conf`您无法直接访问您`slurm.conf`的 AWS PCS 集群。相反，您可以在创建集群时提供 `SlurmCustomSettings` `CreateCluster` API 操作。有关更多信息，请参阅 *AWS PCS API 参考[CreateCluster](https://docs.aws.amazon.com/pcs/latest/APIReference/API_CreateCluster.html)*中的。

------

## 获取现有 AWS PCS 集群的记账配置
<a name="slurm-accounting-get"></a>

Slurm 记账配置包含在您的集群的 Slurm 配置中。

------
#### [ AWS PCS console ]

1. 从导航窗格中选择 “**集群**”。

1. 从列表中选择集群名称。

1. 在**配置**选项卡上，在 **Slur** m 配置下找到记账配置

------
#### [ AWS PCS API ]

使用 `GetCluster` API 操作获取集群配置。您可以在中找到记账配置`slurmConfiguration`。的设置`mode`和的值`defaultPurgeTimeInDays`都低于`accounting`。选定的会计政策执行选项如下`slurmCustomSettings`。有关更多信息，请参阅 *AWS PCS API 参考[GetCluster](https://docs.aws.amazon.com/pcs/latest/APIReference/API_GetCluster.html)*中的。

------