尝试创建集群 - Amazon ParallelCluster
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

尝试创建集群

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

在后面的部分中,我们建议您查看头节点上的日志,例如 /var/log/cfn-init.log/var/log/chef-client.log 文件。有关 Amazon ParallelCluster 日志以及如何查看这些日志的更多信息,请参阅用于调试的关键日志检索和保留日志

如果没有找到 failureCode,请导航到 Amazon CloudFormation 控制台以查看集群堆栈。查看 HeadNodeWaitConditionStatus Reason 或其他资源上的失败,以了解更多失败详细信息。有关更多信息,请参阅查看与 CREATE_FAILED 有关的 Amazon CloudFormation 事件:检查头节点上的 /var/log/cfn-init.log/var/log/chef-client.log 文件。

failureCodeOnNodeConfiguredExecutionFailure

  • 为什么失败?

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

  • 如何解决?

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

failureCodeOnNodeConfiguredDownloadFailure

  • 为什么失败?

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

  • 如何解决?

    确保 URL 有效并且正确配置了访问权限。有关自定义引导脚本配置的更多信息,请参阅自定义引导操作

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

failureCodeOnNodeConfiguredFailure

  • 为什么失败?

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

  • 如何解决?

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

failureCodeOnNodeStartExecutionFailure

  • 为什么失败?

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

  • 如何解决?

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

failureCodeOnNodeStartDownloadFailure

  • 为什么失败?

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

  • 如何解决?

    确保 URL 有效并且正确配置了访问权限。有关自定义引导脚本配置的更多信息,请参阅自定义引导操作

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

failureCodeOnNodeStartFailure

  • 为什么失败?

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

  • 如何解决?

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

failureCodeEbsMountFailure

  • 为什么失败?

    集群配置中定义的 EBS 卷无法挂载。

  • 如何解决?

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

failureCodeEfsMountFailure

  • 为什么失败?

    集群配置中定义的 Amazon EFS 卷无法挂载。

  • 如何解决?

    如果您定义了现有的 Amazon EFS 文件系统,请确保允许集群和该文件系统之间的流量。有关更多信息,请参阅 SharedStorage/EfsSettings/FileSystemId

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

failureCodeFsxMountFailure

  • 为什么失败?

    集群配置中定义的 Amazon FSx 文件系统无法挂载。

  • 如何解决?

    如果您定义了现有的 Amazon FSx 文件系统,请确保允许集群和该文件系统之间的流量。有关更多信息,请参阅 SharedStorage/FsxLustreSettings/FileSystemId

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

failureCodeRaidMountFailure

  • 为什么失败?

    集群配置中定义的 RAID 卷无法挂载。

  • 如何解决?

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

failureCodeAmiVersionMismatch

  • 为什么失败?

    用于创建自定义 AMI 的 Amazon ParallelCluster 版本与用于配置集群的 Amazon ParallelCluster 版本不同。在 CloudFormation 控制台中,查看集群 CloudFormation 堆栈详细信息并查看HeadNodeWaitCondition,以获取Status Reason有关Amazon ParallelCluster版本和 AMI 的更多详细信息。有关更多信息,请参阅查看与 CREATE_FAILED 有关的 Amazon CloudFormation 事件

  • 如何解决?

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

failureCodeInvalidAmi

  • 为什么失败?

    自定义 AMI 无效,因为它不是使用 Amazon ParallelCluster 构建的。

  • 如何解决?

    使用 pcluster build-image 命令,通过将您的 AMI 设置为父映像来创建 AMI。有关更多信息,请参阅pcluster build-image

failureCodeHeadNodeBootstrapFailure,并且 failureReason 是“无法设置头节点”。

  • 为什么失败?

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

  • 如何解决?

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

    注意

    如果您看到 RuntimeError 异常“Cluster state has been set to PROTECTED mode due to failures detected in static node provisioning”,则表示集群处于受保护状态。有关更多信息,请参阅如何调试受保护模式

failureCodeHeadNodeBootstrapFailure,并且 failureReason是“集群创建超时”。

  • 为什么失败?

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

  • 如何解决?

    检查 /var/log/cfn-init.log/var/log/chef-client.log 文件以查看失败详细信息。有关 Amazon ParallelCluster 日志以及如何获取这些日志的更多信息,请参阅用于调试的关键日志检索和保留日志

    在这些日志中,您可能会发现以下内容。

    • chef-client.log 快要结束时看到“Waiting for static fleet capacity provisioning

      这表示在等待静态节点启动时,集群创建超时。有关更多信息,请参阅在计算节点初始化过程中看到错误

    • cfn-init.log 的末尾看到 OnNodeConfiguredOnNodeStart 头节点脚本未完成

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

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

      可能未成功创建头节点,因此找不到日志。在 CloudFormation 控制台中,查看集群堆栈详细信息以查看其他故障详细信息。

failureCodeHeadNodeBootstrapFailure,并且 failureReason 是“无法引导头节点”。

  • 为什么失败?

    无法确定直接原因,需要进一步调查。

  • 如何解决?

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

failureCodeResourceCreationFailure

  • 为什么失败?

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

  • 如何解决?

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

failureCodeClusterCreationFailure

  • 为什么失败?

    无法确定直接原因,需要进一步调查。

  • 如何解决?

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

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

WaitCondition timed out...在 CloudFormation 堆栈中看见

有关更多信息,请参阅failureCode 是 HeadNodeBootstrapFailure,并且 failureReason是“集群创建超时”。

Resource creation cancelled在 CloudFormation 堆栈中看见

有关更多信息,请参阅failureCode 是 ResourceCreationFailure

在 Amazon CloudFormation 堆栈中看到“Failed to run cfn-init...”或其他错误

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

看到 chef-client.log 以“INFO: Waiting for static fleet capacity provisioning”结束

这与等待静态节点启动时集群创建超时有关。有关更多信息,请参阅在计算节点初始化过程中看到错误

看到Failed to run preinstall or postinstall in cfn-init.log

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

This AMI was created with xxx, but is trying to be used with xxx...在 CloudFormation 堆栈中看见

有关更多信息,请参阅failureCode 是 AmiVersionMismatch

This AMI was not baked by Amazon ParallelCluster...在 CloudFormation 堆栈中看见

有关更多信息,请参阅failureCode 是 InvalidAmi

看到 pcluster create-cluster 命令无法在本地运行

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

其他支持

按照排查集群部署问题中的故障排除指南进行操作。

查看您的场景是否包含在 “GitHub 已知问题Amazon ParallelCluster” 中 GitHub。

有关其他支持,请参阅其他支持