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 网关提供对集群计算节点的公有访问。有关 IP 地址的更多信息,请参阅分配辅助私有 IPv4 地址.

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

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 地址。支持的值为truefalse或现有弹性 IP 地址的 ID。默认为 false

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

SecurityGroups(可选[String]

用于头节点的 Amazon VPC 安全组 ID 列表。这些代替了那些安全组Amazon ParallelCluster如果不包括此属性,则创建。

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

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

指定用于与 Head 节点的 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

指定是否加密根卷。原定设置值为 false

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

VolumeType(可选String

指定Amazon EBS 卷类型. 支持的值为gp2gp3io1io2sc1st1, 和standard. 原定设置值为 gp2

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

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

Iops(可选Integer

定义 IOPS 数io1io2, 和gp3键入卷。

默认值、支持的值和volume_iopsvolume_size根据不同的比率VolumeTypeSize.

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

VolumeType = io1

默认值Iops= 100

支持的值Iops= 100—64000 †

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

VolumeType = io2

默认值Iops= 100

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

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

VolumeType = gp3

默认值Iops= 3000

支持的值Iops= 3000—16000

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

† 最大 IOPS 仅在基于 Nitro 系统构建的实例配置超过 32,000 的 IOPS。其他实例保证最高为 32000 个 IOPS。较早io1除非您的卷可能无法实现完全性能修改卷.io2 支持阻止 Express 卷Iops价值高达 256000R5b实例类型。有关更多信息,请参阅 。io2Block Express 卷中的适用于 Linux 实例的 Amazon EC2 用户指南.

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

Throughput(可选Integer

定义的吞吐量gp3卷类型,以 MiB/s 为单位。此设置仅在VolumeTypegp3. 原定设置值为 125。支持的值:125—1000 Mi/ 秒

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

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

DeleteOnTermination(可选Boolean

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

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

EphemeralVolume(可选

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

EphemeralVolume: MountDir: string
MountDir(可选String

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

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

Dcv

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

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 证书

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://,或者file://.

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) 的列表。除了所需的权限之外,此列表还附加到用于头节点的 root 角色。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(和实例配置文件凭证)的访问限制为超级用户的子集。

注意

这仅限制通过 IPv4 IMDS 终端节点访问群集头节点 IMDS。

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

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

  • 根用户

  • 集群管理用户 (pc-cluster-admin默认情况下)

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

默认为 true

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

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

要限制 IMDS 访问权限,Amazon ParallelCluster管理一系列iptables.

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

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

您可以使用--deny此命令的选项。

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

注意

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

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