

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

# 尝试创建集群
<a name="troubleshooting-fc-v3-create-cluster"></a>

使用 Amazon ParallelCluster 版本 3.5.0 及更高版本创建集群，且集群创建失败且`--rollback-on-failure`设置为时`false`，请使用 [`pcluster describe-cluster`](pcluster.describe-cluster-v3.md) CLI 命令获取状态和失败信息。在这种情况下，`pcluster describe-cluster` 输出的预期 `clusterStatus` 为 `CREATE_FAILED`。检查输出中的 `failures` 部分以找到 `failureCode` 和 `failureReason`。然后在后面的部分中找到匹配的 `failureCode` 以获取更多故障排除帮助。有关更多信息，请参阅 [`pcluster describe-cluster`](pcluster.describe-cluster-v3.md)。

在后面的部分中，我们建议您查看头节点上的日志，例如 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 文件。有关 Amazon ParallelCluster 日志以及如何查看日志的更多信息，请参阅[用于调试的关键日志](troubleshooting-v3-scaling-issues.md#troubleshooting-v3-key-logs)和[检索和保留日志](troubleshooting-v3-get-logs.md)。

如果您没有`failureCode`，请导航到 Amazon CloudFormation 控制台以查看集群堆栈。查看 `HeadNodeWaitCondition` 的 `Status Reason` 或其他资源上的失败，以了解更多失败详细信息。有关更多信息，请参阅 [查看以下 Amazon CloudFormation 网址上的活动 `CREATE_FAILED`](troubleshooting-v3-cluster-deployment.md#troubleshooting-v3-cluster-deployment-events)。检查头节点上的 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 文件。如果由于头节点创建失败而导致集群创建失败，并且集群日志组中没有集群日志，则必须在失败时保留集群，指定 `--rollback-on-failure` = `True` 并从头节点本身检索日志。

## `failureCode` 是 `OnNodeConfiguredExecutionFailure`
<a name="create-cluster-on-node-configured-executed-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeConfigured` 中提供了用于创建集群的自定义脚本。但该自定义脚本未能运行。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 文件以更详细地了解失败以及如何解决自定义脚本中的问题。在该日志快要结束时，您可能会在 `Running command runpostinstall` 消息后看到与 `OnNodeConfigured` 脚本相关的运行信息。

## `failureCode` 是 `OnNodeConfiguredDownloadFailure`
<a name="create-cluster-on-node-configured-download-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeConfigured` 中提供了用于创建集群的自定义脚本。但该自定义脚本未能下载。
+ **如何解决？**

  确保 URL 有效并且正确配置了访问权限。有关自定义引导脚本配置的更多信息，请参阅[自定义引导操作](custom-bootstrap-actions-v3.md)。

  检查 `/var/log/cfn-init.log` 文件。在该日志快要结束时，您可能会在 `Running command runpostinstall` 消息后看到与 `OnNodeConfigured` 脚本处理（包括下载）相关的运行信息。

## `failureCode` 是 `OnNodeConfiguredFailure`
<a name="create-cluster-on-node-configured-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeConfigured` 中提供了用于创建集群的自定义脚本。但在集群部署中使用自定义脚本失败。无法确定直接原因，需要进一步调查。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 文件。在该日志快要结束时，您可能会在 `Running command runpostinstall` 消息后看到与 `OnNodeConfigured` 脚本处理相关的运行信息。

## `failureCode` 是 `OnNodeStartExecutionFailure`
<a name="create-cluster-on-node-start-execution-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeStart` 中提供了用于创建集群的自定义脚本。但该自定义脚本未能运行。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 文件以更详细地了解失败以及如何解决自定义脚本中的问题。在该日志快要结束时，您可能会在 `Running command runpreinstall` 消息后看到与 `OnNodeStart` 脚本相关的运行信息。

## `failureCode` 是 `OnNodeStartDownloadFailure`
<a name="create-cluster-on-node-start-download-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeStart` 中提供了用于创建集群的自定义脚本。但该自定义脚本未能下载。
+ **如何解决？**

  确保 URL 有效并且正确配置了访问权限。有关自定义引导脚本配置的更多信息，请参阅[自定义引导操作](custom-bootstrap-actions-v3.md)。

  检查 `/var/log/cfn-init.log` 文件。在该日志快要结束时，您可能会在 `Running command runpreinstall` 消息后看到与 `OnNodeStart` 脚本处理（包括下载）相关的运行信息。

## `failureCode` 是 `OnNodeStartFailure`
<a name="create-cluster-on-node-start-failure-v3"></a>
+ **为什么失败？**

  您在配置的头节点部分的 `OnNodeStart` 中提供了用于创建集群的自定义脚本。但在集群部署中使用自定义脚本失败。无法确定直接原因，需要进一步调查。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 文件。在该日志快要结束时，您可能会在 `Running command runpreinstall` 消息后看到与 `OnNodeStart` 脚本处理相关的运行信息。

## `failureCode` 是 `EbsMountFailure`
<a name="create-cluster-ebs-mount-failure-v3"></a>
+ **为什么失败？**

  集群配置中定义的 EBS 卷无法挂载。
+ **如何解决？**

  检查 `/var/log/chef-client.log` 文件以查看失败详细信息。

## `failureCode` 是 `EfsMountFailure`
<a name="create-cluster-efs-mount-failure-v3"></a>
+ **为什么失败？**

  集群配置中定义的 Amazon EFS 卷无法挂载。
+ **如何解决？**

  如果您定义了现有的 Amazon EFS 文件系统，请确保允许集群和该文件系统之间的流量。有关更多信息，请参阅 [`SharedStorage`](SharedStorage-v3.md)/[`EfsSettings`](SharedStorage-v3.md#SharedStorage-v3-EfsSettings)/[`FileSystemId`](SharedStorage-v3.md#yaml-SharedStorage-EfsSettings-FileSystemId)。

  检查 `/var/log/chef-client.log` 文件以查看失败详细信息。

## `failureCode` 是 `FsxMountFailure`
<a name="create-cluster-fsx-mount-failure-v3"></a>
+ **为什么失败？**

  集群配置中定义的 Amazon FSx 文件系统无法装载。
+ **如何解决？**

  如果您定义了现有 Amazon FSx 文件系统，请确保允许集群和文件系统之间的流量。有关更多信息，请参阅 [`SharedStorage`](SharedStorage-v3.md)/[`FsxLustreSettings`](SharedStorage-v3.md#SharedStorage-v3-FsxLustreSettings)/[`FileSystemId`](SharedStorage-v3.md#yaml-SharedStorage-FsxLustreSettings-FileSystemId)。

  检查 `/var/log/chef-client.log` 文件以查看失败详细信息。

## `failureCode` 是 `RaidMountFailure`
<a name="create-cluster-raid-mount-failure-v3"></a>
+ **为什么失败？**

  集群配置中定义的 RAID 卷无法挂载。
+ **如何解决？**

  检查 `/var/log/chef-client.log` 文件以查看失败详细信息。

## `failureCode` 是 `AmiVersionMismatch`
<a name="create-cluster-ami-version-mismatch-v3"></a>
+ **为什么失败？**

  用于创建自定义 AMI 的 Amazon ParallelCluster 版本与用于配置集群的 Amazon ParallelCluster 版本不同。在 CloudFormation 控制台中，查看集群 CloudFormation 堆栈详细信息并查看`HeadNodeWaitCondition`，以获取`Status Reason`有关 Amazon ParallelCluster 版本和 AMI 的更多详细信息。有关更多信息，请参阅 [查看以下 Amazon CloudFormation 网址上的活动 `CREATE_FAILED`](troubleshooting-v3-cluster-deployment.md#troubleshooting-v3-cluster-deployment-events)。
+ **如何解决？**

  确保用于创建自定义 AMI 的 Amazon ParallelCluster 版本与用于配置集群的 Amazon ParallelCluster 版本相同。您可以更改自定义 AMI 版本或 `pcluster` CLI 版本以使其相同。

## `failureCode` 是 `InvalidAmi`
<a name="create-cluster-invalid-ami-v3"></a>
+ **为什么失败？**

  自定义 AMI 无效，因为它不是使用构建的 Amazon ParallelCluster。
+ **如何解决？**

  使用 `pcluster build-image` 命令，通过将您的 AMI 设置为父映像来创建 AMI。有关更多信息，请参阅 [`pcluster build-image`](pcluster.build-image-v3.md)。

## `failureCode` 是 `HeadNodeBootstrapFailure`，并且 `failureReason` 是“无法设置头节点”。
<a name="create-cluster-head-node-bootstrap-setup-failure-v3"></a>
+ **为什么失败？**

  无法确定直接原因，需要进一步调查。例如，可能是因为集群处于受保护状态，这可能是由于无法预置静态计算实例集造成的。
+ **如何解决？**

  检查 `/var/log/chef-client.log.` 文件以查看失败详细信息。
**注意**  
如果您看到 `RuntimeError` 异常“`Cluster state has been set to PROTECTED mode due to failures detected in static node provisioning`”，则表示集群处于受保护状态。有关更多信息，请参阅 [如何调试受保护模式](slurm-protected-mode-v3.md#slurm-protected-mode-debug-v3)。

## `failureCode` 是 `HeadNodeBootstrapFailure`，并且 `failureReason`是“集群创建超时”。
<a name="create-cluster-head-node-bootstrap-timeout-failure-v3"></a>
+ **为什么失败？**

  默认情况下，集群创建的完成时间限制为 30 分钟。如果集群创建未在此时间范围内完成，则集群创建将失败并显示超时错误。集群创建可能由于不同的原因而超时。例如，头节点创建失败、网络问题、头节点中的自定义脚本运行时间过长、计算节点中运行的自定义脚本中的错误或计算节点预置等待时间过长均可导致超时失败。无法确定直接原因，需要进一步调查。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 文件以查看失败详细信息。有关 Amazon ParallelCluster 日志以及如何获取这些日志的更多信息，请参阅[用于调试的关键日志](troubleshooting-v3-scaling-issues.md#troubleshooting-v3-key-logs)和[检索和保留日志](troubleshooting-v3-get-logs.md)。

  在这些日志中，您可能会发现以下内容。
  + **在 `chef-client.log` 快要结束时看到“`Waiting for static fleet capacity provisioning`”**

    这表示在等待静态节点启动时，集群创建超时。有关更多信息，请参阅 [在计算节点初始化过程中看到错误](troubleshooting-fc-v3-compute-node-initialization-v3.md)。
  + **在 `cfn-init.log` 的末尾看到 `OnNodeConfigured` 或 `OnNodeStart` 头节点脚本未完成**

    这表示 `OnNodeConfigured` 或 `OnNodeStart` 自定义脚本的运行需要很长时间并导致了超时错误。检查您的自定义脚本是否存在导致其运行很长时间的问题。如果您的自定义脚本需要运行很长时间，请考虑在集群配置文件中添加一个 `DevSettings` 部分来更改超时限制，如以下示例所示：

    ```
    DevSettings:
      Timeouts:
        HeadNodeBootstrapTimeout: 1800 # default setting: 1800 seconds
    ```
  + **找不到日志，或者未成功创建头节点**

    可能未成功创建头节点，因此找不到日志。在这种情况下，您可以通过查看 CloudFormation 堆栈事件和头节点控制台日志来获取其他故障详细信息。您可以通过 Amazon EC2 控制台或运行以下 Amazon EC2 CLI 命令来检索头节点控制台日志：

    ```
    aws ec2 get-console-output --instance-id HEAD_NODE_INSTANCE_ID --output text
    ```

## `failureCode` 是 `HeadNodeBootstrapFailure`，并且 `failureReason` 是“无法引导头节点”。
<a name="create-cluster-head-node-bootstrap-failure-v3"></a>
+ **为什么失败？**

  无法确定直接原因，需要进一步调查。
+ **如何解决？**

  检查 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 文件。

## `failureCode` 是 `ResourceCreationFailure`
<a name="create-cluster-resource-creation-failure-v3"></a>
+ **为什么失败？**

  在集群创建过程中，创建某些资源失败。导致失败的原因多种多样。例如，容量问题或 IAM 策略配置错误可导致资源创建失败。
+ **如何解决？**

  在 CloudFormation 控制台中，查看群集堆栈以查看其他资源创建失败的详细信息。

## `failureCode` 是 `ClusterCreationFailure`
<a name="cluster-creation-failure-v3"></a>
+ **为什么失败？**

  无法确定直接原因，需要进一步调查。
+ **如何解决？**

  在 CloudFormation 控制台中，查看集群堆栈并查看，`Status Reason``HeadNodeWaitCondition`以查找其他故障详细信息。

  检查 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 文件。

## `WaitCondition timed out...`在 CloudFormation 堆栈中看见
<a name="create-cluster-wait-condition-timeout-v3"></a>

有关更多信息，请参阅 [`failureCode` 是 `HeadNodeBootstrapFailure`，并且 `failureReason`是“集群创建超时”。](#create-cluster-head-node-bootstrap-timeout-failure-v3)。

## `Resource creation cancelled`在 CloudFormation 堆栈中看见
<a name="create-cluster-resource-create-error-v3"></a>

有关更多信息，请参阅 [`failureCode` 是 `ResourceCreationFailure`](#create-cluster-resource-creation-failure-v3)。

## 在 Amazon CloudFormation 堆栈中看到错误`Failed to run cfn-init...`或其他错误
<a name="create-cluster-cfn-init-fail-error-v3"></a>

检查 `/var/log/cfn-init.log` 和 `/var/log/chef-client.log` 以查看其他失败详细信息。

## 看到 `chef-client.log` 以“`INFO: Waiting for static fleet capacity provisioning`”结束
<a name="create-cluster-wait-on-fleet-capacity-v3"></a>

这与等待静态节点启动时集群创建超时有关。有关更多信息，请参阅 [在计算节点初始化过程中看到错误](troubleshooting-fc-v3-compute-node-initialization-v3.md)。

## 看到`Failed to run preinstall or postinstall in cfn-init.log`
<a name="create-cluster-pre-post-install-v3"></a>

集群配置 `HeadNode` 部分中有 `OnNodeConfigured` 或 `OnNodeStart` 脚本。该脚本未正常运行。检查 `/var/log/cfn-init.log` 文件以查看自定义脚本的错误详细信息。

## `This AMI was created with xxx, but is trying to be used with xxx...`在 CloudFormation 堆栈中看见
<a name="create-cluster-ami-mismatch-error-v3"></a>

有关更多信息，请参阅 [`failureCode` 是 `AmiVersionMismatch`](#create-cluster-ami-version-mismatch-v3)。

## `This AMI was not baked by Amazon ParallelCluster...`在 CloudFormation 堆栈中看见
<a name="create-cluster-ami-incomplete-error-v3"></a>

有关更多信息，请参阅 [`failureCode` 是 `InvalidAmi`](#create-cluster-invalid-ami-v3)。

## 看到 `pcluster create-cluster` 命令无法在本地运行
<a name="create-cluster-pcluster-cli-error-v3"></a>

检查本地文件系统中的 `~/.parallelcluster/pcluster-cli.log` 以查看失败详细信息。

## 其他支持
<a name="create-cluster-additional-support-v3"></a>

按照[排查集群部署问题](troubleshooting-v3-cluster-deployment.md)中的故障排除指南进行操作。

查看您的场景是否包含在 “[GitHub 已知问题](https://github.com/aws/aws-parallelcluster/wiki) Amazon ParallelCluster ” 中 GitHub。