

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 外部 Slurmdbd アカウンティングによるクラスターの作成
<a name="external-slurmdb-accounting"></a>

外部 Slurmdbd アカウンティングを使用してクラスターを設定および作成する方法について説明します。詳細については、[Slurm「 でのアカウンティング AWS ParallelCluster](slurm-accounting-v3.md)」を参照してください。

 AWS ParallelCluster コマンドラインインターフェイス (CLI) または API を使用する場合、 AWS ParallelCluster イメージとクラスターを作成または更新するときに作成されたリソースに対して AWS のみ料金が発生します。詳細については、[AWS 「 で使用される のサービス AWS ParallelCluster](aws-services-v3.md)」を参照してください。

 AWS ParallelCluster UI はサーバーレスアーキテクチャ上に構築されており、ほとんどの場合、 AWS Free Tierカテゴリ内で使用できます。詳細については、「[AWS ParallelCluster UI のコスト](install-pcui-costs-v3.md)」を参照してください。

このチュートリアルでは、 AWS CloudFormation クイック作成テンプレートを使用して、クラスターと同じ VPC に Slurmdbd インスタンスをデプロイするために必要なコンポーネントを作成します。このテンプレートは、クラスターとデータベース間の接続のための基本的なネットワークとセキュリティの設定を作成します。

**注記**  
以降`version 3.10.0`、 はクラスター設定パラメータ を使用して外部 Slurmdbd AWS ParallelCluster をサポートします`SlurmSettings / ExternelSlurmdbd`。

**注記**  
クイック作成テンプレートはその一例です。このテンプレートは、すべての想定されるユースケースをカバーしているわけではありません。本番環境のワークロードに適した設定と容量を備えた外部 Slurmdbd を作成することはお客様の責任です。

**前提条件:**
+ AWS ParallelCluster [がインストールされます](install-v3-parallelcluster.md)。
+  AWS CLI [がインストールされ、設定されています。](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
+ [Amazon Elastic Compute Cloud のキーペア](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)がある。
+ CLI の実行に必要な[アクセス許可](iam-roles-in-parallelcluster-v3.md#iam-roles-in-parallelcluster-v3-example-user-policies)を持つ [`pcluster`](pcluster-v3.md) AWS Identity and Access Management ロールがあります。
+ Slurm アカウンティングデータベースがある。Slurm アカウンティングデータベースを作成するチュートリアルを実行するには、「[Slurm アカウンティングデータベーススタックを作成する](tutorials_07_slurm-accounting-v3.md)」のステップ 1 および 2 に従います。

## ステップ 1: Slurmdbd スタックを作成する
<a name="external-slurmdb-accounting-step1"></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-dbd&templateURL=https://us-east-1-aws-parallelcluster.s3.amazonaws.com/templates/1-click/external-slurmdbd.json) を使用して Slurmdbd スタックを作成します。テンプレートには以下の入力が必要です。

**ネットワーク**
+ **VPCId**: Slurmdbd インスタンスを起動するための VPC ID。
+ **SubnetId**: Slurmdbd インスタンスを起動するためのサブネット ID。
+ **PrivatePrefix**: VPC の CIDR プレフィックス。
+ **PrivateIp**: Slurmdbd インスタンスに割り当てるセカンダリプライベート IP。

**データベース接続**
+ **DBMSClientSG**: Slurmdbd インスタンスにアタッチするセキュリティグループ。このセキュリティグループは、データベースサーバーと Slurmdbd インスタンス間の接続を許可する必要があります。
+ **DBMSDatabaseName**: データベースの名前。
+ **DBMSUsername**: データベースのユーザー名。
+ **DBMSPasswordSecretArn**: データベースへのパスワードを含むシークレット。
+ **DBMSUri**: データベースサーバーの URI。

**インスタンス設定**
+ **InstanceType**: slurmdbd インスタンスに使用するインスタンスタイプ。
+ **KeyName**: slurmdbd インスタンスに使用する Amazon EC2 キーペア。

**Slurmdbd 設定**
+ **AMIID **: Slurmdbd インスタンスの AMI。AMI は ParallelCluster AMI である必要があります。ParallelCluster AMI のバージョンにより、Slurmdbd のバージョンが決まります。
+ **MungeKeySecretArn**: Slurmdbd とクラスター間の通信を認証するために使用する munge キーを含むシークレット。
+ **SlurmdbdPort**: slurmdbd で使用するポート番号。
+ **EnableSlurmdbdSystemService**: slurmdbd をシステムサービスとして有効にし、インスタンスの起動時に実行します。

**警告**  
データベースが別のバージョンの SlurmDB で作成した場合は、Slurmdbd をシステムサービスとして使用しないでください。  
データベースに多数のエントリが含まれている場合、Slurm Database Daemon (SlurmDBD) はデータベースの更新に数十分かかり、この間は応答しなくなることがあります。  
SlurmDB をアップグレードする前に、データベースのバックアップを作成します。詳細については、[Slurm のドキュメント](https://slurm.schedmd.com/quickstart_admin.html#upgrade)を参照してください。

## ステップ 2: 外部 Slurmdbd を有効にしたクラスターを作成する
<a name="external-slurmdb-accounting-step2"></a>

提供された CloudFormation テンプレートは、いくつかの定義された出力を持つ CloudFormation スタックを生成します。

から AWS マネジメントコンソール、 CloudFormation スタックの**出力**タブを表示して、作成されたエンティティを確認します。Slurm アカウンティングを有効にするには、これらの出力の一部 AWS ParallelCluster を設定ファイルで使用する必要があります。
+ **SlurmdbdPrivateIp**: [SlurmSettings](Scheduling-v3.md#Scheduling-v3-SlurmSettings) / [ExternalSlurmdbd](Scheduling-v3.md#Scheduling-v3-SlurmSettings-ExternalSlurmdbd) / [Host クラスター設定](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-ExternalSlurmdbd-Host)パラメータに使用します。
+ **SlurmdbdPort**: [SlurmSettings](Scheduling-v3.md#Scheduling-v3-SlurmSettings) / [ ExternalSlurmdbd](Scheduling-v3.md#Scheduling-v3-SlurmSettings-ExternalSlurmdbd) / [ ポート](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-ExternalSlurmdbd-Port)クラスター設定パラメータの値に使用されます。
+ **AccountingClientSecurityGroup**: これは、[HeadNode](HeadNode-v3.md) / [Networking](HeadNode-v3.md#HeadNode-v3-Networking) / [AdditionalSecurityGroups](HeadNode-v3.md#yaml-HeadNode-Networking-AdditionalSecurityGroups) 設定パラメータで定義されているクラスターのヘッドノードにアタッチされているセキュリティグループです。

さらに、 CloudFormation スタックビューの**パラメータ**タブから以下を実行します。
+ **MungeKeySecretArn**: [SlurmSettings](Scheduling-v3.md#Scheduling-v3-SlurmSettings) / [MungeKeySecretArn](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-MungeKeySecretArn) クラスター設定パラメータ値に使用します。

クラスター設定ファイルのデータベースパラメータを出力値で更新します。pcluster AWS CLI を使用してクラスターを作成します。

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

クラスターを作成すると、`sacctmgr` や `sacct` などの Slurm アカウンティングコマンドを使い始めることができます。

**警告**  
`ParallelCluster` と外部 SlurmDB との間のトラフィックは暗号化されません。クラスターと外部 SlurmDB は、信頼できるネットワークで実行することをお勧めします。



