HeadNode 部分 - Amazon ParallelCluster
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

HeadNode 部分

必需需指定头节点的配置。

HeadNode: InstanceType: string Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string - string AdditionalSecurityGroups: - string - string Proxy: HttpProxyAddress: string DisableSimultaneousMultithreading: boolean Ssh: KeyName: string AllowedIps: string LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean EphemeralVolume: MountDir: string Dcv: Enabled: boolean Port: integer AllowedIps: string CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Imds: Secured: boolean

HeadNode 属性

InstanceType(必需,String)

指定头节点的实例类型。

指定用于头节点的 Amazon EC2 实例类型。实例类型的架构必须与用于实例类型的架构相同Amazon Batch InstanceType要么Slurm InstanceType设置。

如果您定义了 p4d 实例类型或其他具有多个网络接口或网络接口卡的实例类型,则必须设置ElasticIptrue提供公有访问。Amazon公共 IP 只能分配给使用单个网络接口启动的实例。在这种情况下,我们建议您使用NAT 网关提供对集群计算节点的公共访问权限。有关更多信息,请参阅在实例启动期间分配公有 IPv4 地址在里面适用于 Linux 实例的 Amazon EC2 用户.

更新策略:如果更改此设置,则不允许更新。

DisableSimultaneousMultithreading(可选,Boolean)

如果true,禁用头节点上的超线程。默认值为 false

并非所有实例类型都可以禁用超线程。有关支持禁用超线程的实例类型的列表,请参阅每种实例类型的 CPU 核心数和每 CPU 核心的线程数在里面适用于 Linux 实例的 Amazon EC2 用户.

更新策略:如果更改此设置,则不允许更新。

Networking

必需需定义头节点的网络配置。

Networking: SubnetId: string ElasticIp: string/boolean SecurityGroups: - string - string AdditionalSecurityGroups: - string - string Proxy: HttpProxyAddress: string

更新策略:如果更改此设置,则不允许更新。

Networking 属性

SubnetId(必需,String)

指定要在其中配置头节点的现有子网的 ID。

更新策略:如果更改此设置,则不允许更新。

ElasticIp(可选,String)

为头节点创建或分配弹性 IP 地址。支持的值为true,false,或现有弹性 IP 地址的 ID。默认为 false

更新策略:如果更改此设置,则不允许更新。

SecurityGroups(可选,[String])

用于头节点的 Amazon VPC 安全组 ID 列表。它们取代了以下安全组Amazon ParallelCluster如果不包含此属性,则创建。

验证您的安全组配置是否正确SharedStorage系统。

更新策略:此设置可以在更新期间更改。

AdditionalSecurityGroups(可选,[String])

用于头节点的其他 Amazon VPC 安全组 ID 列表。

更新策略:此设置可以在更新期间更改。

Proxy(可选)

指定头节点的代理设置。

Proxy: HttpProxyAddress: string
HttpProxyAddress(可选,String)

定义 HTTP 或 HTTPS 代理服务器,通常为 https://x.x.x.x:8080

没有默认值。

更新策略:如果更改此设置,则不允许更新。

Ssh

(可选)定义 SSH 访问头节点的配置。

Ssh: KeyName: string AllowedIps: string

更新策略:此设置可以在更新期间更改。

Ssh属性

KeyName(可选,String)

命名一个现有 Amazon EC2 key pair,以允许对头节点进行 SSH 访问。

更新策略:如果更改此设置,则不允许更新。

AllowedIps(可选,String)

为与头节点的 SSH 连接指定 CIDR 格式的 IP 范围。默认为 0.0.0.0/0

更新策略:此设置可以在更新期间更改。

LocalStorage

(可选)定义头节点的本地存储配置。

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean EphemeralVolume: MountDir: string

更新策略:此设置可以在更新期间更改。

LocalStorage属性

RootVolume(必需)

为头节点指定根卷存储空间。

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer DeleteOnTermination: boolean

更新策略:此设置可以在更新期间更改。

Size(可选,Integer)

指定头节点根卷大小(以吉字节(GiB)为单位)。默认大小来自 AMI。使用不同的大小要求 AMI 支持growroot.

更新策略:如果更改此设置,则不允许更新。

Encrypted(可选,Boolean)

指定是否加密根卷是否加密。默认值为 true

更新策略:如果更改此设置,则不允许更新。

VolumeType(可选,String)

指定Amazon EBS 卷类型. 支持的值为gp2,gp3,io1,io2,sc1,st1,以及standard. 默认值为 gp3

有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的 Amazon EBS 卷类型

更新策略:如果更改此设置,则不允许更新。

Iops(可选,Integer)

定义 IOPS 的数量io1,io2,以及gp3键入卷数。

默认值、支持的值和volume_iopsvolume_size比例因而异VolumeTypeSize.

更新策略:如果更改此设置,则不允许更新。

VolumeType = io1

默认值Iops1000

支持的值Iops= 100—64000 †

最高IopsSize比率 = 每 GiB 50 IOPS。5000 IOPS 需要Size至少 100 GiB。

VolumeType = io2

默认值Iops1000

支持的值Iops= 100—64000 (256000 用于io2Block Express 卷)

最高IopsSize比率 = 每 GiB 500 IOPS。5000 IOPS 需要Size至少 10 GiB。

VolumeType = gp3

默认值Iops延迟队列

支持的值Iops= 3000—16000

最高IopsSize比率 = 每 GiB 500 IOPS。5000 IOPS 需要Size至少 10 GiB。

† 只有在以下情况下才能保证最大 IOPS基于 Nitro 系统构建的实例配置了超过 32,000 个 IOPS。其他实例保证最高为 32,000 IOPS。较旧io1除非您,否则卷可能无法实现完全性能修改卷组.io2 Block ExpressIops值最高为 256000R5b实例类型。有关更多信息,请参阅io2Block Express 卷在里面适用于 Linux 实例的 Amazon EC2 用户.

更新策略:此设置可以在更新期间更改。

Throughput(可选,Integer)

定义吞吐量gp3卷类型,以 MiB/s 为单位。此设置仅在以下情况下有效VolumeTypegp3. 默认值为 125。支持的值:125—1000 MiB/s

的比率ThroughputIops不能超过 0.25。1000 MiB/s 的最大吞吐量要求Iops设置至少为 4000。

更新策略:如果更改此设置,则不允许更新。

DeleteOnTermination(可选,Boolean)

指定在头节点终止时是否应删除根卷。默认值为 true

更新策略:如果更改此设置,则不允许更新。

EphemeralVolume(可选)

指定任何实例存储卷的详细信息。有关更多信息,请参阅实例存储卷在里面适用于 Linux 实例的 Amazon EC2 用户.

EphemeralVolume: MountDir: string

更新策略:如果更改此设置,则不允许更新。

MountDir(可选,String)

指定实例存储卷的装入目录。默认为 /scratch

更新策略:如果更改此设置,则不允许更新。

Dcv

(可选)定义在头节点上运行的 NICE DCV 服务器的配置设置。

有关更多信息,请参阅 通过 NICE DCV Connect 头节点

Dcv: Enabled: boolean Port: integer AllowedIps: string
重要

默认情况下,NICE DCV 端口设置为Amazon ParallelCluster对所有 IPv4 地址开放。但是,只有在拥有 NICE DCV 会话的 URL 并在 URL 返回后 30 秒内连接到 NICE DCV 会话时,才能连接到 NICE DCV 端口pcluster dcv-connect. 使用AllowedIps设置为进一步限制对 CIDR 格式 IP 范围的 NICE DCV 端口的访问,并使用Port设置为设置非标准端口。

更新策略:如果更改此设置,则不允许更新。

Dcv 属性

Enabled(必需,Boolean)

指定是否在头节点上启用 NICE DCV。默认值为 false

更新策略:如果更改此设置,则不允许更新。

注意

NICE DCV 自动生成自签名证书,用于保护 NICE DCV 客户端和在头节点上运行的 NICE DCV 服务器之间的流量。要配置您自己的证书,请参阅 NICE DCV HTTPS证书

Port(可选,Integer)

指定 NICE DCV 的端口。默认值为 8443

更新策略:如果更改此设置,则不允许更新。

AllowedIps(可选,推荐,String)

为 NICE DCV 的连接指定 CIDR 格式的 IP 范围。此设置仅在 Amazon ParallelCluster 创建安全组时使用。默认值是 0.0.0.0/0,允许从任何 Internet 地址访问。

更新策略:此设置可以在更新期间更改。

CustomActions

(可选)指定要在头节点上运行的自定义脚本。

CustomActions: OnNodeStart: Script: string Args: - string - string OnNodeConfigured: Script: string Args: - string - string

更新策略:如果更改此设置,则不允许更新。

CustomActions 属性

OnNodeStart(可选,String)

在启动任何节点部署引导操作之前,指定要在头节点上运行的脚本。有关更多信息,请参阅 自定义引导操作

Script(必需,String)

指定要使用的文件。文件路径可以以开头https://要么s3://.

Args(可选,[String])

要传递给脚本的参数列表。

OnNodeConfigured(可选,String)

指定节点引导操作完成后在头节点上运行的脚本。有关更多信息,请参阅 自定义引导操作

Script(必需,String)

指定要使用的文件。文件路径可以以开头https://要么s3://.

Args(可选,[String])

要传递给脚本的参数列表。

更新策略:如果更改此设置,则不允许更新。

Iam

(可选)指定在头节点上使用的实例角色或实例配置文件,以覆盖集群的默认实例角色或实例配置文件。

Iam: InstanceRole: string InstanceProfile: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string

更新策略:此设置可以在更新期间更改。

Iam 属性

InstanceProfile(可选,String)

指定一个实例配置文件以覆盖默认的头节点实例配置文件。您不能同时指定 InstanceProfileInstanceRole。格式为 arn:Partition:iam::Account:instance-profile/InstanceProfileName

如果指定了此选项,S3AccessAdditionalIamPolicies设置将被忽略。建议使用AdditionalIamPolicies因为添加了功能Amazon ParallelCluster通常需要新的权限。

更新策略:如果更改此设置,则不允许更新。

InstanceRole(可选,String)

指定一个实例角色以覆盖默认的头节点实例角色。您不能同时指定 InstanceProfileInstanceRole。格式为 arn:Partition:iam::Account:role/RoleName

如果指定了此选项,S3AccessAdditionalIamPolicies设置将被忽略。建议使用AdditionalIamPolicies因为添加了功能Amazon ParallelCluster通常需要新的权限。

更新策略:此设置可以在更新期间更改。

S3Access

S3Access(可选)

指定存储桶。这用于生成策略以授予对存储桶的指定访问权限。如果InstanceProfile要么InstanceRole已指定设置,则忽略此设置。建议使用AdditionalIamPolicies因为添加了功能Amazon ParallelCluster通常需要新的权限。

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

更新策略:此设置可以在更新期间更改。

BucketName(必需,String)

存储桶的名称。

更新策略:此设置可以在更新期间更改。

KeyName(可选,String)

存储桶的密钥。默认值为“*”。

更新策略:此设置可以在更新期间更改。

EnableWriteAccess(可选,Boolean)

指示是否为桶启用写入权限。默认值为 false

更新策略:此设置可以在更新期间更改。

AdditionalIamPolicies

AdditionalIamPolicies(可选)

指定适用于 Amazon EC2 的 IAM 策略的 Amazon 资源名称(ARN)的列表。除了所需的权限外,此列表还附加到用于头节点的根角色上Amazon ParallelCluster.

IAM 策略名称和其 ARN 不同。不能使用名称。如果InstanceProfile要么InstanceRole已指定设置,则忽略此设置。建议使用AdditionalIamPolicies因为AdditionalIamPolicies被添加到以下权限中Amazon ParallelCluster要求,还有InstanceRole必须包含所需的所有权限。随着功能的不断添加,所需权限通常会随版本发生变化。

没有默认值。

AdditionalIamPolicies: - Policy: string

更新策略:此设置可以在更新期间更改。

Policy(可选,[String])

IAM 策略列表。

更新策略:此设置可以在更新期间更改。

Imds

(可选)指定实例元数据服务 (IMDS) 的属性。有关更多信息,请参阅实例元数据服务版本 2 的工作原理在里面适用于 Linux 实例的 Amazon EC2 用户.

Imds: Secured: boolean

更新策略:如果更改此设置,则不允许更新。

Imds属性

Secured(可选,Boolean)

如果true,将对头节点的 IMDS(和实例配置文件证书)的访问权限限制为一部分超级用户。

如果false,头节点中的每个用户都有权访问头节点的 IMDS。

允许以下用户访问头节点的 IMDS:

  • 根用户

  • 群集管理用户 (pc-cluster-admin必需设置

  • 操作系统特定的默认用户 (ec2-userAmazon Linux 2ubuntu在 Ubuntu 18.04centos在 CentOS 7

默认为 true

这些区域有:default用户有责任确保集群拥有与之交互所需的权限Amazon资源。如果你禁用default用户 IMDS 访问权限,Amazon ParallelCluster无法管理计算节点并停止工作。请勿禁用default用户 IMDS 访问权限。

当用户被授予访问头节点的 IMDS 的权限时,他们可以使用头节点 IMDS 中包含的权限头节点的实例配置文件. 例如,他们可以使用这些权限启动 EC2 实例或读取集群配置用于身份验证的 AD 域的密码。

要限制 IMDS 的访问权限,Amazon ParallelCluster管理一连串元素iptables.

集群用户与与一起使用sudoaccess 可以选择性地启用或禁用其他个人用户对头节点的 IMDS 的访问权限,包括default用户,通过运行以下命令:

$ sudo /opt/parallelcluster/scripts/imds/imds-access.sh --allow <USERNAME>

您可以使用以下命令禁用用户 IMDS 访问权限--deny此命令的选项。

如果你在不知不觉中禁用default用户 IMDS 访问权限,你可以使用--allow选项。

注意

任何自定义iptables要么ip6tables规则可能会干扰用于限制头节点上 IMDS 访问的机制。

更新策略:如果更改此设置,则不允许更新。