为 AI 工作负载创建全代管式 Slurm 集群

本文档介绍了如何配置和部署全代管式 Slurm 集群,该集群使用 A4X、A4、A3 Ultra、A3 Mega 或 A3 High 机器类型。如需详细了解这些加速器优化机器类型,请参阅 GPU 机器类型

本文档中的步骤介绍了如何使用 Cluster Director 创建 Slurm 集群。 Cluster Director 是一款可自动设置和配置 Slurm 集群的 Google Cloud 产品。它专为希望避免管理集群的开销并专注于运行工作负载的 IT 管理员和 AI 研究人员而设计。如果您希望更好地 控制集群的部署和管理,请 使用 Cluster Toolkit 创建集群

限制

根据集群中的 Compute Engine 实例使用的机器类型,适用以下限制:

A4X

  • 使用此机器类型的实例不会获得持续 使用折扣灵活承诺使用 使用折扣。
  • 您只能在某些区域和可用区中创建实例。
  • 您不能使用 Persistent Disk(区域级或可用区级)。您只能使用 Google Cloud Hyperdisk
  • 此机器类型仅在 NVIDIA Grace 平台上提供。
  • A4X 不支持更改机器类型。如需切换到此 机器类型或从此 机器类型切换,您必须创建新实例。
  • 您不能在此机器类型上运行 Windows 操作系统。如需查看 支持的 Linux 操作系统列表,请查看 GPU 实例支持的操作系统
  • 对于 A4X 实例,当您使用 ethtool -S 监控 GPU 网络时,以 _phy 结尾的物理端口计数器不会更新。对于使用 MRDMA 虚拟功能 (VF) 架构的实例,这是预期行为。 如需了解详情,请参阅 MRDMA 功能和网络监控工具
  • A4X 实例不支持以下各项:
  • 您无法将 2026 年 2 月 4 日之前创建的 Hyperdisk ML 磁盘挂接到 A4X 机器类型。

A4

  • 使用 A4 机器类型的实例不会获得 持续 使用折扣灵活承诺使用 折扣。
  • 只能在某些 区域 和可用区中使用 A4 机器类型。
  • 您不能使用 Persistent Disk(区域级或可用区级)。您只能使用 Google Cloud Hyperdisk
  • A4 机器类型仅在 Emerald Rapids CPU 平台上提供。
  • 您无法将实例的机器类型更改为 A4 机器类型或从 A4 机器类型更改为其他类型。您必须使用此机器类型创建 新实例。
  • A4 机器类型不支持 单租户
  • 您不能在 A4 机器类型上运行 Windows 操作系统。
  • 对于 A4 实例,当您使用 ethtool -S 监控 GPU 网络时,以 _phy 结尾的物理端口计数器不会更新。对于使用 MRDMA 虚拟功能 (VF) 架构的实例,这是预期行为。 如需了解详情,请参阅 MRDMA 功能和网络监控工具
  • 您无法将 2026 年 2 月 4 日之前创建的 Hyperdisk ML 磁盘挂接到 A4 机器类型。

A3 Ultra

  • 使用 A3 Ultra 机器类型的实例不会获得 持续 使用折扣灵活承诺使用 折扣。
  • 只能在某些 区域 和可用区中使用 A3 Ultra 机器类型。
  • 您不能使用 Persistent Disk(区域级或可用区级)。您只能使用 Google Cloud Hyperdisk
  • A3 Ultra 机器类型仅在 Emerald Rapids CPU 平台上提供。
  • A3 Ultra 机器类型不支持更改机器类型。如需切换到此机器 类型或从此机器类型切换,您必须创建新实例。
  • 您不能在 A3 Ultra 机器类型上运行 Windows 操作系统。
  • A3 Ultra 机器类型不支持 单租户
  • 对于 A3 Ultra 实例,当您使用 ethtool -S 监控 GPU 网络时,以 _phy 结尾的物理端口计数器不会更新。对于使用 MRDMA 虚拟功能 (VF) 架构的实例,这是预期行为。 如需了解详情,请参阅 MRDMA 功能和网络监控工具

A3 Mega

A3 High

  • 使用 A3 High 机器类型的实例不会获得 持续 使用折扣灵活承诺使用 折扣。
  • 只能在某些 区域 和可用区中使用 A3 High 机器类型。
  • 不能在使用 A3 High 机器类型的实例上使用区域级永久性磁盘
  • A3 High 机器类型仅在 Sapphire Rapids CPU 平台上提供。
  • A3 High 机器类型不支持更改机器类型。如需切换到此机器 类型或从此机器类型切换,您必须创建新实例。
  • 您不能在 A3 High 机器类型上运行 Windows 操作系统。
  • 您只能使用 a3-highgpu-8g。不支持 GPU 数量少于 8 个的 A3 High 机器类型。

准备工作

在创建 Slurm 集群之前,如果您尚未完成以下步骤,请先完成这些步骤:

  1. 选择使用选项:您选择的使用选项决定了您如何获取 和使用 GPU 资源。如需了解详情,请参阅 选择使用选项
  2. 获取容量:每种使用选项的容量获取流程各不相同。如需了解所选使用选项的容量获取流程,请参阅容量概览
  3. 验证您是否有足够的 Filestore 容量配额:您需要在部署之前在目标区域中拥有足够的 Filestore 配额。所需的最小 容量取决于集群中的机器类型:
    • A4X Max、A4X、A4、A3 Ultra 和 A3 Mega:需要至少 10 TiB (10,240 GiB) 的 HIGH_SCALE_SSD(可用区级)容量。
    • A3 High:需要至少 2.5 TiB (2,560 GiB) 的 BASIC_SSD(标准)容量。

    如需查看配额或申请增加配额,请参阅以下内容:

  4. 验证可信映像政策:如果您的项目所在的组织具有 可信映像政策 (constraints/compute.trustedImageProjects),请验证 clusterdirector-public-images项目是否包含在允许的 项目列表中。如需了解详情,请参阅 设置可信映像政策

所需角色

如需创建 Slurm 集群,您需要拥有以下 IAM 角色和权限:

创建 Slurm 集群

如需使用 Cluster Director 创建 AI 优化集群,请完成以下步骤:

  1. 配置计算资源配置

  2. 配置网络

  3. 配置存储资源

  4. 配置 Slurm 环境

配置计算资源配置

如需在创建集群时配置计算资源配置,请完成以下步骤:

  1. 在 Google Cloud 控制台中,前往 Cluster Director 页面。

    前往 Cluster Director

  2. 点击 创建集群

  3. 在显示的对话框中,点击参考架构 。系统会打开创建集群 页面。

  4. 点击一个可用的模板。您可以选择修改模板,使其适应工作负载的需求。

  5. 点击自定义

  6. 计算 部分的集群名称 字段中,输入集群的名称。该名称最多可以包含 10 个字符,并且只能使用 数字或小写字母 (a-z)。

  7. 如需向预配置的计算资源配置添加信息,或修改配置指定的计算实例的数量和类型,请执行以下操作:

    1. 计算 部分中,点击 修改资源配置。系统会显示添加资源配置 窗格。

    2. 可选:如需更改计算资源配置名称,请在名称 字段中输入新名称。

    3. 可选:如需更改集群使用的计算实例的数量和类型,请在机器配置 部分中,按照提示更新计算资源。

    4. 使用选项 部分中,指定要用于获取资源的使用选项:

      • 如需使用预留创建计算实例,请执行以下操作:

        1. 点击使用预留 标签页。

        2. 点击选择预留 。系统会显示选择预留 窗格。如果您想使用 A4X 虚拟机的预留,则您 可以选择 子块来 控制虚拟机的放置位置。

        3. 选择要使用的预留。然后,点击选择 。此操作会自动设置计算资源的区域可用区

      • 如需创建灵活启动虚拟机,请执行以下操作:

        1. 点击灵活启动 标签页。

        2. 虚拟机的时间限制 部分中,指定计算实例的运行时长。该值必须介于 10 分钟到 7 天之间。

        3. 位置 部分中,选择要在其中创建灵活启动虚拟机的区域。控制台会自动过滤可用区域,仅显示支持所选机器类型的灵活启动虚拟机的区域。Google Cloud

      • 如需创建 Spot 虚拟机,请执行以下操作:

        1. 点击使用 Spot 标签页。

        2. 虚拟机终止时 列表中,选择以下选项之一:

          • 如需在抢占时删除 Spot 虚拟机,请选择删除

          • 如需在抢占时停止 Spot 虚拟机,请选择停止

        3. 位置 部分中,选择要在其中创建 Spot 虚拟机的区域可用区 。控制台会自动过滤可用区域,仅显示支持所选机器类型的 Spot 虚拟机的区域。Google Cloud

    5. 点击完成

    6. 可选:如需为 分区创建其他计算资源配置,请点击 添加资源配置,然后按照提示指定 计算资源。

  8. 点击继续

配置网络

如需配置集群使用的网络,请完成以下步骤:

  1. 选择虚拟私有云 (VPC) 网络 部分中,执行以下操作之一:

    • 推荐:如需让 AI Hypercomputer 为您的集群自动创建预配置的 VPC 网络,请执行以下操作:

      1. 选择创建新的 VPC 网络

      2. 网络名称 字段中,输入 VPC 网络的名称。

    • 如需使用现有 VPC 或共享 VPC 网络,请执行以下操作:

      1. 选择使用当前项目中的 VPC 网络使用托管在其他项目中的共享 VPC 网络

      2. 选择 VPC 网络共享 VPC 网络 列表中,选择 符合 所需配置的 VPC 或共享 VPC 网络

      3. 选择子网 列表中,选择现有子网。

  2. 点击继续

配置存储资源

如需配置集群使用的存储资源,请在存储 部分中完成以下步骤:

  1. 可选:如需修改存储资源,请点击 修改存储空间方案,然后 按照提示更新存储资源的配置。

  2. 可选:如需向集群添加存储资源,请点击 添加存储配置,然后按照提示指定存储资源的配置。

  3. 点击继续

配置 Slurm 环境

如需在集群中配置 Slurm 环境,请完成以下步骤:

  1. 可选:如需修改登录节点使用的计算实例的数量和类型,请展开登录节点 部分,然后按照提示更新计算资源。

  2. 可选:如需修改集群的分区以整理计算资源,请展开分区 部分,然后执行以下操作之一:

    • 如需添加分区,请点击添加分区,然后执行以下操作:

      1. 分区名称 字段中,输入分区的名称。

      2. 如需修改节点集,请点击切换节点集 。否则,如需添加节点集,请点击添加节点集

      3. 节点集名称 字段中,输入节点集的名称。

      4. 资源配置 字段中,选择您在之前的步骤中创建的计算资源配置。

      5. 来源映像 列表中,选择 AI Hypercomputer 支持的操作系统映像之一

      6. 静态节点数 字段中,输入必须始终在集群中运行的计算实例的最小数量。

      7. 动态节点数 字段中,输入 AI Hypercomputer 在流量增加期间可以将集群增加到的计算实例的最大数量。

      8. 启动磁盘类型 列表和启动磁盘大小 字段中,输入供计算实例使用的启动磁盘的类型和大小。

      9. 点击完成

    • 如需移除分区,请点击 删除分区

  3. 可选:如需向 Slurm 环境添加 序言或尾声脚本,请执行以下操作:

    1. 展开高级编排设置 部分。

    2. 脚本 部分中,按照提示添加脚本。

  4. 点击创建 。系统会显示集群 页面。创建集群可能需要一些时间才能完成。完成时间取决于您请求的计算实例数量以及计算实例所在可用区中的资源可用性。如果请求的资源不可用,AI Hypercomputer 会保留创建请求,直到资源变得可用。如需查看集群创建操作的状态, 请查看集群的详细信息

连接到 Slurm 集群

当 AI Hypercomputer 创建登录节点时,集群状态会更改为就绪 。然后,您可以连接到集群;但是,只有在 AI Hypercomputer 在集群中创建计算节点后,您才能运行工作负载。

如需使用 Google Cloud 控制台通过 SSH 连接到集群的登录节点,请完成以下步骤:

  1. 在 Google Cloud 控制台中,前往 集群 页面。

    转到集群

  2. 集群 表格的名称 列中,点击您在上一部分中创建的集群的名称。系统会显示一个包含集群详细信息的页面,并且详细信息 标签页处于选中状态。

  3. 点击节点 标签页。

  4. 登录节点 部分的连接 列中,找到 集群的登录节点,其名称为 CLUSTER_NAME-login-001

  5. 在登录节点的连接 列中,点击 SSH 按钮。 系统会打开 SSH-in-browser 窗口。

  6. 如果出现提示,请点击授权 。连接到节点最多可能需要一分钟才能完成。

验证 Slurm 集群健康状况

在计算节点上运行作业之前,Slurm 会自动对该节点运行快速 GPU 健康检查。如果节点未通过检查,Slurm 会排空该节点,并阻止在该节点上调度新作业。

如需更彻底地测试集群分区中计算节点 的 GPU 健康状况和网络带宽,您可以手动运行 NVIDIA Collective Communications Library (NCCL) 测试。 如果 NCCL 测试发现任何不健康的节点,您可以修复这些节点或修改集群。NCCL 测试可帮助您在运行关键工作负载之前验证集群的健康状况。如需了解详情,请参阅 验证集群健康状况

删除 Slurm 集群

如需删除项目中的 Slurm 集群,请选择以下选项之一:

  1. 在 Google Cloud 控制台中,前往 集群 页面。

    转到集群

  2. 集群 表格的名称 列中,点击要删除的集群的名称。系统会显示一个包含集群详细信息的页面,并且详细信息 标签页处于选中状态。

  3. 点击 删除

  4. 在显示的对话框中,输入集群的名称,然后点击删除 进行确认。系统会显示集群 页面。删除集群可能需要一些时间才能完成。

后续步骤