配置 GPU 节点

添加图形处理单元到长期运行的 DC/OS 服务

DC/OS 支持将 GPU(图形处理单元)分配给您的长期运行 DC/OS 服务。在服务中添加 GPU 可以显著加快大数据工作负载。

借助基于 GPU 的计划,您可以共享传统和机器学习工作负载的群集资源,还可以在这些群集内动态分配 GPU 资源并在需要时释放它们。您可以为有需要的工作负载预留 GPU 资源,或将这些启用了 GPU 的资源与基础架构的其余部分进行混合,以提高总体利用率。

在安装了启用 GPU 的 DC/OS 之后,您可以通过 gpus 参数在应用定义中指定 GPU。

安装启用了 GPU 的 DC/OS

必须在 DC/OS 安装期间启用 GPU。按照以下说明,根据您的特定 DC/OS 部署方法启用 GPU。

配备 GPU 的自定义 DC/OS 安装

  1. 在每个具有 GPU 的群集节点上安装 NVIDIA 管理库 (NVML)。所需的 NVIDIA 驱动程序最低版本为 340.29。有关详细的安装说明,请参阅 Mesos GPU 支持文档

  2. 使用 自定义高级安装说明 安装 DC/OS 。以下是 GPU 特定的配置参数:

    -** enable_gpu_isolation:指示是否在 DC/OS 中启用 GPU 支持。默认设置为 enable_gpu_isolation: 'true'。 - gpus_are_scarce**:指示是否将 GPU 作为群集中的稀缺资源。默认设置为 gpus_are_scarce: 'true',这意味着 DC/OS 仅为配置为占用 GPU 资源的服务保留 GPU 节点。值得注意的是,此设置将影响在 DC/OS 的哪些代理节点部署 GPU 感知框架。此设置不影响框架在运行时可能启动的具体任务。框架可以在有 GPU 的代理节点上安排非 GPU 任务。

    有关更多信息,请参阅 配置参数文档 和 Mesos Nvidia GPU 支持文档

带有 GPU 的 AWS EC2 DC/OS 安装

先决条件

  • AWS DC/OS 高级模板 系统要求
  • 复制到本地机器的 zen.sh 脚本。脚本和说明在 此处

创建依赖关系

  1. 运行 zen.sh 脚本以创建 Zen 模板依赖关系。这些依赖关系将用作在 CloudFormation 中创建堆栈的输入信息。
  1. bash ./zen.sh <stack-name>

重要信息:在执行后续步骤之前,您必须先运行 zen.sh 脚本。

  1. 请根据 此处 说明,使用以下 GPU 专用配置创建具有高级 AWS 模板的群集。

  2. 创建堆栈 > 指定详情页面指定您的堆栈信息并单击 下一步。以下是 GPU 特定设置。

    • 自定义 AMI - 为您所在地区指定自定义 AMI:

      • us-west-2:ami-d54a2cad
      • us-east-1:ami-5f5d1449
      • ap-southeast-2:ami-0d50476e
    • MasterInstanceType——接受默认管理节点实例类型(例如, m3.xlarge)。

    • PrivateAgentInstanceType——指定 AWS GPU 机器类型 (例如, g2.2xlarge)。

    • PublicAgentInstanceType——指定 AWS GPU 机器类型 (例如, g2.2xlarge)。

  3. 选项 页面,接受默认值,然后单击 下一步。您可以选择是否在发生故障时回滚。默认情况下,此选项设置为

  4. 查看 页面勾选确认框,然后单击 创建

    注意:如果显示创建新堆栈页面,则要么是 AWS 仍在处理您的请求,要么是您查看的是其他分域。导航至正确的分域并刷新页面以查看您的堆栈。