

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

# 使用创建集群 Slurm 会计
<a name="tutorials_07_slurm-accounting-v3"></a>

学习如何使用配置和创建集群 Slurm 会计。有关更多信息，请参阅 [Slurm会计 Amazon ParallelCluster](slurm-accounting-v3.md)。

使用 Amazon ParallelCluster 命令行界面 (CLI) 或 API 时，您只需为创建或更新 Amazon ParallelCluster 映像和集群时创建的 Amazon 资源付费。有关更多信息，请参阅 [Amazon 使用的服务 Amazon ParallelCluster](aws-services-v3.md)。

在本教程中，您将使用[CloudFormation 快速创建的模板 (us-east-1) 来创建适用于 MySQL](https://us-east-1.console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/create/review?stackName=pcluster-slurm-db&templateURL=https://us-east-1-aws-parallelcluster.s3.amazonaws.com/templates/1-click/serverless-database.yaml) 的无服务器数据库。[Amazon Aurora](https://docs.amazonaws.cn/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html)该模板指示 CloudFormation 创建所有必要的组件，以便在集群所在的 VPC 上部署 Amazon Aurora 无服务器数据库。该模板还会为集群与数据库之间的连接创建基本的网络和安全配置。

**注意**  
从 3.3.0 版开始，支持 Amazon ParallelCluster Slurm 使用集群配置参数 [SlurmSettings](Scheduling-v3.md#Scheduling-v3-SlurmSettings)/[数据库](Scheduling-v3.md#Scheduling-v3-SlurmSettings-Database)进行核算。

**注意**  
快速创建模板用作一个示例。此模板并未涵盖所有可能的用例 Slurm 会计数据库服务器。您负责创建配置和容量适合您的生产工作负载的数据库服务器。

**先决条件：**
+ Amazon ParallelCluster [已安装](install-v3-parallelcluster.md)。
+  Amazon CLI [已安装并配置。](https://docs.amazonaws.cn/cli/latest/userguide/getting-started-install.html)
+ 你有一个 A [mazon EC2 密钥对](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-key-pairs.html)。
+ 您拥有具有运行 [`pcluster`](pcluster-v3.md) CLI 所需的[权限](iam-roles-in-parallelcluster-v3.md#iam-roles-in-parallelcluster-v3-example-user-policies)的 IAM 角色。
+ 您在其中部署快速创建模板的区域支持 Amazon Aurora MySQL Serverless v2。有关更多信息，请参阅[适用于 Aurora MySQL 的 Aurora Serverless v2](https://docs.amazonaws.cn/AmazonRDS/latest/AuroraUserGuide/Concepts.Aurora_Fea_Regions_DB-eng.Feature.ServerlessV2.html#Concepts.Aurora_Fea_Regions_DB-eng.Feature.ServerlessV2.amy)。

## 步骤 1：为创建 VPC 和子网 Amazon ParallelCluster
<a name="slurm-accounting-vpc-v3"></a>

要将提供的 CloudFormation 模板用于 Slurm 记账数据库，您必须准备好集群的 VPC。您可以手动设置，也可以在[使用 Amazon ParallelCluster 命令行界面配置和创建集群](install-v3-configuring.md)的过程中进行设置。如果您已经使用 Amazon ParallelCluster，则可能已经具有可用来部署集群和数据库服务器的 VPC。

## 步骤 2：创建数据库堆栈
<a name="slurm-accounting-db-stack-v3"></a>

使用[CloudFormation 快速创建模板 (us-east-1) 为以下对象创建数据库堆栈](https://us-east-1.console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/create/review?stackName=pcluster-slurm-db&templateURL=https://us-east-1-aws-parallelcluster.s3.amazonaws.com/templates/1-click/serverless-database.yaml) Slurm 会计。该模板需要以下输入：
+ 数据库服务器凭证，特别是管理员用户名和密码。
+  Amazon Aurora 无服务器集群的大小。这取决于预期的集群负载。
+ 网络参数，特别是目标 VPC 和子网或用于创建子网的 CIDR 块。

为您的数据库服务器选择适当的凭证和大小。对于网络选项，您必须使用 Amazon ParallelCluster 集群部署到的同一个 VPC。您可以为数据库创建子网并将其作为输入传递给模板。或者，为两个子网提供两个不相交的 CIDR 块，然后让 CloudFormation 模板为 CIDR 块创建两个子网。确保 CIDR 块不与现有子网重叠。如果 CIDR 块与现有子网重叠，则无法创建堆栈。

创建数据库服务器需要几分钟时间。

## 步骤 3：使用创建集群 Slurm 已启用记账
<a name="slurm-accounting-create-cluster-v3"></a>

提供的 CloudFormation 模板生成一个包含一些已定义输出的 CloudFormation 堆栈。从中 Amazon Web Services 管理控制台，您可以在 CloudFormation 堆栈视图的 “输**出**” 选项卡中查看输出。要启用 Slurm 记账，其中一些输出必须在 Amazon ParallelCluster 集群配置文件中使用：
+ `DatabaseHost`：用于 [`SlurmSettings`](Scheduling-v3.md#Scheduling-v3-SlurmSettings)/[`Database`](Scheduling-v3.md#Scheduling-v3-SlurmSettings-Database)/[`Uri`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-Database-Uri) 集群配置参数。
+ `DatabaseAdminUser`：用于 [`SlurmSettings`](Scheduling-v3.md#Scheduling-v3-SlurmSettings)/[`Database`](Scheduling-v3.md#Scheduling-v3-SlurmSettings-Database)/[`UserName`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-Database-UserName) 集群配置参数值。
+ `DatabaseSecretArn`：用于 [`SlurmSettings`](Scheduling-v3.md#Scheduling-v3-SlurmSettings)/[`Database`](Scheduling-v3.md#Scheduling-v3-SlurmSettings-Database)/[`PasswordSecretArn`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-Database-PasswordSecretArn) 集群配置参数。
+ `DatabaseClientSecurityGroup`：这是 [`HeadNode`](HeadNode-v3.md)/[`Networking`](HeadNode-v3.md#HeadNode-v3-Networking)/[`SecurityGroups`](HeadNode-v3.md#yaml-HeadNode-Networking-SecurityGroups) 配置参数中定义的附加到集群头节点的安全组。

使用输出值更新您的集群配置文件 `Database` 参数。使用 [`pcluster`](pcluster-v3.md) CLI 创建集群。

```
$ pcluster create-cluster -n cluster-3.x -c path/to/cluster-config.yaml
```

创建集群后，您可以开始使用 Slurm 记账命令，例如`sacctmgr`或`sacct`。