本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Scheduling
部分
(必需)定义要在集群中使用的作业调度程序以及作业调度程序管理的计算实例的特征。可以使用的两个作业调度程序是Slurm和Amazon Batch,每个都支持不同的设置和属性。
Scheduling: Scheduler: slurm SlurmSettings: ScaledownIdletime:
integer
Dns: DisableManagedDns:boolean
HostedZoneId:string
UseEc2Hostnames:string
SlurmQueues: - Name:string
ComputeSettings: LocalStorage: RootVolume: Size:integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:string
EphemeralVolume: MountDir:string
CapacityType:string
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Proxy: HttpProxyAddress:string
ComputeResources: - Name:string
InstanceType:string
MinCount:integer
MaxCount:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
Efa: Enabled:boolean
GdrSupport:boolean
CustomActions: OnNodeStart: Script:string
Args: -string
OnNodeConfigured: Script:string
Args: -string
Iam: InstanceProfile:string
InstanceRole:string
S3Access: - BucketName:string
EnableWriteAccess:boolean
KeyName:boolean
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
属性
AwsBatchQueues
(可选)的设置Amazon Batchqueue. 只支持一个队列。此部分是必需的: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
AwsBatchQueues
属性
Name
(必需、String
)-
的名称Amazon Batchqueue.
CapacityType
(可选、String
)-
在中使用的计算资源的类型。Amazon Batchqueue. 支持的值为
ONDEMAND
或SPOT
。原定设置值为ONDEMAND
。注意 何时
CapacityType
设置为SPOT
,一定有AWSServiceRoleForEC2Spot
账户中的服务相关角色。您可以使用以下内容创建此角色:Amazon CLI命令:$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com有关更多信息,请参阅 。竞价型实例请求的服务相关角色中的适用于 Linux 实例的 Amazon EC2 用户指南.
Networking
(必需)定义网络配置Amazon Batchqueue.
Networking: SubnetIds: -
string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
Networking
属性
SubnetIds
(必需、[String]
)-
指定要在其中预置的现有子网的 ID。Amazon Batchqueue. 目前仅支持一个子网。
AssignPublicIp
(可选、String
)-
为中的节点创建或分配公有 IP 地址。Amazon Batchqueue. 支持的值为
true
和false
。默认值取决于指定的子网。 SecurityGroups
(可选、[String]
)-
用于Amazon Batchqueue. 如果没有指定安全组,Amazon ParallelCluster将创建新的。
AdditionalSecurityGroups
(可选、[String]
)-
用于Amazon Batchqueue.
ComputeResources
(必需)定义ComputeResources的配置Amazon Batchqueue.
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
)-
的计算环境的名称Amazon Batchqueue.
InstanceTypes
(必需、[String]
)-
要包括在此中的实例类型数组Amazon Batch计算环境。所有实例类型都必须使用
x86_64
架构。 MinvCpus
(可选、Integer
)-
The minimum number of VCPUs for the Amazon Batch计算环境。
DesiredVcpus
(可选、Integer
)-
中所需的 vCPU 数量Amazon Batch计算环境。Amazon Batch将在之间调整此值
MinvCpus
和MaxvCpus
,根据作业队列中的需求。 MaxvCpus
(可选、Integer
)-
的最大 vCPU 数。Amazon Batch计算环境。这不能设置为低于
DesiredVcpus
. SpotBidPercentage
(可选、Float
)-
在启动实例之前,与该实例类型的按需价格进行比较时 EC2 Spot 实例价格可以达到的最大百分比。默认值是 。
100
(100%)。支持的范围是1
-100
.
SlurmQueues
(可选)的设置Slurmqueue. 此部分是必需的:Scheduler
是slurm
.
SlurmQueues: - Name:
string
ComputeSettings: LocalStorage: RootVolume: Size:integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:string
EphemeralVolume: MountDir:string
CapacityType:string
Networking: SubnetIds: -string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Proxy: HttpProxyAddress:string
ComputeResources: - Name:string
InstanceType:string
MinCount:integer
MaxCount:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
Efa: Enabled:boolean
GdrSupport:boolean
CustomActions: OnNodeStart: Script:string
Args: -string
OnNodeConfigured: Script:string
Args: -string
Iam: InstanceProfile:string
InstanceRole:string
S3Access: - BucketName:string
EnableWriteAccess:boolean
KeyName:boolean
AdditionalIamPolicies: - Policy:string
Image: CustomAmi:string
SlurmQueues
属性
Name
(必需、String
)-
的名称Slurmqueue.
CapacityType
(可选、String
)-
在中使用的计算资源的类型。Slurmqueue. 支持的值为
ONDEMAND
或SPOT
。原定设置值为ONDEMAND
。注意 何时
CapacityType
设置为SPOT
,一定有AWSServiceRoleForEC2Spot
账户中的服务相关角色。您可以使用以下内容创建此角色:Amazon CLI命令:$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com有关更多信息,请参阅 。竞价型实例请求的服务相关角色中的适用于 Linux 实例的 Amazon EC2 用户指南.
Networking
(必需)定义网络配置Slurmqueue.
Networking: SubnetIds: -
string
AssignPublicIp:boolean
SecurityGroups: -string
AdditionalSecurityGroups: -string
PlacementGroup: Enabled:boolean
Id:string
Proxy: HttpProxyAddress:string
Networking
属性
SubnetIds
(必需、[String]
)-
指定要在其中预置Slurmqueue. 目前仅支持一个子网。
AssignPublicIp
(可选、String
)-
为中的节点创建或分配公有 IP 地址。Slurmqueue. 支持的值为
true
和false
。默认值取决于指定的子网;具有公有 IP 的子网将默认分配公有 IP 地址。如果您定义了 p4d 实例类型或其他具有多个网络接口或网络接口卡的实例类型,则必须设置
HeadNode
/Networking
/ElasticIp
到true
为公有提供访问。Amazon只能将公有 IP 分配给使用单个网络接口启动的实例。对于这种情况,建议您使用NAT 网关提供对集群计算节点的公有访问。在这种情况下,请设置AssignPublicIp
到false
. 有关 IP 地址的更多信息,请参阅分配辅助私有 IPv4 地址. SecurityGroups
(可选、[String]
)-
用于Slurmqueue. 如果没有指定安全组,Amazon ParallelCluster将创建新的。
AdditionalSecurityGroups
(可选、[String]
)-
用于Slurmqueue.
PlacementGroup
(可选)-
指定置放群组设置Slurmqueue.
PlacementGroup: Enabled:
boolean
Id:string
Proxy
(可选)-
指定代理设置Slurmqueue.
Proxy: HttpProxyAddress:
string
Image
(可选)指定要用于Slurmqueue. 要对所有节点使用相同的 AMI,请使用CustomAmi在中设置Image部分.
Image: CustomAmi:
string
Image
属性
CustomAmi
(可选、String
)-
要用于Slurm队列而不是默认 AMI。您可以使用 pcluster CLI 命令查看默认 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>
" ] } ] }
ComputeResources
(必需)定义ComputeResources
的配置Slurmqueue.
ComputeResources: - Name:
string
InstanceType:string
MinCount:integer
MaxCount:integer
SpotPrice:float
DisableSimultaneousMultithreading:boolean
Efa: Enabled:boolean
GdrSupport:boolean
ComputeResources
属性
Name
(必需、String
)-
的计算环境的名称Slurmqueue.
DisableSimultaneousMultithreading
(可选、Boolean
)-
如果
true
,禁用中的节点上的超线程Slurmqueue. 原定设置值为false
。并非所有实例类型都可以禁用超线程。有关支持禁用超线程的实例类型的列表,请参阅每种实例类型的 CPU 核心数和每种 CPU 核心的线程中的适用于 Linux 实例的 Amazon EC2 用户指南.
InstanceType
(必需、String
)-
在此中使用的实例类型Slurm计算资源。群集中的所有实例类型必须使用相同的处理器架构,
x86_64
要么arm64
.如果您定义了 p4d 实例类型或其他具有多个网络接口或网络接口卡的实例类型,则必须设置
HeadNode
/Networking
/ElasticIp
到true
为公有提供访问。Amazon只能将公有 IP 分配给使用单个网络接口启动的实例。对于这种情况,建议您使用NAT 网关提供对集群计算节点的公有访问。有关 IP 地址的更多信息,请参阅分配辅助私有 IPv4 地址. MinCount
(可选、Integer
)-
的最小实例数。Slurm计算资源。默认值为 0。
MaxCount
(可选、Integer
)-
的最大实例数。Slurm计算资源。默认值为 10。
SpotPrice
(可选、Float
)-
在启动实例之前,将为 EC2 竞价型实例支付的最高价格。默认值为按需价格。
Efa
(可选)-
Elastic Fabric Adapter (EFA) 在Slurmqueue.
Efa: Enabled:
boolean
GdrSupport:boolean
Enabled
(可选、Boolean
)-
指定启用 Elastic Fabric Adapter (EFA)。EFA 受特定实例类型的支持(
c5n.18xlarge
、c5n.metal
、g4dn.metal
、i3en.24xlarge
、i3en.metal
、m5dn.24xlarge
、m5n.24xlarge
、m5zn.12xlarge
、m5zn.metal
、r5dn.24xlarge
、r5n.24xlarge
、p3dn.24xlarge
, 和p4d.24xlarge
对于 x86-64 实例和c6gn.16xlarge
对于特定操作系统上基于 ARM 的 Graviton2 实例)alinux2
、centos7
、ubuntu1804
,或者ubuntu2004
对于 x86-64 实例和alinux2
、ubuntu1804
,或者ubuntu2004
对于基于 ARM 的 Graviton2 实例)。有关更多信息,请参阅 Elastic Fabric Adapter。使用集群置放群组来最大限度地减少实例之间的延迟。原定设置值为false
。 GdrSupport
(可选、Boolean
)-
(可选)从启动Amazon ParallelCluster版本 3.0.2,此设置无效。如果 Elastic Fabric Adapter (EFA) 支持 gpudDirect RDMA(远程直接内存访问)的实例类型支持Slurm计算资源和操作系统。
注意 Amazon ParallelCluster版本 3.0.0 至 3.0.1:指定启用了对 gpeDirect RDMA 的支持Slurm计算资源。特定实例类型 Support 对 GpuDirect RDMA 的支持(
p4d.24xlarge
) 在特定操作系统上 (Os是alinux2
、centos7
、ubuntu1804
,或者ubuntu2004
)。默认值为 False。
ComputeSettings
(必需)定义ComputeSettings
的配置Slurmqueue.
ComputeSettings
属性
指定的属性ComputeSettings
中的节点Slurmqueue.
ComputeSettings: LocalStorage: RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:string
EphemeralVolume: MountDir:string
LocalStorage
(可选)-
指定的属性
LocalStorage
中的节点Slurmqueue.LocalStorage: RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:string
EphemeralVolume: MountDir:string
RootVolume
(可选)-
指定节点的根卷的详细信息Slurmqueue.
RootVolume: Size:
integer
Encrypted:boolean
VolumeType:string
Iops:integer
Throughput:string
Size
(可选、Integer
)-
指定中的注释的根卷大小(以 GiB 为单位)。Slurmqueue. 默认大小来自 AMI。使用不同的大小需要 AMI 支持
growroot
. Encrypted
(可选、Boolean
)-
如果
true
,中节点的根卷Slurm队列已加密。原定设置值为false
。 VolumeType
(可选、String
)-
指定Amazon EBS 卷类型中的节点Slurmqueue. 支持的值为
gp2
、gp3
、io1
、io2
、sc1
、st1
, 和standard
. 原定设置值为gp2
。有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的 Amazon EBS 卷类型。
Iops
(可选、Boolean
)-
定义 IOPS 数
io1
和io2
键入卷。默认值、支持的值和
volume_iops
到volume_size
根据不同的比率VolumeType
和Size
.VolumeType
=io1
-
默认值
Iops
= 100支持的值
Iops
= 100—64000 †最高
volume_iops
到volume_size
比率 = 每 GiB 50 IOPS。5000 IOPS 需要volume_size
至少 100 GiB。 VolumeType
=io2
-
默认值
Iops
= 100支持的值
Iops
= 100—64000 (256000)io2
Block Express 卷)†最高
Iops
到Size
比率 = 每 GiB 500 IOPS。5000 IOPS 需要Size
至少 10 GiB。
† 最大 IOPS 仅在基于 Nitro 系统构建的实例配置超过 32,000 的 IOPS。其他实例保证最高为 32000 个 IOPS。较早
io1
除非您的卷可能无法实现完全性能修改卷.io2
Block Express 卷支持volume_iops
价值高达 256000R5b
实例类型。有关更多信息,请参阅 。io2
Block Express 卷中的适用于 Linux 实例的 Amazon EC2 用户指南. Throughput
(可选、Integer
)-
定义的吞吐量
gp3
卷类型,以 Miib/s 为单位。此设置仅在VolumeType
是gp3
. 原定设置值为125
。支持的值:125—1000 Mi/ 秒的比例
Throughput
到Iops
不得超过 0.25。最大吞吐量为 1000 MiB/s 要求Iops
设置至少为 4000。
EphemeralVolume
(可选、Boolean
)-
指定临时卷的设置。临时卷是通过将所有实例存储卷合并成一个格式化为格式化的单个逻辑卷来创建的
ext4
文件系统。默认为/scratch
。如果实例类型没有任何实例存储卷,则不会创建临时卷。有关更多信息,请参阅 。实例存储卷中的适用于 Linux 实例的 Amazon EC2 用户指南.EphemeralVolume: MountDir:
string
CustomActions
(可选)指定要在中的节点上运行的自定义脚本Slurmqueue.
CustomActions: OnNodeStart: Script:
string
Args: -string
OnNodeConfigured: Script:string
Args: -string
CustomActions
属性
Iam
(可选)定义可选的 IAM 设置Slurmqueue.
Iam: S3Access: - BucketName:
string
EnableWriteAccess:boolean
KeyName:boolean
AdditionalIamPolicies: - Policy:string
InstanceProfile:string
InstanceRole:string
Iam
属性
InstanceProfile
(可选、String
)-
指定实例配置文件以覆盖默认的实例角色或实例配置文件Slurmqueue. 不能同时指定两者。
InstanceProfile
和InstanceRole
. 格式为arn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}
。如果指定了此选项,则
S3Access
和AdditionalIamPolicies
设置将被忽略。建议使用AdditionalIamPolicies
因为功能已添加到Amazon ParallelCluster通常需要新的权限。 InstanceRole
(可选、String
)-
指定实例角色以覆盖默认的实例角色或实例配置文件Slurmqueue. 不能同时指定两者。
InstanceProfile
和InstanceRole
. 格式为arn:${Partition}:iam::${Account}:role/${RoleName}
。如果指定了此选项,则
S3Access
和AdditionalIamPolicies
将忽略设置。建议使用AdditionalIamPolicies
因为功能已添加到Amazon ParallelCluster通常需要新的权限。 S3Access
(可选)-
指定存储桶Slurmqueue. 这用于生成策略以授予对存储桶的指定访问权限的策略Slurmqueue.
S3Access: - BucketName:
string
EnableWriteAccess:boolean
KeyName:boolean
AdditionalIamPolicies
(可选)-
指定适用于 Amazon EC2 的 IAM 策略的 Amazon 资源名称 (ARN) 的列表。此列表附加到用于Slurm除了需要的权限外,还需要队列Amazon ParallelCluster.
IAM 策略名称及其 ARN 不相同。如果名称无法使用。
InstanceProfile
要么InstanceRole
指定设置,则忽略此设置。建议使用AdditionalIamPolicies
因为AdditionalIamPolicies
被添加到权限Amazon ParallelCluster需要,而且InstanceRole
必须包括所需的所有权限。随着功能的不断添加,所需权限通常会随版本发生变化。没有默认值。
AdditionalIamPolicies: - Policy:
string
SlurmSettings
(可选)定义的设置Slurm这适用于整个集群。
SlurmSettings: ScaledownIdletime:
integer
Dns: DisableManagedDns:boolean
HostedZoneId:string
UseEc2Hostnames:string
SlurmSettings
属性
Dns
(可选)定义的设置Slurm这适用于整个集群。
Dns: DisableManagedDns:
boolean
HostedZoneId:string
UseEc2Hostnames:string
Dns
属性
DisableManagedDns
(可选、Boolean
)-
如果
true
,则不应创建集群的 DNS 条目。默认情况下,Amazon ParallelCluster创建 Route 53 托管区域。原定设置值为false
。如果DisableManagedDns
设置为true
,托管区域不是由Amazon ParallelCluster.警告 集群需要名称解析系统才能正常运行。如果
DisableManagedDns
设置为true
,则还必须提供额外的姓名解析系统。 HostedZoneId
(可选、String
)-
定义用于集群的 DNS 名称解析的自定义 Route 53 托管区域 ID。
UseEc2Hostnames
(可选、String
)-
指定使用默认 EC2 主机名。