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

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

最佳实践

最佳实践:头节点实例类型选择

尽管头节点不运行任何作业,但其功能和规模对集群的整体性能至关重要。在选择要用于 head 节点的实例类型时,您需要评估以下项目:

集群大小:头节点负责编排集群的扩展逻辑,并负责将新节点附加到调度器。如果您需要向上和向下扩展包含大量节点的群集,则需要为头节点提供一些额外的计算容量。

共享文件系统:使用共享文件系统在计算节点和头节点之间共享项目时,请考虑头节点是暴露 NFS 服务器的节点。因此,您希望选择具有足够网络带宽和足够专用 Amazon EBS 带宽的实例类型来处理您的工作流程。

最佳实践:网络性能

网络性能对于确保高性能计算 (HPC) 应用程序的性能至关重要。我们推荐这三种最佳做法来优化您的网络性能。

  • 置放群组:集群置放群组是单个可用区中的实例的逻辑分组。有关置放群组的更多信息,请参阅置放群组中的适用Amazon EC2 Linux 实例的. 如果您正在使用Slurm,你可以配置每个Slurm队列以使用集群置放群组,方法是指定PlacementGroup在队列中Networking设置。

    Networking: PlacementGroup: Enabled: true Id: your-placement-group-name

    或者指定Amazon ParallelCluster使用创建置放群组:

    Networking: PlacementGroup: Enabled: true

    有关更多信息,请参阅 Networking

  • 增强联网:考虑选择支持增强联网的实例类型。这适用于所有最新一代实例. 有关更多信息,请参阅 。在 Linux 上增强联网中的适用Amazon EC2 Linux 实例的.

  • Elastic Fabric 要支持高级别的可扩展实例间通信,请考虑为您的网络选择 EFA 网络接口。EFA 的定制操作系统 (OS) 旁路硬件通过按需弹性和灵活性增强了实例间通信Amazon云。你可以配置每个Slurm排队ComputeResource使用Efa. 有关将 EFA 与结合使用的更多信息Amazon ParallelCluster,请参阅Elastic Fabric Adapter.

    ComputeResources: - Name: your-compute-resource-name Efa: Enabled: true

    有关 EFA 的更多信息,请参阅Elastic Fabric Adapter中的适用Amazon EC2 Linux 实例的.

  • 实例带宽:带宽随实例大小而扩展。有关如何选择最适合您需求的实例类型,请参阅Amazon EBS 优化的实例Amazon EBS 卷类型中的适用Amazon EC2 Linux 实例的.

最佳实践:预算提醒

要管理Amazon ParallelCluster资源成本,我们建议您使用Amazon Budgets用于创建预算的操作以及为选定的定义预算阈值警报Amazon资源的费用。有关更多信息,请参阅 。配置预算操作中的Amazon Budgets用户指南. 您也可以使用亚马逊 CloudWatch ,创建账单警报。有关更多信息,请参阅创建账单告警以监控 Amazon 预估费用

最佳实践:将集群移至新集群Amazon ParallelCluster次要版本或补丁版本

目前每个Amazon ParallelCluster次要版本是自包含的pclusterCLI。要将集群移至新的次要版本或补丁版本,必须使用新版本的 CLI 重新创建群集。

要优化将集群迁移到新的次要版本或补丁版本的过程,我们建议您使用以下最佳实践。

  • 将个人数据保存在集群外部创建的外部卷中,例如 Amazon EFS 和 FSx for Lustre。通过执行此操作,您可以轻松地将数据从一个集群移动到另一个集群。

  • 使用创建下面列出的类型的共享存储系统Amazon CLI要么Amazon Web Services Management Console:

    将它们作为现有文件系统添加到新的群集配置中。这样,当您删除集群时,它们会被保留,并且可以附加到新集群。

    我们建议您使用 Amazon EFS 或 FSx for Lustre 文件系统,因为它们可以同时连接到多个集群,并且您可以在删除旧集群之前将它们附加到新集群。

  • 使用自定义引导操作自定义您的实例,而不是自定义 AMI。这优化了创建过程,因为不需要为每个新版本创建新的自定义 AMI。

  • 建议的序列。

    1. 更新现有群集配置以使用现有的文件系统定义。

    2. 验证pcluster版本并根据需要进行更新。

    3. 创建并测试新集群。

      • 确保您的数据在新集群中可用。

      • 确保您的应用程序在新集群中运行。

    4. 如果您的新集群已经过全面测试和运行,并且您确定不会使用旧集群,请将其删除。