

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

# `LoginNodes` 部分
<a name="LoginNodes-v3"></a>

**注意**  
3.7.0 AWS ParallelCluster 版本中增加了对 `LoginNodes` Support 的支持。

**（可选）**指定登录节点池的配置。

```
LoginNodes:
  Pools:
    - Name: string
      Count: integer
      InstanceType: string
      GracetimePeriod: integer
      Image:
        CustomAmi: string
      Ssh:
        KeyName: string
        AllowedIps: string
      Networking:
        SubnetIds:
          - string
        SecurityGroups:
          - string
        AdditionalSecurityGroups:
          - string
      Dcv:
        Enabled: boolean
        Port: integer
        AllowedIps: string
      CustomActions:
        OnNodeStart:
          Sequence:
            - Script: string
              Args:
                - string
          Script: string
          Args:
            - string
        OnNodeConfigured:
          Sequence:
            - Script: string
              Args:
                - string
          Script: string
          Args:
            - string
        OnNodeUpdated:
          Sequence:
            - Script: string
              Args:
                - string
          Script: string
          Args:
            - string
      Iam:
        InstanceRole: string
        InstanceProfile: string
        AdditionalIamPolicies:
          - Policy: string
```

[更新策略：必须停止集群中的登录节点，才能更改此设置进行更新。](using-pcluster-update-cluster-v3.md#update-policy-update-login-node-cluster)

## `LoginNodes` 属性
<a name="LoginNodes-v3.properties"></a>

### `Pools` 属性
<a name="LoginNodes-v3-Pools"></a>

定义具有相同资源配置的登录节点组。从 AWS ParallelCluster 3.11.0 开始，最多可以指定 10 个池。

```
Pools:
  - Name: string
    Count: integer
    InstanceType: string
    GracetimePeriod: integer
    Image:
      CustomAmi: string
    Ssh:
      KeyName: string
      AllowedIps: string
    Networking:
      SubnetIds:
        - string
      SecurityGroups:
        - string
      AdditionalSecurityGroups:
        - string
    Dcv:
      Enabled: boolean
      Port: integer
      AllowedIps: string
    CustomActions:
      OnNodeStart:
        Sequence:
          - Script: string
            Args:
              - string
        Script: string
        Args:
          - string
      OnNodeConfigured:
        Sequence:
          - Script: string
            Args:
              - string
        Script: string
        Args:
          - string
      OnNodeUpdated:
        Sequence:
          - Script: string
            Args:
              - string
        Script: string
        Args:
          - string
    Iam:
      InstanceRole: string
      InstanceProfile: string
      AdditionalIamPolicies:
        - Policy: string
```

[更新策略：可以添加登录节点池，但移除池需要停止集群中的所有登录节点。](using-pcluster-update-cluster-v3.md#update-policy-add-login-node-pools)

`Name`（**必需** `String`）  
指定 `LoginNodes` 池的名称。此参数用于标记 `LoginNodes` 资源。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)   
从 AWS ParallelCluster 版本 3.11.0 开始，更新策略是：必须停止池中的登录节点才能更改此设置以进行更新。

`Count`（**必需** `Integer`）  
指定要保持活动状态的登录节点的数量。  
[更新策略：可以在更新期间更改此设置。](using-pcluster-update-cluster-v3.md#update-policy-setting-supported-v3)

`InstanceType`（**必需** `String`）  
指定用于登录节点的 Amazon EC2 实例类型。该实例类型的架构必须与用于 Slurm `InstanceType` 设置的架构相同。  
[更新策略](using-pcluster-update-cluster-v3.md#update-policy-setting-supported-v3)：如果登录节点池已停止，则可以更改此设置。  
从 AWS ParallelCluster 版本 3.11.0 开始，更新策略是：必须停止池中的登录节点才能更改此设置以进行更新。

`GracetimePeriod`（**可选** `Integer`）  
指定从向已登录用户发出登录节点即将停用的通知到实际停止事件之间经过的最短时间（以分钟为单位）。`GracetimePeriod` 的有效值为 3 到 120 分钟。默认值为 10 分钟。  
触发事件涉及多个 AWS 服务之间的交互。有时，网络延迟和信息的传播可能需要一些时间，因此由于 AWS 服务内部延迟，宽限期可能需要比预期更长的时间。
[更新策略：可以在更新期间更改此设置。](using-pcluster-update-cluster-v3.md#update-policy-setting-supported-v3)

`Image`（**可选**）  
定义登录节点的映像配置。  

```
Image:
  CustomAmi: String
```  
`CustomAmi`（**可选** `String`）  
指定用于配置登录节点的自定义 AMI。如果未指定，则该值默认为 [`HeadNode` 部分](HeadNode-v3.md) 中指定的值。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)

`Ssh`（**可选**）  
定义登录节点的 `ssh` 配置。  

```
Ssh:
  KeyName: string
  AllowedIps: string
```
从 AWS ParallelCluster 版本 3.11.0 开始，更新策略是：必须停止池中的登录节点才能更改此设置以进行更新。  
`KeyName`（**可选** `String`）  
指定用于登录到登录节点的 `ssh` 密钥。如果未指定，则该值默认为 [`HeadNode` 部分](HeadNode-v3.md) 中指定的值。  
[更新策略：必须停止池中的登录节点，才能更改此设置进行更新。](using-pcluster-update-cluster-v3.md#update-policy-update-login-node-pools)  
已弃用-配置参数`LoginNodes/Pools/Ssh/KeyName`已被弃用，并将在未来的版本中将其删除。现在，在群集配置中使用 CLI 时，它会返回一条警告消息。有关详细信息，请参阅 [ https://github.com/aws/aws-parallel](https://github.com/aws/aws-parallelcluster/issues/6811) cluster/issues/6811。  
`AllowedIps`（**可选** `String`）  
指定池中登录节点 SSH 连接的 CIDR 格式 IP 范围或前缀列表 ID。默认值为头节点配置中[AllowedIps](HeadNode-v3.md#yaml-HeadNode-Ssh-AllowedIps)定义的，或者`0.0.0.0/0`如果未指定。 [`HeadNode` 部分](HeadNode-v3.md)。  
[更新策略：必须停止池中的登录节点，才能更改此设置进行更新。](using-pcluster-update-cluster-v3.md#update-policy-update-login-node-pools)  
3.11.0 AWS ParallelCluster 版本中增加了 AllowedIps 对登录节点的支持。

`Networking`**（必填）**  
  

```
Networking:
  SubnetIds:
    - string
  SecurityGroups:
    - string
  AdditionalSecurityGroups:
    - string
```
从 AWS ParallelCluster 版本 3.11.0 开始，更新策略是：必须停止池中的登录节点才能更改此设置以进行更新。  
`SubnetIds`（**必需** `[String]`）  
您在其中配置登录节点池的现有子网的 ID。您只能定义一个子网。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`SecurityGroups`（**可选** `[String]`）  
用于登录节点池的安全组的列表。如果未指定安全组，则会为您 AWS ParallelCluster 创建安全组。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`AdditionalSecurityGroups`（**可选** `[String]`）  
用于登录节点池的其他安全组的列表。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)

`Dcv`（**可选**）  
定义在[登录](#LoginNodes-v3)节点上运行的 NICE DCV 服务器的配置设置。有关更多信息，请参阅 [通过 Amazon DCV 连接到头节点和登录节点](dcv-v3.md)。  

```
Dcv:
  Enabled: boolean
  Port: integer
  AllowedIps: string
```
默认情况下，设置的 NICE DCV 端口对所有 IPv4 地址开放。 AWS ParallelCluster 只有当您拥有 NICE DCV 会话的 URL 并在 pcluster dcv-connect 返回 URL 后 30 秒内连接到 NICE DCV 会话，才能连接到 NICE DCV 端口。请使用 `AllowedIps` 设置进一步限制对具有 CIDR 格式 IP 范围的 NICE DCV 端口的访问，并使用 Port 设置来设置非标准端口。
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
3.11.0 AWS ParallelCluster 版本中增加了对登录节点上的 DCV 的支持。  
`Enabled`（**必需** `Boolean`）  
指定是否在池中的登录节点上启用 NICE DCV。默认值为 `false`。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
NICE DCV 会自动生成自签名证书，该证书用于保护 NICE DCV 客户端和登录节点上运行的 NICE DCV 服务器之间的流量。要配置您自己的证书，请参阅 [Amazon DCV HTTPS 证书](dcv-v3.md#dcv-v3-certificate)。  
`Port`（**可选** `Integer`）  
指定 NICE DCV 的端口。默认值为 `8443`。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`AllowedIps`（**可选** `String`）  
指定 NICE DCV 连接的 CIDR 格式的 IP 范围。此设置仅在 AWS ParallelCluster 创建安全组时使用。默认值是 `0.0.0.0/0`，允许从任何 Internet 地址访问。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)

`CustomActions`（**可选**）  
指定在登录节点上运行的自定义脚本。  

```
CustomActions:
  OnNodeStart:
    Sequence:
      - Script: string
        Args: 
          - string
    Script: string
    Args:
      - string
  OnNodeConfigured:
    Sequence:
      - Script: string
        Args:
          - string
    Script: string
    Args:
      - string
  OnNodeUpdated:
    Sequence:
      - Script: string
        Args:
          - string
    Script: string
    Args:
      - string
```
3.11.0 AWS ParallelCluster 版本中增加了对登录节点上的自定义操作的支持。  
`OnNodeStart`（**可选**）  
指定在启动任何节点部署引导操作前在[登录节点](#LoginNodes-v3)上运行的单个脚本或脚本序列。有关更多信息，请参阅[自定义引导操作](custom-bootstrap-actions-v3.md)。    
`Sequence`（**可选**）  
要运行的脚本列表。 AWS ParallelCluster 按配置文件中列出的顺序运行脚本，从第一个脚本开始。    
`Script`（**必需** `String`）  
指定要使用的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到脚本的参数的列表。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`Script`（**必需** `String`）  
指定用于单个脚本的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到单个脚本的参数的列表。  
`OnNodeConfigured`（**可选**）  
指定节点引导过程完成后，在[登录节点](#LoginNodes-v3)上运行的单个脚本或一系列脚本。有关更多信息，请参阅[自定义引导操作](custom-bootstrap-actions-v3.md)。    
`Sequence`（**可选**）  
要运行的脚本列表。 AWS ParallelCluster 按配置文件中列出的顺序运行脚本，从第一个脚本开始。    
`Script`（**必需** `String`）  
指定要使用的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到脚本的参数的列表。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`Script`（**必需** `String`）  
指定用于单个脚本的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到单个脚本的参数的列表。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`OnNodeUpdated`（**可选**）  
指定在头节点更新完成并且调度程序和共享存储与最新的群集配置更改保持一致后要运行的单个脚本或一系列脚本。有关更多信息，请参阅[自定义引导操作](custom-bootstrap-actions-v3.md)。    
`Sequence`（**可选**）  
要运行的脚本列表。 AWS ParallelCluster 按配置文件中列出的顺序运行脚本，从第一个脚本开始。    
`Script`（**必需** `String`）  
指定要使用的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到脚本的参数的列表。  
`Script`（**必需** `String`）  
指定用于单个脚本的文件。文件路径可以 `https://` 或 `s3://` 开头。  
`Args`（**可选** `[String]`）  
要传递到单个脚本的参数的列表。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
AWS ParallelCluster 不支持同时包含单个脚本和`Sequence`同一个自定义操作。

`Iam`（**可选**）  
指定要在登录节点上使用的实例角色或实例配置文件，用于覆盖集群的默认实例角色或实例配置文件。  

```
Iam:
  InstanceRole: string
  InstanceProfile: string
  AdditionalIamPolicies:
    - Policy: string
```
从 AWS ParallelCluster 版本 3.11.0 开始，更新策略是：必须停止池中的登录节点才能更改此设置以进行更新。  
`InstanceProfile`（**可选** `String`）  
指定用于覆盖默认登录节点实例配置文件的实例配置文件。您不能同时指定 `InstanceProfile` 和 `InstanceRole`。格式为 `arn:Partition:iam::Account:instance-profile/InstanceProfileName`。如果指定此设置，则不能指定 `InstanceRole` 和 `AdditionalIamPolicies` 设置。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`InstanceRole`（**可选** `String`）  
指定用于覆盖默认登录节点实例角色的实例角色。您不能同时指定 `InstanceProfile` 和 `InstanceRole`。格式为 `arn:Partition:iam::Account:role/RoleName`。如果指定此设置，则不能指定 `InstanceProfile` 和 `AdditionalIamPolicies` 设置。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)  
`AdditionalIamPolicies`（**可选**）  

```
AdditionalIamPolicies:
  - Policy: string
```
IAM 策略的 Amazon 资源名称 (ARN)。  
指定 Amazon EC2 的 IAM 策略的 Amazon 资源名称 (ARN) 列表。除了所需的权限外，此列表还附在用于登录节点的根角色上 AWS ParallelCluster。  
IAM 策略名称及其 ARN 不相同。不能使用名称。  
如果指定此设置，则不能指定 `InstanceProfile` 和 `InstanceRole` 设置。我们建议您使用，`AdditionalIamPolicies``AdditionalIamPolicies`因为已添加到所需的权限中，并且`InstanceRole`必须包含所有必需的权限。 AWS ParallelCluster 随着功能的不断添加，所需权限通常会随版本发生变化。  
没有默认值。  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)    
`Policy`（**必需** `[String]`）  
[更新策略：如果更改此设置，则不允许更新。](using-pcluster-update-cluster-v3.md#update-policy-fail-v3)