翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Scheduling
セクション
(必須) クラスターで使用されるジョブスケジューラと、ジョブスケジューラが管理するコンピューティングインスタンスを定義します。次のいずれかを使用できます。Slurm またはス AWS Batch ケジューラ。それぞれがサポートする一連の設定とプロパティは異なります。
Scheduling: Scheduler: slurm ScalingStrategy:
string
SlurmSettings: MungeKeySecretArn:string
ScaledownIdletime:integer
QueueUpdateStrategy:string
EnableMemoryBasedScheduling:boolean
CustomSlurmSettings:[dict]
CustomSlurmSettingsIncludeFile:string
Database: Uri:string
UserName:string
PasswordSecretArn:string
DatabaseName:string
ExternalSlurmdbd:boolean
Host:string
Port:integer
Dns: DisableManagedDns:boolean
HostedZoneId:string
UseEc2Hostnames:boolean
SlurmQueues: - Name:string
ComputeSettings: LocalStorage: RootVolume: Size:integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
EphemeralVolume: MountDir:string
CapacityReservationTarget: CapacityReservationId:string
CapacityReservationResourceGroupArn:string
CapacityType:string
AllocationStrategy:string
JobExclusiveAllocation:boolean
CustomSlurmSettings:dict
Tags: - Key:string
Value:string
HealthChecks: Gpu: Enabled:boolean
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Name:string
Proxy: HttpProxyAddress:string
ComputeResources: - Name:string
InstanceType:string
Instances: - InstanceType:string
MinCount:integer
MaxCount:integer
DynamicNodePriority:integer
StaticNodePriority:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
SchedulableMemory:integer
HealthChecks: Gpu: Enabled:boolean
Efa: Enabled:boolean
GdrSupport:boolean
CapacityReservationTarget: CapacityReservationId:string
CapacityReservationResourceGroupArn:string
Networking: PlacementGroup: Enabled:boolean
Name:string
CustomSlurmSettings:dict
Tags: - Key:string
Value:string
CustomActions: OnNodeStart: Sequence: - Script:string
Args: -string
Script:string
Args: -string
OnNodeConfigured: Sequence: - Script:string
Args: -string
Script:string
Args: -string
Iam: InstanceProfile:string
InstanceRole:string
S3Access: - BucketName:string
EnableWriteAccess:boolean
KeyName:string
AdditionalIamPolicies: - Policy:string
Image: CustomAmi:string
Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name:
string
CapacityType:string
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name:string
InstanceTypes: -string
MinvCpus:integer
DesiredvCpus:integer
MaxvCpus:integer
SpotBidPercentage:float
Scheduling
のプロパティ
Scheduler
(必須)、String
)-
使用するスケジューラのタイプを指定します。サポートされている値は、
slurm
およびawsbatch
です。更新ポリシー: この設定が変更された場合、更新は許可されません。
注記
awsbatch
はalinux2
オペレーティングシステムとx86_64
プラットフォームのみをサポートします。 ScalingStrategy
(オプション、String
)-
動的に Slurm ノードはスケールアップされます。サポートされている値は
greedy-all-or-nothing
でall-or-nothing
、デフォルト値best-effort
は ですall-or-nothing
。注記
スケーリング戦略は、Slurm によって再開されるノードにのみ適用され、最終的にすでに実行されているノードには適用されません。
-
all-or-nothing
この戦略は all-or-nothing-approach、スケーリングプロセスの終了時にアイドル状態のインスタンスを回避することを目的とした に厳密に従います。これはベースで all-or-nothing動作します。つまり、完全にスケールアップするか、まったくスケールアップしないかのいずれかです。ジョブに 500 ノード以上が必要になったり、複数のコンピューティングリソースにまたがったりする場合、インスタンスが一時的に起動されるため、追加コストが発生する場合があることに注意してください。この戦略は、3 つの可能なスケーリング戦略の中でスループットが最も低くなります。スケーリング時間は、 ごとに送信されたジョブの数によって異なります。Slurm プログラムの実行を再開します。また、デフォルトで 1000 インスタンスである実行あたりのデフォルトの RunInstances リソースアカウント制限をはるかに超えてスケールすることはできません。詳細については、Amazon EC2 API スロットリングドキュメントを参照してください。 -
greedy-all-or-nothing
戦略と同様に all-or-nothing、スケーリング後のアイドルインスタンスを回避することを目的としています。この戦略では、スケーリングプロセス中に一時的なオーバースケーリングが可能になり、アプローチよりも高い all-or-nothingスループットを実現できますが、 RunInstances リソースアカウントの制限と同じスケーリング制限が 1,000 インスタンスも付属しています。 -
best-effort
この戦略では、スケーリングプロセスの終了時に一部のインスタンスがアイドル状態になっている場合でも、高スループットを優先します。ジョブによってリクエストされた数だけノードを割り当てようとしますが、リクエスト全体が満たされない可能性があります。他の戦略とは異なり、ベストエフォートアプローチは、複数のスケーリングプロセスの実行に沿ってアイドル状態のリソースを持つコストで、標準 RunInstances制限よりも多くのインスタンスを蓄積できます。
-
各戦略は、さまざまなスケーリングニーズを満たすように設計されているため、特定の要件や制約を満たすものを選択できます。
AwsBatchQueues
(オプション) AWS Batch キュー設定。サポートされているキューは 1 つだけです。このセクションは、Scheduler が awsbatch
に設定されている場合に必要です。awsbatch
スケジューラの詳細については、「Networking Setup」と「での AWS Batch (awsbatch) スケジューラの使用 AWS ParallelCluster」を参照してください。
AwsBatchQueues: - Name:
string
CapacityType:string
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name:string
InstanceTypes: -string
MinvCpus:integer
DesiredvCpus:integer
MaxvCpus:integer
SpotBidPercentage:float
AwsBatchQueues
のプロパティ
Name
(必須)、String
)-
AWS Batch キューの名前。
CapacityType
(オプション、String
)-
AWS Batch キューが使用するコンピューティングリソースのタイプ。サポートされている値は
ONDEMAND
、、SPOT
または ですCAPACITY_BLOCK
。デフォルト値はONDEMAND
です。注記
CapacityType
をSPOT
に設定した場合、アカウントにAWSServiceRoleForEC2Spot
サービスにリンクされたロールが含まれている必要があります。このロールは、次の AWS CLI コマンドを使用して作成できます。$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「スポットインスタンスリクエストのサービスにリンクされたロールEC2」を参照してください。
Networking
(必須) AWS Batch キューのネットワーク設定を定義します。
Networking: SubnetIds: -
string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
Networking
のプロパティ
SubnetIds
(必須)、[String]
)-
AWS Batch キューをプロビジョニングする既存のサブネットの ID を指定します。現在、サポートされているのは 1 つのサブネットのみです。
AssignPublicIp
(オプション、String
)-
AWS Batch キュー内のノードにパブリック IP アドレスを作成または割り当てます。サポートされている値は、
true
およびfalse
です。デフォルトは、指定されたサブネットによって異なります。 SecurityGroups
(オプション、[String]
)-
AWS Batch キューが使用するセキュリティグループのリスト。セキュリティグループを指定しない場合、 は新しいセキュリティグループ AWS ParallelCluster を作成します。
AdditionalSecurityGroups
(オプション、[String]
)-
AWS Batch キューが使用するセキュリティグループのリスト。
ComputeResources
(必須) AWS Batch キュー ComputeResources の設定を定義します。
ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name:
string
InstanceTypes: -string
MinvCpus:integer
DesiredvCpus:integer
MaxvCpus:integer
SpotBidPercentage:float
ComputeResources
のプロパティ
Name
(必須)、String
)-
AWS Batch キューコンピューティング環境の名前。
InstanceTypes
(必須)、[String]
)-
インスタンスタイプの AWS Batch コンピューティング環境配列。すべてのインスタンスタイプが
x86_64
アーキテクチャを使用する必要があります。 MinvCpus
(オプション、Integer
)-
AWS Batch コンピューティング環境VCPUsで使用できる最小数。
DesiredVcpus
(オプション、Integer
)-
AWS Batch コンピューティング環境VCPUs内の必要な の数。 AWS Batch は、ジョブキューの需要
MaxvCpus
に基づいて、この値をMinvCpus
と の間で調整します。 MaxvCpus
(オプション、Integer
)-
VCPUs AWS Batch コンピューティング環境の最大数。これを
DesiredVcpus
より小さい値に設定することはできません。 SpotBidPercentage
(オプション、Float
)-
インスタンスの起動前に Amazon EC2 スポットインスタンス料金が到達できるインスタンスタイプのオンデマンド料金の最大パーセンテージ。デフォルト値は
100
(100%) です。対応する範囲は1
~100
です。
SlurmQueues
(オプション) の設定 Slurm queue. このセクションは、Scheduler が slurm
に設定されている場合に必要です。
SlurmQueues: - Name:
string
ComputeSettings: LocalStorage: RootVolume: Size:integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
EphemeralVolume: MountDir:string
CapacityReservationTarget: CapacityReservationId:string
CapacityReservationResourceGroupArn:string
CapacityType:string
AllocationStrategy:string
JobExclusiveAllocation:boolean
CustomSlurmSettings:dict
Tags: - Key:string
Value:string
HealthChecks: Gpu: Enabled:boolean
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Name:string
Proxy: HttpProxyAddress:string
ComputeResources: - Name:string
InstanceType:string
Instances: - InstanceType:string
MinCount:integer
MaxCount:integer
DynamicNodePriority:integer
StaticNodePriority:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
SchedulableMemory:integer
HealthChecks: Gpu: Enabled:boolean
Efa: Enabled:boolean
GdrSupport:boolean
CapacityReservationTarget: CapacityReservationId:string
CapacityReservationResourceGroupArn:string
Networking: PlacementGroup: Enabled:boolean
Name:string
CustomSlurmSettings:dict
Tags: - Key:string
Value:string
CustomActions: OnNodeStart: Sequence: - Script:string
Args: -string
Script:string
Args: -string
OnNodeConfigured: Sequence: - Script:string
Args: -string
Script:string
Args: -string
Iam: InstanceProfile:string
InstanceRole:string
S3Access: - BucketName:string
EnableWriteAccess:boolean
KeyName:string
AdditionalIamPolicies: - Policy:string
Image: CustomAmi:string
更新ポリシー:このリスト値の設定では、更新中に新しい値を追加することができ、既存の値を削除する場合はコンピューティングフリートを停止する必要があります。
SlurmQueues
のプロパティ
Name
(必須)、String
)-
の名前 Slurm queue.
注記
クラスターのサイズは、更新中に変更される場合があります。詳細については、「クラスター容量のサイズと更新」を参照してください。
CapacityReservationTarget
-
注記
CapacityReservationTarget
バージョン 3.3.0 AWS ParallelCluster で が追加されました。CapacityReservationTarget: CapacityReservationId:
string
CapacityReservationResourceGroupArn:string
キューのコンピューティングリソースのオンデマンドキャパシティ予約を指定します。
CapacityReservationId
(オプション、String
)-
キューのコンピューティングリソースを対象とする既存のキャパシティ予約の ID。ID は、ML の ODCRまたはキャパシティブロックを参照できます。 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-blocks.html
予約では、インスタンスが使用するのと同じプラットフォームを使用する必要があります。例えば、インスタンスを
rhel8
で実行する場合、キャパシティ予約は Red Hat Enterprise Linux プラットフォームで実行する必要があります。詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「サポートされているプラットフォーム」を参照してください。 EC2注記
クラスター設定に Instances を含める場合、このキューレベルの
CapacityReservationId
設定を設定から除外する必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
CapacityReservationResourceGroupArn
(オプション、String
)-
キューのコンピューティングリソースのサービスにリンクされたキャパシティ予約のグループとして機能するリソースグループの Amazon リソースネーム (ARN)。 AWS ParallelCluster は、次の条件に基づいて、リソースグループから最適なキャパシティ予約を識別して使用します。
-
PlacementGroup
/ Networkingまたは SlurmQueues / SlurmQueues / ComputeResources で が有効になっている場合Networking、コンピューティングリソースが存在する場合は、 は、コンピューティングリソースPlacementGroup
のインスタンスタイプと をターゲットとするリソースグループ AWS ParallelCluster を選択します。PlacementGroup
は、ComputeResources で定義されているインスタンスタイプの 1 つをターゲットにしている必要があります。 -
/ Networkingまたは SlurmQueues / SlurmQueues / ComputeResources で が有効になってい
PlacementGroup
ない場合Networking、コンピューティングリソースが存在する場合、 はコンピューティングリソースのインスタンスタイプのみをターゲットとするリソースグループ AWS ParallelCluster を選択します。
リソースグループには、キューのすべてのコンピューティングリソースとアベイラビリティーゾーンにわたってアベイラビリティーゾーンで予約されているインスタンスタイプODCRごとに少なくとも 1 つが必要です。詳細については、「オンデマンドキャパシティ予約 (ODCR) を使用してインスタンスを起動する」を参照してください。
複数のサブネットの設定要件の詳細については、「Networking」/「SubnetIds」を参照してください。
注記
AWS ParallelCluster バージョン 3.4.0 に複数のアベイラビリティーゾーンが追加されました。
-
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
CapacityType
(オプション、String
)-
が使用するコンピューティングリソースのタイプ Slurm キューは を使用します。サポートされている値は
ONDEMAND
、、SPOT
または ですCAPACITY_BLOCK
。デフォルト値はONDEMAND
です。注記
CapacityType
をSPOT
に設定した場合、アカウントにAWSServiceRoleForEC2Spot
サービスにリンクされたロールがある必要があります。このロールは、次の AWS CLI コマンドを使用して作成できます。$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「スポットインスタンスリクエストのサービスにリンクされたロールEC2」を参照してください。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
AllocationStrategy
(オプション、String
)-
Instances で定義されているすべてのコンピューティングリソースの配分戦略を指定します。
有効な値:
lowest-price
|capacity-optimized
|price-capacity-optimized
デフォルト:
lowest-price
lowest-price
-
-
を使用する場合
CapacityType = ONDEMAND
、Amazon Fleet EC2 は料金を使用して注文を決定し、最も低価格のインスタンスを最初に起動します。 -
を使用する場合
CapacityType = SPOT
、Amazon Fleet EC2 は、利用可能な容量を持つ最低価格のスポットインスタンスプールからインスタンスを起動します。必要な容量を満たす前にプールの容量が不足すると、Amazon Fleet EC2 はインスタンスを起動してリクエストを実行します。特に、Amazon EC2 Fleet は、利用可能な容量を持つ最低価格のスポットインスタンスプールからインスタンスを起動します。Amazon EC2 Fleet は、複数の異なるプールからスポットインスタンスを起動する場合があります。 -
を設定すると
CapacityType = CAPACITY_BLOCK
、割り当て戦略がないため、AllocationStrategy
パラメータを設定できません。
-
capacity-optimized
-
-
CapacityType = ONDEMAND
を設定した場合、capacity-optimized
は使用できません。 -
を設定すると
CapacityType = SPOT
、Amazon EC2Fleet は起動するインスタンスの数に最適な容量を持つインスタンスをスポットインスタンスプールから起動します。
-
price-capacity-optimized
-
-
CapacityType = ONDEMAND
を設定した場合、capacity-optimized
は使用できません。 -
を設定すると
CapacityType = SPOT
、Amazon Fleet EC2 は起動するインスタンスの数に対してキャパシティーの可用性が最も高いプールを識別します。つまり、短期的に中断の可能性が最も低いと思われるプールからスポットインスタンスをリクエストすることになります。その後、Amazon EC2 Fleet は、これらのプールの最低料金からスポットインスタンスをリクエストします。
-
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
注記
AllocationStrategy
は AWS ParallelCluster バージョン 3.3.0 からサポートされています。 JobExclusiveAllocation
(オプション、String
)-
を に設定すると
true
、Slurm パーティションOverSubscribe
フラグは に設定されますEXCLUSIVE
。OverSubscribe
=EXCLUSIVE
の場合、パーティションのジョブは割り当てられたすべてのノードに排他的にアクセスできます。詳細については、EXCLUSIVE「」の「」を参照してください。Slurm ドキュメント内) を参照してください。 有効な値:
true
|false
デフォルト:
false
注記
JobExclusiveAllocation
は AWS ParallelCluster バージョン 3.7.0 からサポートされています。 CustomSlurmSettings
(オプション、Dict
)-
カスタムを定義します。Slurm パーティション (キュー) 設定。
カスタムのディクショナリを指定します。Slurm キュー (パーティション) に適用される設定パラメータのキーと値のペア。
などの個々のキーと値のペアは
Param1: Value1
、 の末尾に個別に追加されます。Slurm 形式のパーティション設定行Param1=Value1
。指定できるのは Slurm で拒否リストにない設定パラメータ
CustomSlurmSettings
。拒否リストに関する情報 Slurm 設定パラメータについては、「」を参照してくださいCustomSlurmSettings で拒否リストに記載されている Slurm 設定パラメータ。AWS ParallelCluster は、パラメータが拒否リストにあるかどうかのみをチェックします。 AWS ParallelCluster はカスタムを検証しません Slurm 設定パラメータの構文またはセマンティクス。カスタムを検証する責任はユーザーにあります Slurm 設定パラメータ。無効なカスタム Slurm 設定パラメータは、Slurm クラスターの作成と更新の失敗につながる可能性のあるデーモンの失敗。
カスタムを指定する方法の詳細については、Slurm の設定パラメータについては AWS ParallelCluster、「」を参照してくださいSlurm 設定のカスタマイズ。
の詳細については、「」を参照してください。Slurm 設定パラメータ。「」の「slurm.conf
」を参照してください。Slurm ドキュメント内) を参照してください。 注記
CustomSlurmSettings
は AWS ParallelCluster バージョン 3.6.0 からサポートされています。 Tags
(オプション、[文字列])-
タグのキーと値のペアのリスト。ComputeResource タグは、Tags セクション または
SlurmQueues
/Tags
で指定された重複するタグを上書きします。Key
(オプション、String
)-
タグキー。
Value
(オプション、String
)-
タグ値。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
HealthChecks
(オプション )-
キューのすべてのコンピューティングリソースのコンピューティングノードのヘルスチェックを指定します。
Gpu
(オプション )-
キュー内のすべてのコンピューティングリソースのGPUヘルスチェックを指定します。
注記
AWS ParallelCluster は、
alinux2
ARMオペレーティングシステムを使用するノードGpu
でHealthChecks
/ をサポートしていません。これらのプラットフォームは NVIDIA Data Center GPU Manager (DCGM)をサポートしていません。 Enabled
(オプション、Boolean
)-
がコンピューティングノードのGPUヘルスチェック AWS ParallelCluster を実行するかどうか。デフォルト:
false
。
Gpu
ヘルスチェックの動作-
/
Gpu
Enabled
が に設定されている場合true
、 はキュー内のコンピューティングリソースに対してGPUヘルスチェック AWS ParallelCluster を実行します。 -
Gpu
ヘルスチェックは、コンピューティングリソースのGPUヘルスチェックを実行して、 が劣化したノードへのジョブの送信を防ぎますGPU。 -
コンピューティングノードが
Gpu
ヘルスチェックに失敗すると、コンピューティングノードのステータスはDRAIN
に変わります。このノードで新しいジョブは開始されません。既存のジョブは完了まで実行されます。実行中のジョブがすべて完了すると、コンピューティングノードが動的ノードの場合は終了し、静的ノードの場合は置き換えられます。 -
Gpu
ヘルスチェックの期間は、選択したインスタンスタイプ、インスタンスGPUs内の の数、およびGpu
ヘルスチェックターゲットの数 (ジョブGPUターゲットの数に相当) によって異なります。8 のインスタンスの場合GPUs、一般的な時間は 3 分未満です。 -
サポートされていないインスタンスで
Gpu
ヘルスチェックを実行すると終了し、ジョブはコンピューティングノードで実行されます。例えば、インスタンスに がない場合GPU、またはインスタンスに があっても GPUではない場合、ヘルスチェックは終了しNVIDIAGPU、ジョブはコンピューティングノードで実行されます。のみがサポートNVIDIAGPUsされています。 -
Gpu
ヘルスチェックは、dcgmi
ツールを使用してノードのヘルスチェックを実行し、次の手順を実行します。ノードで
Gpu
ヘルスチェックが開始される場合。-
nvidia-dcgm
およびnvidia-fabricmanager
サービスが実行中かどうかを検出します。 -
これらのサービスが実行されていない場合、
Gpu
ヘルスチェックによって開始されます。 -
永続化モードが有効になっているかどうかを検出します。
-
永続化モードが有効になっていない場合は、
Gpu
ヘルスチェックによって有効になります。
ヘルスチェックの終了時に、
Gpu
ヘルスチェックはこれらのサービスとリソースの初期状態を復元します。 -
-
ジョブが特定のノードセット に割り当てられている場合GPUs、
Gpu
ヘルスチェックはその特定のセットでのみ実行されます。それ以外の場合、Gpu
ヘルスチェックはノードGPUs内のすべての で実行されます。 -
コンピューティングノードが同時に 2 つ以上の
Gpu
ヘルスチェックのリクエストを受け取った場合、最初のヘルスチェックのみが実行され、他はスキップされます。これは、ノード をターゲットとするヘルスチェックにも当てはまりますGPUs。この状況に関する追加情報については、ログファイルを確認できます。 -
特定のコンピューティングノードのヘルスチェックログは
/var/log/parallelcluster/slurm_health_check.log
ファイルで使用可能です。このファイルは CloudWatch、クラスター CloudWatch ロググループの Amazon で使用できます。このロググループには、次の情報があります。-
サービスおよび永続化モードの有効化と無効化を含め、
Gpu
ヘルスチェックによって実行されたアクションの詳細。 -
GPU 識別子、シリアル ID、および UUID。
-
ヘルスチェックの出力。
-
注記
HealthChecks
は AWS ParallelCluster バージョン 3.6.0 以降でサポートされています。
Networking
(必須) のネットワーク設定を定義します。Slurm queue.
Networking: SubnetIds: -
string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Name:string
Proxy: HttpProxyAddress:string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Networking
のプロパティ
SubnetIds
(必須)、[String]
)-
をプロビジョニングする既存のサブネットIDsの 。Slurm キューイン。
SlurmQueues/ComputeResources/InstanceType のインスタンスタイプを設定する場合、1 つのサブネットのみを定義できます。
SlurmQueues/ComputeResources/Instances のインスタンスタイプを設定する場合、単一のサブネットまたは複数のサブネットを定義できます。
複数のサブネットを使用する場合、キューに定義されているすべてのサブネットは同じ にありVPC、各サブネットは別々のアベイラビリティーゾーン (AZ) にある必要があります。
例えば、キューに subnet-1 と subnet-2 を定義するとします。
subnet-1
とsubnet-2
の両方を AZ-1 にすることはできません。subnet-1
は AZ-1 に、subnet-2
は AZ-2 にすることができます。1 つのインスタンスタイプのみを設定し、また複数のサブネットを使用する場合、
InstanceType
ではなくInstances
でインスタンスタイプを定義します。例えば、
ComputeResources
/InstanceType
=instance.type
の代わりにComputeResources
/Instances
/InstanceType
=instance.type
を定義します。注記
Elastic Fabric Adapter (EFA) は、異なるアベイラビリティーゾーンではサポートされていません。
複数のアベイラビリティーゾーンを使用すると、ストレージネットワーキングのレイテンシーが増加し、また inter-AZ のデータ転送コストが増加する可能性があります。例えば、インスタンスが異なる AZ に配置されているファイルストレージにアクセスする場合に発生することがあります。詳細については、「同一の AWS リージョンでのデータ転送
」を参照してください。 クラスターを更新して、単一のサブネットから複数のサブネットを使用するように変更する。
-
クラスターのサブネット定義が 1 つのサブネットと AWS ParallelCluster マネージド FSx for Lustre ファイルシステムで定義されているとします。続いて、更新されたサブネット ID 定義を使用してこのクラスターを直接更新することはできません。クラスターを更新するには、まずマネージドファイルシステムを外部ファイルシステムに変更する必要があります。詳細については、「AWS ParallelCluster マネージドストレージを外部ストレージに変換する」を参照してください。
-
クラスターのサブネット定義が 1 つのサブネットと外部の Amazon EFS ファイルシステムで定義されているとします。ただし、追加するAZs複数のサブネットのEFSマウントターゲットが のすべてに存在しないとします。続いて、更新されたサブネット ID 定義を使用してこのクラスターを直接更新することはできません。クラスターを更新するか、クラスターを作成するには、最初に、AZs定義された複数のサブネットのすべての のマウントターゲットをすべて作成する必要があります。
で定義されているアベイラビリティーゾーンとクラスターキャパシティーの予約CapacityReservationResourceGroupArn:
-
定義済みのキャパシティ予約のリソースグループおよびキューに定義されている一連のインスタンスタイプとアベイラビリティーゾーンの対象となる一連のインスタンスタイプとアベイラビリティーゾーンが重複していない場合、クラスターを作成することはできません。
-
定義されたキャパシティ予約リソースグループの対象となる一連のインスタンスタイプとアベイラビリティーゾーンと、キューに定義された一連のインスタンスタイプとアベイラビリティーゾーンの間に部分的な重複がある場合、クラスターを作成できます。 AWS ParallelCluster は、このケースの部分的な重複に関する警告メッセージを送信します。
-
詳細については、「オンデマンドキャパシティ予約 (ODCR) を使用してインスタンスを起動する」を参照してください。
注記
AWS ParallelCluster バージョン 3.4.0 に複数のアベイラビリティーゾーンが追加されました。
警告
この警告は、バージョン 3.3.1. AWS ParallelCluster version 3.3.1 より前のすべての 3.x.y AWS ParallelCluster バージョンに適用され、このパラメータが変更されても影響を受けません。
バージョン AWS ParallelCluster 3.3.1 より前の 3 つのバージョンの場合:
このパラメータを変更し、クラスターを更新すると、Lustre ファイルシステムFSx用の新しいマネージドが作成され、既存のデータを保存せずに、Lustre ファイルシステムFSx用の既存のマネージドが削除されます。その結果、データの損失が発生します。続行する前に、データを保存する場合は、既存の FSx Lustre ファイルシステムからデータをバックアップしてください。詳細については、FSx「 for Lustre ユーザーガイド」の「バックアップの使用」を参照してください。
新しいサブネット値を追加する場合は、更新ポリシー: この設定は、更新中に変更できます。
サブネット値を削除する場合は、更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
-
AssignPublicIp
(オプション、String
)-
のノードにパブリック IP アドレスを作成または割り当てます。Slurm queue. サポートされている値は、
true
およびfalse
です。指定したサブネットによってデフォルト値が決定されます。パブリック IP アドレスの割り当てをIPsデフォルトとするサブネット。を定義する場合 p4d または hpc6id インスタンスタイプ、または複数のネットワークインターフェイスまたはネットワークインターフェイスカードを持つ別のインスタンスタイプでは、パブリックアクセスを提供するElasticIp
true
には HeadNode / / Networking を設定する必要があります。 AWS パブリックは、単一のネットワークインターフェイスで起動されたインスタンスにのみ割り当てIPsることができます。この場合、NATゲートウェイを使用してクラスターコンピューティングノードへのパブリックアクセスを提供することをお勧めします。この場合は、AssignPublicIp
をfalse
に設定します。IP アドレスの詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「インスタンスの起動中にパブリックIPv4アドレスを割り当てる」を参照してください。 EC2 SecurityGroups
(オプション、[String]
)-
に使用するセキュリティグループのリスト Slurm queue. セキュリティグループが指定されていない場合、 はセキュリティグループ AWS ParallelCluster を作成します。
セキュリティグループがSharedStorageシステムに正しく設定されていることを確認します。
警告
この警告は 3 つすべてに適用されます。
x
.y
AWS ParallelCluster このパラメータが変更された場合、バージョン 3.3.0. AWS ParallelCluster version 3.3.0 より前のバージョンは影響を受けません。バージョン AWS ParallelCluster 3.3.0 より前の 3 つのバージョンの場合:
このパラメータを変更し、クラスターを更新すると、Lustre ファイルシステムFSx用の新しいマネージドが作成され、既存のデータを保存せずに、Lustre ファイルシステムFSx用の既存のマネージドが削除されます。その結果、データの損失が発生します。データを保存する場合は、既存の FSx for Lustre ファイルシステムからデータをバックアップしてください。詳細については、FSx「 for Lustre ユーザーガイド」の「バックアップの使用」を参照してください。
警告
コンピューティングインスタンスで Efa を有効にする場合は、EFA有効なインスタンスが、それ自体へのすべてのインバウンドトラフィックとアウトバウンドトラフィックを許可するセキュリティグループのメンバーであることを確認します。
AdditionalSecurityGroups
(オプション、[String]
)-
に使用する追加のセキュリティグループのリスト Slurm queue.
PlacementGroup
(オプション )-
のプレイスメントグループ設定を指定します。Slurm queue.
PlacementGroup: Enabled:
boolean
Id:string
Name:string
Enabled
(オプション、Boolean
)-
プレイスメントグループが に使用されるかどうかを示します。Slurm queue. デフォルト:
false
。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Id
(オプション、String
)-
が使用する既存のクラスター配置グループの配置グループ名 Slurm キューは を使用します。ID ではなくプレイスメントグループの名前を必ず指定してください。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Name
(オプション、String
)-
が使用する既存のクラスター配置グループの配置グループ名 Slurm キューは を使用します。ID ではなくプレイスメントグループの名前を必ず指定してください。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
注記
-
Name
またはId
を定義せずにPlacementGroup
/Enabled
をtrue
に設定した場合、ComputeResources/Networking/PlacementGroup がこの設定を上書きするように定義されていない限り、各コンピューティングリソースには独自のマネージドプレイスメントグループが割り当てられます。 -
AWS ParallelCluster バージョン 3.3.0 以降、//PlacementGroup/ Networking SlurmQueuesは //Networking/ SlurmQueues の優先代替手段として追加NameされましたPlacementGroupId。
PlacementGroup/Id と PlacementGroup/Name は同等です。いずれかを使用できます。
/ PlacementGroup Idと PlacementGroup / の両方を含めるとName、 AWS ParallelCluster 失敗します。どちらかを選択することができます。
PlacementGroup/Name を使用するのにクラスターを更新する必要はありません。
Proxy
(オプション )-
のプロキシ設定を指定します。Slurm queue.
Proxy: HttpProxyAddress:
string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
HttpProxyAddress
(オプション、String
)-
の HTTPまたは HTTPSプロキシサーバーを定義します。Slurm queue. 通常は
https://
です。x.x.x.x:8080
デフォルト値はありません。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Image
(オプション) に使用するイメージを指定します。Slurm queue. すべてのノードAMIで同じ を使用するには、 Imageセクションの CustomAmi設定を使用します。
Image: CustomAmi:
string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Image
プロパティ
CustomAmi
(オプション、String
)-
AMI に使用する Slurm デフォルトの の代わりにキュー。 AMIsを使用できます。pcluster CLI デフォルトの のリストを表示するコマンドAMIs。
注記
は、ヘッドノードで使用されるのと同じオペレーティングシステムに基づいてAMIいる必要があります。
pcluster list-official-images
カスタムが起動に追加のアクセス許可AMIを必要とする場合は、これらのアクセス許可をヘッドノードポリシーに追加する必要があります。
例えば、カスタムAMIに暗号化されたスナップショットが関連付けられている場合、ヘッドノードポリシーには次の追加ポリシーが必要です。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:
<AWS_REGION>
:<AWS_ACCOUNT_ID>
:key/<AWS_KMS_KEY_ID>
" ] } ] }カスタムAMI検証警告のトラブルシューティングについては、「」を参照してくださいカスタムAMI問題のトラブルシューティング。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
ComputeResources
(必須) ComputeResources
の設定を定義します。Slurm queue.
注記
クラスターのサイズは、更新中に変更される場合があります。詳細については、「クラスター容量のサイズと更新」を参照してください。
ComputeResources: - Name:
string
InstanceType:string
Instances: - InstanceType:string
MinCount:integer
MaxCount:integer
DynamicNodePriority:integer
StaticNodePriority:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
SchedulableMemory:integer
HealthChecks: Gpu: Enabled:boolean
Efa: Enabled:boolean
GdrSupport:boolean
CapacityReservationTarget: CapacityReservationId:string
CapacityReservationResourceGroupArn:string
Networking: PlacementGroup: Enabled:boolean
Name:string
CustomSlurmSettings:dict
Tags: - Key:string
Value:string
更新ポリシー:このリスト値の設定では、更新中に新しい値を追加することができ、既存の値を削除する場合はコンピューティングフリートを停止する必要があります。
ComputeResources
のプロパティ
Name
(必須)、String
)-
の名前 Slurm キューコンピューティング環境。名前の最大長は 25 文字です。
InstanceType
(必須)、String
)-
この で使用されるインスタンスタイプ Slurm コンピューティングリソース。クラスターのすべてのインスタンスタイプは、同じプロセッサアーキテクチャを使用している必要があります。インスタンスは
x86_64
またはarm64
のアーキテクチャのいずれかを使用できます。クラスター設定では、 InstanceType または インスタンス を定義する必要があります。両方が定義されている場合、 AWS ParallelCluster 失敗します。
InstanceType
を定義する場合、複数のサブネットを定義することはできません。1 つのインスタンスタイプのみを設定し、また複数のサブネットを使用する場合、InstanceType
ではなくInstances
のインスタンスタイプを定義します。詳細については、「Networking」/「SubnetIds」を参照してください。を定義する場合 p4d または hpc6id インスタンスタイプ、または複数のネットワークインターフェイスまたはネットワークインターフェイスカードを持つ別のインスタンスタイプでは、「」で説明されているように、プライベートサブネットでコンピューティングインスタンスを起動する必要がありますAWS ParallelCluster 2 つのサブネットの使用。 AWS パブリックは、単一のネットワークインターフェイスで起動されたインスタンスにのみ割り当てIPsることができます。詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「インスタンスの起動中にパブリックIPv4アドレスを割り当てる」を参照してください。 EC2
Instances
(必須)-
コンピューティングリソースのインスタンスタイプのリストを指定します。インスタンスタイプのリストの配分戦略を指定するには、「AllocationStrategy」を参照してください。
クラスター設定で、InstanceType または Instances のいずれかを定義する必要があります。両方が定義されていると、 AWS ParallelCluster は失敗します。
詳細については、「Slurm による複数のインスタンスタイプの割り当て」を参照してください。
Instances: - InstanceType:
string
注記
AWS ParallelCluster バージョン 3.7.0 以降では、インスタンス で複数のインスタンスタイプを設定すると、 を有効に
EnableMemoryBasedScheduling
できます。AWS ParallelCluster バージョン 3.2.0 から 3.6 の場合。
x
インスタンス で複数のインスタンスタイプを設定した場合、 を有効にするEnableMemoryBasedScheduling
ことはできません。更新ポリシー:このリスト値の設定では、更新中に新しい値を追加することができ、既存の値を削除する場合はコンピューティングフリートを停止する必要があります。
InstanceType
(必須)、String
)-
こので使用するインスタンスタイプ Slurm コンピューティングリソース。クラスター内のすべてのインスタンスタイプは、
x86_64
またはarm64
のいずれかの同じプロセッサアーキテクチャを使用する必要があります。Instances に一覧表示されているインスタンスタイプには、次が必要です。
-
同じ数の vCPUs、または DisableSimultaneousMultithreadingが に設定されている場合は
true
同じ数のコア。 -
同じ製造元で同じ数のアクセラレーター。
Instances に一覧表示されているインスタンスタイプには、次があります。
-
さまざまな量のメモリ。
この場合、最小メモリはコンシューマブルとして設定されます。Slurm リソース。
注記
AWS ParallelCluster バージョン 3.7.0 以降では、インスタンス で複数のインスタンスタイプを設定すると、 を有効に
EnableMemoryBasedScheduling
できます。AWS ParallelCluster バージョン 3.2.0 から 3.6 の場合。
x
インスタンス で複数のインスタンスタイプを設定した場合、 を有効にするEnableMemoryBasedScheduling
ことはできません。 -
さまざまなネットワークカード。
この場合、コンピューティングリソースに設定されるネットワークインターフェイスの数は、ネットワークカードの数が最小のインスタンスタイプによって定義されます。
-
さまざまなネットワーク帯域幅。
-
さまざまなインスタンスストアのサイズ。
を定義する場合 p4d または hpc6id インスタンスタイプ、または複数のネットワークインターフェイスまたはネットワークインターフェイスカードを持つ別のインスタンスタイプでは、「」で説明されているように、プライベートサブネットでコンピューティングインスタンスを起動する必要がありますAWS ParallelCluster 2 つのサブネットの使用。 AWS パブリックは、単一のネットワークインターフェイスで起動されたインスタンスにのみ割り当てIPsることができます。詳細については、「Linux インスタンス用 Amazon ユーザーガイド」の「インスタンスの起動中にパブリックIPv4アドレスを割り当てる」を参照してください。 EC2
-
注記
Instances
は AWS ParallelCluster バージョン 3.3.0 以降でサポートされています。 MinCount
(オプション、Integer
)-
が Slurm コンピューティングリソースは を使用します。デフォルトは 0 です。
注記
クラスターのサイズは、更新中に変更される場合があります。詳細については、「クラスター容量のサイズと更新」を参照してください。
MaxCount
(オプション、Integer
)-
が Slurm コンピューティングリソースは を使用します。デフォルトは 10 です。
を使用する場合
CapacityType = CAPACITY_BLOCK
、キャパシティブロック予約のすべてのインスタンスは静的ノードとして管理されるため、 は 0MinCount
以上MaxCount
である必要があります。クラスターの作成時に、ヘッドノードはすべての静的ノードの準備が整うのを待ってから、クラスターの作成の成功を知らせます。ただし、 を使用する場合
CapacityType = CAPACITY_BLOCK
、キャパシティブロックに関連付けられたコンピューティングリソースのノード部分は、このチェックでは考慮されません。クラスターは、設定されたすべてのキャパシティブロックがアクティブでなくても作成されます。注記
クラスターのサイズは、更新中に変更される場合があります。詳細については、「クラスター容量のサイズと更新」を参照してください。
DynamicNodePriority
(オプション、Integer
)-
キューコンピューティングリソースの動的ノードの優先度。優先度は にマッピングされます。Slurm コンピューティングリソースの動的ノードのノード
Weight
設定パラメータ。デフォルト値は 1000
です。Slurm は、最も低い
Weight
値を持つノードを最初に優先します。警告
でのさまざまな
Weight
値の使用 Slurm パーティション (キュー) は、キュー内のジョブスケジューリングの速度を遅くする可能性があります。AWS ParallelCluster バージョン 3.7.0 より前のバージョンでは、静的ノードと動的ノードの両方に同じデフォルトの重み が割り当てられていました
1
。この場合、Slurm は、静的ノードと動的ノードの命名スキーマにより、アイドル状態の静的ノードよりもアイドル状態の動的ノードを優先する可能性があります。他のすべてが等しい場合、Slurm はノードを名前でアルファベット順にスケジュールします。注記
DynamicNodePriority
が AWS ParallelCluster バージョン 3.7.0 に追加されました。 StaticNodePriority
(オプション、Integer
)-
キューコンピューティングリソースの静的ノードの優先度。優先度は にマッピングされます。Slurm コンピューティングリソースの静的ノードのノード
Weight
設定パラメータ。デフォルト値は 1
です。Slurm は、最も低い
Weight
値を持つノードを最初に優先します。警告
でのさまざまな
Weight
値の使用 Slurm パーティション (キュー) は、キュー内のジョブスケジューリングの速度を遅くする可能性があります。注記
StaticNodePriority
が AWS ParallelCluster バージョン 3.7.0 に追加されました。 SpotPrice
(オプション、Float
)-
インスタンスの起動前に Amazon EC2 スポットインスタンスに対して支払った最大料金。デフォルトの値はオンデマンドの料金です。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
DisableSimultaneousMultithreading
(オプション、Boolean
)-
の場合
true
、 のノードでマルチスレッド Slurm キューは無効になっています。デフォルト値はfalse
です。すべてのインスタンスタイプのマルチスレッドを無効にできるわけではありません。マルチスレッドの無効化をサポートするインスタンスタイプのリストについては、「Amazon EC2ユーザーガイドCPU」の「インスタンスタイプごとの各コアのCPUコアとスレッド」を参照してください。
SchedulableMemory
(オプション、Integer
)-
で設定された MiB のメモリ量 Slurm コンピューティングリソース
RealMemory
のコンピューティングノードの パラメータ。SlurmSettings/EnableMemoryBasedScheduling が有効になっている場合、この値はジョブに使用できるノードのメモリの上限です。デフォルト値は、Amazon EC2 インスタンスタイプにリストされ、Amazon によって返されるメモリの 95% EC2 API ですDescribeInstanceTypes。GiB で指定された値が MiB に変換されていることを確認してください。 サポートされる値:
1-EC2Memory
EC2Memory
は、Amazon EC2 インスタンスタイプにリストされ、Amazon によって返されるメモリ (MiB ) EC2 API ですDescribeInstanceTypes。GiB で指定された値が MiB に変換されていることを確認してください。 このオプションは、SlurmSettings/EnableMemoryBasedScheduling が有効になっている場合、最も関連性が高くなります。詳細については、「Slurm メモリベースのスケジューリング」を参照してください。
注記
SchedulableMemory
は AWS ParallelCluster バージョン 3.2.0 からサポートされています。バージョン 3.2.0 以降、デフォルトで AWS ParallelCluster の設定
RealMemory
Slurm は、Amazon によって返されるメモリの 95% EC2 API にノードを計算しますDescribeInstanceTypes
。この設定はEnableMemoryBasedScheduling
の値とは無関係です。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
HealthChecks
(オプション )-
コンピューティングリソースのヘルスチェックを指定します。
Gpu
(オプション )-
コンピューティングリソースのGPUヘルスチェックを指定します。
Enabled
(オプション、Boolean
)-
がキュー内のリソースを計算する際にGPUヘルスチェック AWS ParallelCluster を実行するかどうか。デフォルト:
false
。注記
AWS ParallelCluster は、
alinux2
ARMオペレーティングシステムを使用するノードGpu
でHealthChecks
/ をサポートしていません。これらのプラットフォームは NVIDIA Data Center GPU Manager (DCGM)をサポートしていません。
Gpu
ヘルスチェックの動作-
/
Gpu
Enabled
が に設定されている場合true
、 はコンピューティングリソースのヘルスGPUヘルスチェック AWS ParallelCluster を実行します。 -
Gpu
ヘルスチェックは、コンピューティングリソースでヘルスチェックを実行して、 が劣化したノードでジョブが送信されないようにしますGPU。 -
コンピューティングノードが
Gpu
ヘルスチェックに失敗すると、コンピューティングノードのステータスはDRAIN
に変わります。このノードで新しいジョブは開始されません。既存のジョブは完了まで実行されます。実行中のジョブがすべて完了すると、コンピューティングノードが動的ノードの場合は終了し、静的ノードの場合は置き換えられます。 -
Gpu
ヘルスチェックの期間は、選択したインスタンスタイプ、インスタンスGPUs内の の数、およびGpu
ヘルスチェックターゲットの数 (ジョブGPUターゲットの数に相当) によって異なります。8 のインスタンスの場合GPUs、一般的な時間は 3 分未満です。 -
サポートされていないインスタンスで
Gpu
ヘルスチェックを実行すると終了し、ジョブはコンピューティングノードで実行されます。例えば、インスタンスに がない場合GPU、またはインスタンスに があっても GPUではない場合、ヘルスチェックは終了しNVIDIAGPU、ジョブはコンピューティングノードで実行されます。のみがサポートNVIDIAGPUsされています。 -
Gpu
ヘルスチェックは、dcgmi
ツールを使用してノードのヘルスチェックを実行し、次の手順を実行します。ノードで
Gpu
ヘルスチェックが開始される場合。-
nvidia-dcgm
およびnvidia-fabricmanager
サービスが実行中かどうかを検出します。 -
これらのサービスが実行されていない場合、
Gpu
ヘルスチェックによって開始されます。 -
永続化モードが有効になっているかどうかを検出します。
-
永続化モードが有効になっていない場合は、
Gpu
ヘルスチェックによって有効になります。
ヘルスチェックの終了時に、
Gpu
ヘルスチェックはこれらのサービスとリソースの初期状態を復元します。 -
-
ジョブが特定のノードセット に割り当てられている場合GPUs、
Gpu
ヘルスチェックはその特定のセットでのみ実行されます。それ以外の場合、Gpu
ヘルスチェックはノードGPUs内のすべての で実行されます。 -
コンピューティングノードが同時に 2 つ以上の
Gpu
ヘルスチェックのリクエストを受け取った場合、最初のヘルスチェックのみが実行され、他はスキップされます。これは、ノード をターゲットとするヘルスチェックにも当てはまりますGPUs。この状況に関する追加情報については、ログファイルを確認できます。 -
特定のコンピューティングノードのヘルスチェックログは
/var/log/parallelcluster/slurm_health_check.log
ファイルで使用可能です。このファイルは CloudWatch、クラスター CloudWatch ロググループの Amazon で使用できます。このロググループには、以下があります。-
サービスおよび永続化モードの有効化と無効化を含め、
Gpu
ヘルスチェックによって実行されたアクションの詳細。 -
GPU 識別子、シリアル ID、および UUID。
-
ヘルスチェックの出力。
-
注記
HealthChecks
は AWS ParallelCluster バージョン 3.6.0 以降でサポートされています。 Efa
(オプション )-
のノードの Elastic Fabric Adapter (EFA) 設定を指定します。Slurm queue.
Efa: Enabled:
boolean
GdrSupport:boolean
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Enabled
(オプション、Boolean
)-
Elastic Fabric Adapter (EFA) を有効にすることを指定します。をサポートする Amazon EC2インスタンスのリストを表示するにはEFA、「Linux インスタンス用 Amazon ユーザーガイド」の「サポートされているインスタンスタイプ」を参照してください。 EC2 詳細については、「Elastic Fabric Adapter」を参照してください。クラスター SlurmQueues/Networking/PlacementGroup を使用して、インスタンス間のレイテンシーを最小限に抑えることをお勧めします。
デフォルト値は
false
です。注記
Elastic Fabric Adapter (EFA) は、異なるアベイラビリティーゾーンではサポートされていません。詳細については、「」を参照してくださいSubnetIds。
警告
でカスタムセキュリティグループを定義する場合はSecurityGroups、EFA有効なインスタンスが、すべてのインバウンドトラフィックとアウトバウンドトラフィックをそれ自体に許可するセキュリティグループのメンバーであることを確認します。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
GdrSupport
(オプション、Boolean
)-
(オプション) AWS ParallelCluster バージョン 3.0.2 より、この設定は無効となりました。(GPUDirectRDMAリモート直接メモリアクセスEFA) の Elastic Fabric Adapter () のサポートは、 のインスタンスタイプでサポートされている場合、常に有効になります。Slurm コンピューティングリソースとオペレーティングシステム。
注記
AWS ParallelCluster バージョン 3.0.0 から 3.0.1: のサポートGPUDirectRDMAは で有効になっています Slurm コンピューティングリソース。のサポートGPUDirectRDMAは、特定のオペレーティングシステム上の特定のインスタンスタイプ (
p4d.24xlarge
) でサポートされています (Os はalinux2
、ubuntu1804
、または ですubuntu2004
)。デフォルト値は false です。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
CapacityReservationTarget
-
CapacityReservationTarget: CapacityReservationId:
string
CapacityReservationResourceGroupArn:string
コンピューティングリソースに使用するオンデマンドキャパシティ予約を指定します。
CapacityReservationId
(オプション、String
)-
キューのコンピューティングリソースを対象とする既存のキャパシティ予約の ID。ID は、ML の ODCRまたはキャパシティブロックを参照できます。 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-blocks.html
このパラメータがコンピューティングリソースレベルで指定されている場合、 InstanceType はオプションで、予約から自動的に取得されます。
CapacityReservationResourceGroupArn
(オプション、String
)-
コンピューティングリソースのキャパシティ予約のサービスにリンクされたグループとして機能するリソースグループの Amazon リソースネーム (ARN) を示します。 は、グループから最も適切なキャパシティ予約 AWS ParallelCluster を識別して使用します。リソースグループには、コンピューティングリソースODCRにリストされているインスタンスタイプごとに少なくとも 1 つが必要です。詳細については、「オンデマンドキャパシティ予約 (ODCR) を使用してインスタンスを起動する」を参照してください。
-
PlacementGroup
/ Networkingまたは SlurmQueues / SlurmQueues / ComputeResources で が有効になっている場合Networking、 はインスタンスタイプをターゲットとするリソースグループ AWS ParallelCluster を選択し、存在する場合はコンピューティングリソースPlacementGroup
を選択します。PlacementGroup
は、ComputeResources で定義されているインスタンスタイプの 1 つをターゲットにしている必要があります。 -
/ Networkingまたは SlurmQueues / SlurmQueues / ComputeResources で が有効になってい
PlacementGroup
ない場合Networking、 は、存在する場合はコンピューティングリソースのインスタンスタイプのみをターゲットとするリソースグループ AWS ParallelCluster を選択します。
-
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
注記
CapacityReservationTarget
バージョン 3.3.0 で AWS ParallelCluster が追加されます。 Networking
-
Networking: PlacementGroup: Enabled:
boolean
Name:string
PlacementGroup
(オプション )-
コンピューティングリソースの配置グループ設定を指定します。
Enabled
(オプション、Boolean
)-
コンピューティングリソースに配置グループを使用するかどうかを示します。
-
Name
を定義せずにtrue
に設定すると、そのコンピューティングリソースには SlurmQueues/Networking/PlacementGroup 設定に関係なく、独自のマネージドプレイスメントグループが割り当てられます。 -
Name
を定義してtrue
に設定すると、そのコンピューティングリソースにはSlurmQueues
/Networking
/PlacementGroup
設定に関係なく、名前付きのプレイスメントグループが割り当てられます。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
-
Name
(オプション、String
)-
コンピューティングリソースに使用される既存のクラスタープレイスメントグループのプレースメントグループ名です。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
注記
-
PlacementGroup
/Enabled
の両方とName
が設定されていない場合、それぞれの値はデフォルトで SlurmQueues/Networking/PlacementGroup 設定になります。 -
ComputeResources
/Networking
/PlacementGroup
が AWS ParallelCluster バージョン 3.3.0 に追加されました。
CustomSlurmSettings
(オプション、Dict
)-
(オプション) カスタムを定義します。Slurm ノード (コンピューティングリソース) 設定。
カスタムのディクショナリを指定します。Slurm に適用する設定パラメータのキーと値のペア Slurm ノード (コンピューティングリソース)。
などの個々のキーと値のペアは
Param1: Value1
、 の末尾に個別に追加されます。Slurm 形式のノード設定行Param1=Value1
。指定できるのは Slurm で拒否リストにない設定パラメータ
CustomSlurmSettings
。拒否リストに関する情報 Slurm 設定パラメータについては、「」を参照してくださいCustomSlurmSettings で拒否リストに記載されている Slurm 設定パラメータ。AWS ParallelCluster は、パラメータが拒否リストにあるかどうかのみをチェックします。 AWS ParallelCluster はカスタムを検証しません Slurm 設定パラメータの構文またはセマンティクス。カスタムを検証する責任はユーザーにあります Slurm 設定パラメータ。無効なカスタム Slurm 設定パラメータは、Slurm クラスターの作成と更新の失敗につながる可能性のあるデーモンの失敗。
カスタムを指定する方法の詳細については、Slurm の設定パラメータについては AWS ParallelCluster、「」を参照してくださいSlurm 設定のカスタマイズ。
の詳細については、「」を参照してください。Slurm 設定パラメータ。「」の「slurm.conf
」を参照してください。Slurm ドキュメント内) を参照してください。 注記
CustomSlurmSettings
は AWS ParallelCluster バージョン 3.6.0 からサポートされています。 Tags
(オプション、[文字列])-
タグのキーと値のペアのリスト。
ComputeResource
タグは、Tags セクション または SlurmQueues/Tags
で指定された重複するタグを上書きします。Key
(オプション、String
)-
タグキー。
Value
(オプション、String
)-
タグ値。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
ComputeSettings
(必須) ComputeSettings
の設定を定義します。Slurm queue.
ComputeSettings
のプロパティ
内のノードComputeSettings
のプロパティを指定します。Slurm queue.
ComputeSettings: LocalStorage: RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
EphemeralVolume: MountDir:string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
LocalStorage
(オプション )-
内のノード
LocalStorage
のプロパティを指定します。Slurm queue.LocalStorage: RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
EphemeralVolume: MountDir:string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
RootVolume
(オプション )-
内のノードのルートボリュームの詳細を指定します。Slurm queue.
RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:integer
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Size
(オプション、Integer
)-
のノードのルートボリュームサイズをギビバイト (GiB ) で指定します。Slurm queue. デフォルトのサイズは から取得されますAMI。別のサイズを使用するには、 が AMIをサポートしている必要があります
growroot
。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Encrypted
(オプション、Boolean
)-
の場合
true
、 内のノードのルートボリューム Slurm キューは暗号化されます。デフォルト値はfalse
です。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
VolumeType
(オプション、String
)-
内のノードの Amazon EBSボリュームタイプを指定します。Slurm queue. サポートされている値は
gp2
、gp3
、io1
、io2
、sc1
、st1
およびstandard
です。デフォルト値はgp3
です。詳細については、「Amazon ユーザーガイド」の「Amazon EBSボリュームタイプ」を参照してください。 EC2
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Iops
(オプション、Boolean
)-
io1
、、io2
およびgp3
タイプのボリュームIOPSの の数を定義します。デフォルト値、対応値、
volume_iops
対volume_size
の比率は、VolumeType
とSize
で異なります。VolumeType
=io1
-
デフォルト
Iops
= 100サポートする値
Iops
= 100 — 64000 †最大
volume_iops
対volume_size
比 = 50IOPS/GiB 。5000 には、少なくとも 100 GiBvolume_size
の IOPSが必要です。 VolumeType
=io2
-
デフォルト
Iops
= 100サポートする値
Iops
= 100 — 64000 (io2
Block Express ボリュームの場合は 256000) †最大
Iops
対Size
比 = 500IOPS/GiB 。5000 には、少なくとも 10 GiBSize
の IOPSが必要です。 VolumeType
=gp3
-
デフォルト
Iops
= 3000サポートする値
Iops
= 3,000–16,000 †最大
Iops
対Size
比 = 3000 IOPSを超えるボリュームの場合、GiB IOPSあたり 500。
† 最大IOPSは、32,000 を超える でプロビジョニングされた Nitro System 上に構築されたインスタンスでのみ保証されますIOPS。他のインスタンスには、最大 32,000 の を含めることができますIOPS。ボリュームを変更しない限り、以前の
io1
ボリュームはパフォーマンスが完全にはならないことがあります。io2
Block Express ボリュームは、R5b
インスタンスタイプで最大 256000 までのvolume_iops
値をサポートします。詳細については、「Amazon ユーザーガイド」の「io2
Block Express ボリューム」を参照してください。 EC2更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Throughput
(オプション、Integer
)-
gp3
ボリュームタイプのスループットを MiB/秒で定義します。この設定は、VolumeType
がgp3
の場合のみ有効です。デフォルト値は125
です。サポートされる値: 125 — 1000 MIB/秒Throughput
とIops
の比率は 0.25 以下にします。最大のスループットである 1000 MiB/秒を実現するためには、Iops
の設定を 4000 以上にする必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
EphemeralVolume
(オプション、Boolean
)-
エフェメラルボリュームの設定を指定します。エフェメラルボリュームは、すべてのインスタンスストアボリュームを、
ext4
ファイルシステムでフォーマットされた 1 つの論理ボリュームにまとめることで作成されます。デフォルト:/scratch
。インスタンスタイプにインスタンスストアボリュームがない場合、エフェメラルボリュームは作成されません。詳細については、「Amazon ユーザーガイド」の「インスタンスストアボリューム」を参照してください。 EC2EphemeralVolume: MountDir:
string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
MountDir
(オプション、String
)-
内の各ノードのエフェメラルボリュームのマウントディレクトリ Slurm queue.
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
CustomActions
(オプション) のノードで実行するカスタムスクリプトを指定します。Slurm queue.
CustomActions: OnNodeStart: Sequence: - Script:
string
Args: -string
Script:string
Args: -string
OnNodeConfigured: Sequence: - Script:string
Args: -string
Script:string
Args: -string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
CustomActions
プロパティ
OnNodeStart
(オプション、String
)-
のノードで実行する一連のスクリプトまたは単一のスクリプトを指定します。Slurm は、ノードデプロイのブートストラップアクションが開始される前にキューに入れます。 AWS ParallelCluster は、同じカスタムアクション
Sequence
に対して 1 つのスクリプトと の両方を含めることをサポートしていません。詳細については、「カスタムブートストラップアクション」を参照してください。Sequence
(オプション )-
実行するスクリプトのリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Script
(必須)、String
)-
使用するファイル。ファイルパスは
https://
またはs3://
で始まる必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Args
(オプション、[String]
)-
スクリプトに渡す引数のリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Script
(必須)、String
)-
単一のスクリプトに使用するファイル。ファイルパスは
https://
またはs3://
で始まる必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Args
(オプション、[String]
)-
単一のスクリプトに渡す引数のリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
OnNodeConfigured
(オプション、String
)-
のノードで実行する一連のスクリプトまたは 1 つのスクリプトを指定します。Slurm は、すべてのノードブートストラップアクションが完了した後にキューに入れます。 AWS ParallelCluster は、同じカスタムアクション
Sequence
に対して 1 つのスクリプトと の両方を含めることをサポートしていません。詳細については、「カスタムブートストラップアクション」を参照してください。Sequence
(オプション )-
実行するスクリプトのリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Script
(必須)、String
)-
使用するファイル。ファイルパスは
https://
またはs3://
で始まる必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Args
(オプション、[String]
)-
スクリプトに渡す引数のリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Script
(必須)、String
)-
単一のスクリプトに使用するファイル。ファイルパスは
https://
またはs3://
で始まる必要があります。更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
Args
(オプション、[String]
)-
単一のスクリプトに渡す引数のリスト。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
注記
Sequence
バージョン 3.6.0 AWS ParallelCluster 以降で追加されました。を指定するとSequence
、カスタムアクションの複数のスクリプトを一覧表示できます。 は、 を含めずに、1 つのスクリプトでカスタムアクションを設定することを AWS ParallelCluster 引き続きサポートしますSequence
。AWS ParallelCluster は、同じカスタムアクション
Sequence
に 1 つのスクリプトと の両方を含めることをサポートしていません。
Iam
(オプション) のオプションIAMの設定を定義します。Slurm queue.
Iam: S3Access: - BucketName:
string
EnableWriteAccess:boolean
KeyName:string
AdditionalIamPolicies: - Policy:string
InstanceProfile:string
InstanceRole:string
Iam
プロパティ
InstanceProfile
(オプション、String
)-
のデフォルトのインスタンスロールまたはインスタンスプロファイルを上書きするインスタンスプロファイルを指定します。Slurm queue.
InstanceProfile
およびInstanceRole
の両方を指定することはできません。形式はarn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}
です。これを指定すると、
S3Access
とAdditionalIamPolicies
の設定を指定することはできません。AWS ParallelCluster に追加された機能は新しいアクセス許可を必要とすることが多いため、
S3Access
とAdditionalIamPolicies
の設定のいずれかまたは両方を指定することをお勧めします。 InstanceRole
(オプション、String
)-
のデフォルトのインスタンスロールまたはインスタンスプロファイルを上書きするインスタンスロールを指定します。Slurm queue.
InstanceProfile
およびInstanceRole
の両方を指定することはできません。形式はarn:${Partition}:iam::${Account}:role/${RoleName}
です。これを指定すると、
S3Access
とAdditionalIamPolicies
の設定を指定することはできません。AWS ParallelCluster に追加された機能は新しいアクセス許可を必要とすることが多いため、
S3Access
とAdditionalIamPolicies
の設定のいずれかまたは両方を指定することをお勧めします。 S3Access
(オプション )-
のバケットを指定します。Slurm queue. これは、 内のバケットへの指定されたアクセスを許可するポリシーを生成するために使用されます。Slurm queue.
これを指定すると、
InstanceProfile
とInstanceRole
の設定を指定することはできません。AWS ParallelCluster に追加された機能は新しいアクセス許可を必要とすることが多いため、
S3Access
とAdditionalIamPolicies
の設定のいずれかまたは両方を指定することをお勧めします。S3Access: - BucketName:
string
EnableWriteAccess:boolean
KeyName:string
BucketName
(必須)、String
)-
バケットの名前。
KeyName
(オプション、String
)-
バケットのキーです。デフォルト値は
*
です。 EnableWriteAccess
(オプション、Boolean
)-
バケットに対して書き込みアクセスが可能かどうかを示す。
AdditionalIamPolicies
(オプション )-
Amazon のIAMポリシーの Amazon リソースネーム (ARNs) EC2 のリストを指定します。このリストは、 に使用されるルートロールにアタッチされます。Slurm が必要とするアクセス許可に加えて、 キュー AWS ParallelCluster。
IAM ポリシー名とポリシー名ARNは異なります。名前を使用することはできません。
これを指定すると、
InstanceProfile
とInstanceRole
の設定を指定することはできません。AWS ParallelCluster が必要とするパーミッションに
AdditionalIamPolicies
が追加され、InstanceRole
には必要なパーミッションがすべて含まれている必要があるため、AdditionalIamPolicies
を使用することをお勧めします。必要な権限は、機能が追加されるにつれ、リリースごとに変更されることがよくあります。デフォルト値はありません。
AdditionalIamPolicies: - Policy:
string
Policy
(必須)、[String]
)-
IAM ポリシーのリスト。
SlurmSettings
(オプション) の設定を定義します。Slurm クラスター全体に適用されます。
SlurmSettings: ScaledownIdletime:
integer
QueueUpdateStrategy:string
EnableMemoryBasedScheduling:boolean
CustomSlurmSettings:[dict]
CustomSlurmSettingsIncludeFile:string
Database: Uri:string
UserName:string
PasswordSecretArn:string
ExternalSlurmdbd: Host:string
Port:integer
Dns: DisableManagedDns:boolean
HostedZoneId:string
UseEc2Hostnames:boolean
SlurmSettings
プロパティ
ScaledownIdletime
(オプション、Integer
)-
ジョブと がない時間 (分単位) を定義します。Slurm ノードは終了します。
デフォルト値は
10
です。 MungeKeySecretArn
(オプション、String
)-
で使用する base64 でエンコードされた munge キーを含むプレーンテキスト AWS Secrets Manager シークレットの Amazon リソースネーム (ARN) Slurm クラスター。この munge キーは、 間のRPC呼び出しを認証するために使用されます。Slurm クライアントコマンドと Slurm リモートサーバーとして機能するデーモン。が指定され MungeKeySecretArn ていない場合、 AWS ParallelCluster はクラスターのランダムな munge キーを生成します。
注記
MungeKeySecretArn
はバージョン 3.8.0 以降で AWS ParallelCluster サポートされています。警告
MungeKeySecretArn が既存のクラスターに新しく追加された場合、 ParallelClusterロールバックの場合、または後で を削除しても、 は以前の munge Key を復元しません MungeKeySecretArn。代わりに、新しいランダムな munge キーが生成されます。
AWS ParallelCluster ユーザーにその特定のシークレットリソース DescribeSecretに対する に対するアクセス許可がある場合、 MungeKeySecretArn は検証されます。 MungeKeySecretArn は、次の場合に有効です。
-
指定されたシークレットが存在し、
-
シークレットはプレーンテキストで、有効な base64 でエンコードされた文字列が含まれています。
-
デコードされたバイナリ munge キーのサイズは 256~8192 ビットです。
pcluster ユーザーIAMポリシーに が含まれていない場合 DescribeSecret、 MungeKeySecretArn は検証されず、警告メッセージが表示されます。詳細については、「AWS ParallelCluster pcluster 基本ユーザーポリシー」を参照してください。
を更新するときは MungeKeySecretArn、コンピューティングフリートとすべてのログインノードを停止する必要があります。
シークレット内のシークレット値がARN変更されても が同じARNままである場合、クラスターは新しい munge キーで自動的に更新されません。シークレットARNの新しい munge キーを使用するには、コンピューティングフリートとログインノードを停止してから、ヘッドノードから次のコマンドを実行する必要があります。
sudo /opt/parallelcluster/scripts/slurm/update_munge_key.sh
コマンドの実行後、コンピューティングフリートとログインノードの両方を再開できます。新しくプロビジョニングされたコンピューティングノードとログインノードは自動的に新しい munge キーの使用を開始します。
base64 でエンコードされたカスタム munge キーを生成するには、munge ソフトウェアで分散された mungekey ユーティリティ
を使用し、OS で一般的に利用可能な base64 ユーティリティを使用してエンコードできます。または、bash を使用します (bs パラメータを 32 ~ 1024 に設定してください)。 dd if=/dev/random bs=128 count=1 2>/dev/null | base64 -w 0
または Python を次のように指定します。
import random import os import base64 # key length in bytes key_length=128 base64.b64encode(os.urandom(key_length)).decode("utf-8")
更新ポリシー: NEW UPDATE POLICY WITH COMPUTE FLEET AND LOGIN NODES STOPPED (誤って 3.7.0 に追加されていない)。
-
QueueUpdateStrategy
(オプション、String
)-
次の更新ポリシーを持つ SlurmQueues セクションパラメータの置換戦略を指定します。
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートが停止しているか、QueueUpdateStrategy が設定されている必要があります。
QueueUpdateStrategy
値は、クラスター更新プロセスが開始するときにのみ使用されます。有効な値:
COMPUTE_FLEET_STOP
|DRAIN
|TERMINATE
デフォルト値:
COMPUTE_FLEET_STOP
DRAIN
-
パラメータ値が変更されたキューのノードは
DRAINING
に設定されます。このステータスのノードは新しいジョブを受け入れず、実行中のジョブは継続し、完了します。ノードが
idle
(DRAINED
) になった後、ノードが静的な場合はノードが置き換えられ、動的な場合は終了します。パラメータ値が変更されていない他のキューの他のノードは影響を受けません。この戦略でパラメータ値が変更されたキューノードをすべて置き換えるのに必要な時間は、実行中のワークロードによって異なります。
COMPUTE_FLEET_STOP
-
QueueUpdateStrategy
パラメータのデフォルト値。この設定で SlurmQueues セクションのパラメータを更新する場合、クラスターの更新を実行する前にコンピューティングフリートを停止する必要があります。$
pcluster update-compute-fleet --status STOP_REQUESTED
TERMINATE
-
パラメータ値が変更されたキューでは、実行中のジョブは終了し、ノードの電源はすぐにオフになります。
静的ノードは置き換えられ、動的ノードは終了します。
パラメータ値が変更されていない他のキューの他のノードは影響を受けません。
注記
QueueUpdateStrategy
は AWS ParallelCluster バージョン 3.2.0 からサポートされています。 EnableMemoryBasedScheduling
(オプション、Boolean
)-
の場合
true
、メモリベースのスケジューリングは で有効になります。Slurm。 詳細については、SlurmQueues「//ComputeResources」を参照してくださいSchedulableMemory。デフォルト値は
false
です。警告
メモリベースのスケジューリングを有効にすると、Slurm スケジューラはジョブとノード割り当てを処理します。
詳細については、「Slurm メモリベースのスケジューリング」を参照してください。
注記
EnableMemoryBasedScheduling
は AWS ParallelCluster バージョン 3.2.0 からサポートされています。注記
AWS ParallelCluster バージョン 3.7.0 以降では、インスタンス で複数のインスタンスタイプを設定すると、 を有効に
EnableMemoryBasedScheduling
できます。AWS ParallelCluster バージョン 3.2.0 から 3.6 の場合。
x
インスタンス で複数のインスタンスタイプを設定した場合、 を有効にするEnableMemoryBasedScheduling
ことはできません。 CustomSlurmSettings
(オプション、[Dict]
)-
カスタムを定義します。Slurm クラスター全体に適用される設定。
のリストを指定します。Slurm が生成する
slurm.conf
AWS ParallelCluster ファイルの末尾に追加するキーと値のペアの設定ディクショナリ。リスト内の各ディクショナリは、Slurm 設定ファイル。指定するパラメータはシンプルにすることも複雑にすることもできます
次の例に示すように、シンプルなパラメータは 1 つのキーペアで構成されます。
- Param1: 100 - Param2: "SubParam1,SubParam2=SubValue2"
でレンダリングされた例 Slurm 設定:
Param1=100 Param2=SubParam1,SubParam2=SubValue2
複雑 Slurm 設定パラメータは、次の例に示すように、複数のスペース区切りのキーと値のペアで構成されます。
- NodeName: test-nodes[1-10] CPUs: 4 RealMemory: 4196 ... # other node settings - NodeSet: test-nodeset Nodes: test-nodes[1-10] ... # other nodeset settings - PartitionName: test-partition Nodes: test-nodeset ... # other partition settings
例、 でレンダリング Slurm 設定:
NodeName=test-nodes[1-10] CPUs=4 RealMemory=4196 ... # other node settings NodeSet=test-nodeset Nodes=test-nodes[1-10] ... # other nodeset settings PartitionName=test-partition Nodes=test-nodeset ... # other partition settings
注記
カスタム Slurm ノードの名前に
-st-
または-dy-
パターンを含めることはできません。これらのパターンは AWS ParallelClusterが管理するノードのために予約されています。カスタムを指定する場合 Slurm の設定パラメータ
CustomSlurmSettings
。カスタムを指定しないでください Slurm の設定パラメータCustomSlurmSettingsIncludeFile
。指定できるのは Slurm で拒否リストにない設定パラメータ
CustomSlurmSettings
。拒否リストに関する情報 Slurm 設定パラメータについては、「」を参照してくださいCustomSlurmSettings で拒否リストに記載されている Slurm 設定パラメータ。AWS ParallelCluster は、パラメータが拒否リストにあるかどうかのみをチェックします。 AWS ParallelCluster はカスタムを検証しません Slurm 設定パラメータの構文またはセマンティクス。カスタムを検証する責任はユーザーにあります。Slurm 設定パラメータ。無効なカスタム Slurm 設定パラメータは Slurm クラスターの作成と更新の失敗につながる可能性のあるデーモンの失敗。
カスタムを指定する方法の詳細については、Slurm の設定パラメータについては AWS ParallelCluster、「」を参照してくださいSlurm 設定のカスタマイズ。
の詳細については、「」を参照してください。Slurm 設定パラメータ。「」の「slurm.conf
」を参照してください。Slurm ドキュメント内) を参照してください。 注記
CustomSlurmSettings
は AWS ParallelCluster バージョン 3.6.0 からサポートされています。 CustomSlurmSettingsIncludeFile
(オプション、String
)-
カスタムを定義します。Slurm クラスター全体に適用される設定。
カスタムを指定します。Slurm カスタムで構成される ファイル Slurm が AWS ParallelCluster 生成する
slurm.conf
ファイルの最後に追加する設定パラメータ。ファイルへのパスを含める必要があります。パスは
https://
またはs3://
で始まる必要があります。カスタムを指定する場合 Slurm の設定パラメータ
CustomSlurmSettingsIncludeFile
。カスタムを指定しないでください Slurm の設定パラメータCustomSlurmSettings
。注記
カスタム Slurm ノードの名前に
-st-
または-dy-
パターンを含めることはできません。これらのパターンは AWS ParallelClusterが管理するノードのために予約されています。指定できるのは Slurm で拒否リストに登録されていない設定パラメータ
CustomSlurmSettingsIncludeFile
。拒否リストに関する情報 Slurm 設定パラメータについては、「」を参照してくださいCustomSlurmSettings で拒否リストに記載されている Slurm 設定パラメータ。AWS ParallelCluster は、パラメータが拒否リストにあるかどうかのみをチェックします。 AWS ParallelCluster はカスタムを検証しません Slurm 設定パラメータの構文またはセマンティクス。カスタムを検証する責任はユーザーにあります。Slurm 設定パラメータ。無効なカスタム Slurm 設定パラメータは Slurm クラスターの作成と更新の失敗につながる可能性のあるデーモンの失敗。
カスタムを指定する方法の詳細については、Slurm の設定パラメータについては AWS ParallelCluster、「」を参照してくださいSlurm 設定のカスタマイズ。
の詳細については、「」を参照してください。Slurm 設定パラメータ。「」の「slurm.conf
」を参照してください。Slurm ドキュメント内) を参照してください。 注記
CustomSlurmSettings
は AWS ParallelCluster バージョン 3.6.0 からサポートされています。
Database
(オプション) 有効にする設定を定義します。Slurm クラスターの会計処理。詳細については、「Slurm による のアカウンティング AWS ParallelCluster」を参照してください。
Database: Uri:
string
UserName:string
PasswordSecretArn:string
更新ポリシー: この設定を更新で変更するためには、コンピューティングフリートを停止する必要があります。
Database
のプロパティ
Uri
(必須)、String
)-
のバックエンドとして使用されるデータベースサーバーへのアドレス Slurm アカウント。これは
host:port
としてフォーマットURIする必要があり、 などのスキームを含めることはできませんmysql://
。ホストは、IP アドレスまたはヘッドノードによって解決可能なDNS名前のいずれかです。ポートが指定されていない場合、 は AWS ParallelCluster を使用します。MySQL デフォルトポート 3306。AWS ParallelCluster ブートストラップは、Slurm データベースをクラスターにアカウンティングし、データベースにアクセスする必要があります。
データベースは、次が発生する前にアクセスできる必要があります。
-
クラスターが作成される。
-
Slurm アカウンティングは、クラスターの更新で有効になります。
-
UserName
(必須)、String
)-
次の ID Slurm は、データベースへの接続、アカウンティングログの書き込み、クエリの実行に使用します。ユーザーは、データベースに対する読み込みと書き込みの両方のアクセス許可を持っている必要があります。
PasswordSecretArn
(必須)、String
)-
プレーンテキストパスワードを含む AWS Secrets Manager シークレットの Amazon
UserName
リソースネーム (ARN)。このパスワードは、UserName
および とともに使用されます。Slurm データベースサーバーで認証するための アカウント。注記
AWS Secrets Manager コンソールを使用してシークレットを作成するときは、「その他のタイプのシークレット」を選択し、プレーンテキストを選択し、パスワードテキストのみをシークレットに含めます。
AWS Secrets Manager を使用してシークレットを作成する方法の詳細については、「シーAWS Secrets Manager クレットの作成」を参照してください。
ユーザーに に対するアクセス許可がある場合DescribeSecret、
PasswordSecretArn
は検証されます。PasswordSecretArn
は、指定されたシークレットが存在する場合に有効です。ユーザーIAMポリシーに が含まれていない場合DescribeSecret
、PasswordSecretArn
は検証されず、警告メッセージが表示されます。詳細については、「AWS ParallelCluster pcluster 基本ユーザーポリシー」を参照してください。PasswordSecretArn
を更新するとき、コンピューティングフリートを停止する必要があります。シークレット値が変更され、シークレットARNが変更されない場合、クラスターは新しいデータベースパスワードで自動的に更新されません。クラスターを新しいシークレット値に更新するには、コンピューティングフリートを停止した後、ヘッドノードから次のコマンドを実行します。$
sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh警告
アカウンティングデータの損失を回避するため、コンピューティングフリートが停止している場合にのみデータベースパスワードを変更することをお勧めします。
DatabaseName
(オプション、String
)-
使用するデータベースサーバー上のデータベースの名前 (Uri パラメータで定義) Slurm 会計。
データベースの名前には、小文字、数字、アンダースコアを含めることができます。名前は 64 文字以下にする必要があります。
このパラメータは、slurmdbd.conf
の StorageLoc
パラメータにマッピングされます。が指定され
DatabaseName
ていない場合、 ParallelCluster はクラスターの名前を使用して の値を定義しますStorageLoc
。の更新
DatabaseName
は許可されますが、以下の点を考慮してください。-
名前のデータベース DatabaseName がデータベースサーバーにまだ存在しない場合、slurmdbd によって作成されます。必要に応じて新しいデータベースを再設定するのはお客様の責任です (例: クラスター、アカウント、ユーザー、関連付けQOSsなどの会計エンティティの追加)。
-
名前 のデータベースがデータベースサーバーに DatabaseName 既に存在する場合、slurmdbd はそれを に使用します。Slurm 会計機能。
-
注記
リリース 3.3.0 以降、Database
が追加されます。
ExternalSlurmdbd
(オプション) 有効にする設定を定義します。Slurm 外部 slurmdbd サーバーを使用したアカウンティング。詳細については、「」を参照してくださいSlurm による のアカウンティング AWS ParallelCluster。
ExternalSlurmdbd: Host:
string
Port:integer
ExternalSlurmdbd
のプロパティ
-
Host
(必須 、String
) -
の外部 slurmdbd サーバーへのアドレス Slurm アカウント。ホストは、IP アドレスまたはヘッドノードによって解決可能なDNS名前のいずれかです。
-
Port
(オプション 、Integer
) -
slurmdbd サービスがリッスンするポート。デフォルト値は
6819
です。
Dns
(オプション) の設定を定義します。Slurm クラスター全体に適用されます。
Dns: DisableManagedDns:
boolean
HostedZoneId:string
UseEc2Hostnames:boolean
Dns
のプロパティ
DisableManagedDns
(オプション、Boolean
)-
の場合
true
、クラスターのDNSエントリは作成されず、Slurm ノード名は解決できません。デフォルトでは、 は、起動時にノードが登録される Route 53 ホストゾーン AWS ParallelCluster を作成します。デフォルト値は
false
です。DisableManagedDns
が に設定されている場合true
、ホストゾーンは によって作成されません AWS ParallelCluster。この設定を使用してインターネットにアクセスできないサブネットにクラスターをデプロイする方法については、「AWS ParallelCluster インターネットアクセスのない単一のサブネット内」を参照してください。
警告
クラスターが正常に動作するためには、名前解決システムが必要です。
DisableManagedDns
をtrue
に設定した場合、名前解決システムを指定する必要があります。Amazon のEC2デフォルト を使用するにはDNS、UseEc2Hostnames
を に設定しますtrue
。または、独自のDNSリゾルバーを設定し、インスタンスの起動時にノード名が登録されていることを確認します。例えば、CustomActions/OnNodeStart を設定することにより、これを行うことができます。 HostedZoneId
(オプション、String
)-
クラスターDNSの名前解決に使用するカスタム Route 53 ホストゾーン ID を定義します。指定した場合、 は指定されたホストゾーンにクラスターノード AWS ParallelCluster を登録し、マネージドホストゾーンは作成しません。
UseEc2Hostnames
(オプション、Boolean
)-
の場合
true
、クラスターコンピューティングノードはデフォルトのEC2ホスト名で設定されます。- SlurmNodeHostName
もこの情報で更新されます。デフォルト:false
。この設定を使用してインターネットにアクセスできないサブネットにクラスターをデプロイする方法については、「AWS ParallelCluster インターネットアクセスのない単一のサブネット内」を参照してください。
注記
この注記は、 AWS ParallelCluster バージョン 3.3.0 以降は関係ありません。
3.3.0 より前の AWS ParallelCluster サポートされているバージョンの場合:
UseEc2Hostnames
が に設定されている場合true
、Slurm 設定ファイルは AWS ParallelClusterprolog
およびepilog
スクリプトで設定されます。-
prolog
が実行されると、各ジョブが割り当てられるときにコンピューティングノードの/etc/hosts
にノード情報が追加されます。 -
epilog
が実行されると、prolog
によって書き込まれた内容がクリーンアップされます。
カスタム
prolog
またはepilog
スクリプトを追加するには、/opt/slurm/etc/pcluster/prolog.d/
または/opt/slurm/etc/pcluster/epilog.d/
フォルダにそれぞれ追加します。 -