安装 Alauda GPU Management

先决条件

  • 具有目标业务集群的集群管理员访问权限,Alauda GPU Management 将安装到该集群中。
  • ACP v4.0-v4.3。
  • NVIDIA GPU worker 节点,x86_64 架构。
  • 已在目标业务集群上安装 Alauda Build of Node Feature Discovery。
  • 在创建 ClusterPolicy 实例之前已选择驱动程序模式。
  • 可从 Customer Portal 访问 Alauda GPU Management 软件包。

有关受支持的组合,请参见 Versions and Components 和 Compatibility;有关完整的节点检查清单,请参见 Prerequisites。

准备软件包

Package or artifactRequiredUse whenSource
Alauda Build of Node Feature DiscoveryRequired在目标业务集群中需要用于 OS、kernel、architecture 和 hardware 发现的共享节点标签。Separate prerequisite plugin
Alauda GPU ManagementRequired需要用于管理 GPU driver、container toolkit、device plugin、feature discovery 和 DCGM metrics 的 operator。This product
Precompiled driver image tupleIncluded in the package for the validated tuple; import others separately节点运行不可变 OS,并且需要与经过验证的 kernel 不同的预编译 driver。In the product package
Upstream NVIDIA driver imageNot in the package节点运行可变 OS,并使用 upstream driver mode。从 nvcr.io 镜像仓库同步。NVIDIA (customer mirror)

Alauda GPU Management 是一个基于 controller 的(OLM)operator。安装完成后,ClusterPolicy 实例将控制在 GPU 节点上协调哪些组件。driver、container toolkit、device plugin、GPU Feature Discovery 和 DCGM-Exporter,以及一个用于协调 driver 分批发布顺序的 driver manager,都包含在产品包中。针对本版本验证过的 SUSE Linux Micro 预编译 driver tuple 也随包提供;其他 kernel tuple 和 upstream 可变 OS driver 则需要单独准备(请参见 配置驱动程序模式)。

选择驱动程序模式

在创建 ClusterPolicy 实例之前选择驱动程序模式。这是会改变准备内容以及 driver 交付方式的唯一决策。

ModeClusterPolicy driver settingsDriver sourceUse when
Precompiled driver (immutable OS)driver.enabled=true, driver.usePrecompiled=true, driver.repository 设置为您的 registry,且 driver.version 设置为带修订号的 driver 版本(例如 580.126.09.1);operator 会解析与 kernel 匹配的镜像Precompiled driver image (package tuple or imported per kernel)主机 OS 为不可变类型,例如 SUSE Linux Micro。
Preinstalled host driverdriver.enabled=falseHost driver installed out of banddriver 已在 operator 之外安装和升级。
Upstream driver (mutable OS)driver.enabled=true, driver.usePrecompiled=false, repository: nvcr.io/nvidiaNVIDIA driver image from nvcr.io, modules built on the node主机 OS 为可变类型并拉取 upstream driver。本版本未验证。

在预安装 driver 模式下,operator 不会创建 driver DaemonSet。在启用 device plugin、runtime integration 或 metrics 之前,主机 driver 必须已在每个 GPU 节点上安装并处于健康状态。

每种模式的具体机制——镜像准备、air-gap 处理以及 driver spec 字段——已在 配置驱动程序模式 中统一说明。请先完成该页面中与您的模式对应的配置,然后再创建 ClusterPolicy。

安装流程

1. 根据所选模式准备 driver

完成上面所选模式对应的 配置驱动程序模式。这包括导入适用于您的节点 kernel 的预编译 tuple,或者同步 upstream driver 镜像,或者确认主机 driver 已存在。

WARNING

当 operator 管理 driver 时,driver 镜像会由 driver DaemonSet 在运行时拉取。如果目标业务集群 registry 中缺少匹配的镜像 tag,或者该 tag 被镜像策略阻止,driver Pod 将一直处于 ImagePullBackOff,且 driver 组件不会变为就绪状态。

2. 在集群镜像策略中允许 driver 和 operand 镜像

如果 ACP 强制执行镜像白名单策略,并且 operator 管理 driver,请将所有必需的镜像 tag 添加到目标业务集群中的 ImageWhiteList。请在运行 GPU 节点和 driver DaemonSet 的集群中创建该白名单。

为每个受支持的镜像 tag 使用一条精确规则;不要用宽泛的通配符替代 tag。在创建或更新 ClusterPolicy 实例之前应用这些规则,并在产品升级后重新检查。

如果采用预安装 driver 模式,则可跳过此步骤,除非其他已启用的组件镜像被集群镜像策略阻止。

3. 上传软件包

从 Customer Portal 下载并上传以下软件包:

  • Alauda GPU Management operator package。
  • Alauda Build of Node Feature Discovery cluster plugin package。

有关软件包上传流程,请参见 Upload Packages。

4. 安装 Node Feature Discovery

从 Administrator > Marketplace > Cluster Plugins 安装 Alauda Build of Node Feature Discovery。

NFD 是集群共享的节点发现层。它提供 GPU 安装所依赖的 OS、kernel、architecture 和 PCI hardware 标签。Alauda GPU Management 本身不会部署 NFD——它依赖 NFD 发布的标签来检测 GPU 节点——因此 NFD 必须作为单独的先决条件安装。在创建 ClusterPolicy 实例之前,请先在目标业务集群上安装它;否则将无法检测到 GPU 节点,也不会协调任何 GPU 组件。

5. 安装 Alauda GPU Management

  1. 转到 Administrator > Marketplace > OperatorHub。
  2. 切换到目标业务集群并打开 Alauda GPU Management。
  3. 单击 Install。
  4. 除非您的部署计划要求使用其他 namespace,否则保留默认 namespace。本文档中的命令使用默认值;如果您选择了其他 namespace,请相应替换。
  5. 在生产环境中选择 Manual 升级策略。
  6. 等待 operator subscription 成功,且 controller pod 正在运行。
WARNING

安装 operator 只会启动 controller。它不会安装 driver、device plugin、runtime integration 或 metrics。这些组件会在您创建 ClusterPolicy 实例后部署。

6. 创建 ClusterPolicy 实例

  1. 打开 Installed Operators > Alauda GPU Management。
  2. 打开 ClusterPolicy 选项卡。
  3. 单击 Create ClusterPolicy。
  4. 配置应由 operator 管理的组件。默认表单已针对本版本验证的预编译 driver 流程进行设置。

常见组件开关:

ComponentDefaultNotes
DriverEnabled仅当主机 driver 已在 operator 之外安装并管理时才禁用(预安装模式)。
Use precompiled driverEnabled对不可变 OS 的预编译交付启用。对 upstream 可变 OS 模式禁用。
Container toolkitEnabled配置 containerd nvidia runtime handler 和 CDI。
Device pluginEnabled向 Kubernetes 宣告 nvidia.com/gpu。
GPU Feature DiscoveryEnabled使用 GPU model 和 driver 信息为节点添加标签。
DCGM-ExporterEnabled为 ACP monitoring 暴露 GPU metrics。
MIG managerDisabledMIG 需要支持 MIG 的硬件以及用户提供的 mig-manager 镜像。请参见 MIG resources。

对于预编译 driver 模式,请按照 配置驱动程序模式 中的说明,在 ClusterPolicy.spec.driver 上设置 driver 的 repository 和带修订号的 version;operator 会解析与 kernel 匹配的镜像。默认表单不会自动部署一个可能与您的节点 kernel 不匹配的单独 driver CR。

INFO

在单节点或单机集群中,如果 GPU 节点也是 control-plane 节点,请将 Operand Tolerations(位于 ClusterPolicy 表单中的 Scheduling 下,或 YAML 中的 spec.daemonsets.tolerations)设置为包含 control-plane toleration,并在 Node Feature Discovery 上设置相同的 toleration。否则 operand DaemonSet 和 NFD 将无法调度,也不会检测到任何 GPU。请参见 Troubleshooting。

下一步

创建实例后,继续执行 验证。