GPU Operator 离线安装¶
d.run 预置了 CentOS 7.9,内核为 3.10.0-1160 的 GPU Operator 离线包。 本文介绍如何离线部署 GPU Operator,覆盖 NVIDIA GPU 以下几种使用模式的参数配置:
- 整卡模式
- vGPU 模式
- MIG 模式
Note
安装后不支持从 MIG 模式切换为整卡模式或 vGPU 模式,仅支持整卡模式与 vGPU 模式的一键切换,请提前规划好您的使用模式。
详情请参考:NVIDIA GPU 卡使用模式,本文使用的 AMD 架构的 Centos 7.9 (3.10.0-1160)进行演示。如需使用 redhat8.4 部署, 请参考向火种节点仓库上传 Red Hat GPU Opreator 离线镜像和构建 Red Hat 8.4 离线 yum 源。
前提条件¶
- 用户已经在平台上安装了 v0.12.0 及以上版本的 addon 离线包。
- 待部署 GPU Operator 的集群节点内核版本必须完全一致。节点 发行版和 GPU 卡型号在 GPU 支持矩阵 范围内。
操作步骤¶
参考如下步骤为集群安装 GPU Operator 插件。
-
登录平台,进入 容器管理 -> 待安装 GPU Operator 的集群 -> 进入集群详情。
-
在 Helm 模板 页面,选择 全部仓库 ,搜索 gpu-operator 。
-
选择 gpu-operator ,点击 安装 。
-
参考下文参数配置,配置 gpu-operator 安装参数,完成 gpu-operator 的安装。
参数配置¶
基本参数配置¶
- 名称 :输入插件名称。
- 命名空间 :选择将插件安装的命名空间。
- 版本 :插件的版本,此处以 23.6.10 版本为例。
- 就绪等待 :启用后,所有关联资源都处于就绪状态,才会标记应用安装成功。
- 失败删除 :安装失败,则删除已经安装的关联资源。开启后,将默认同步开启 就绪等待 。
- 详情日志 :开启后,将记录安装过程的详细日志。
高级参数配置¶
Operator 参数配置¶
- InitContainer.image :配置 CUDA 镜像,推荐默认镜像: nvidia/cuda
- InitContainer.repository :CUDA 镜像所在的镜像仓库,默认为 nvcr.m.daocloud.io 仓库
- InitContainer.version : CUDA 镜像的版本,请使用默认参数
Driver 参数配置¶
- Driver.enable :配置是否在节点上部署 NVIDIA 驱动,默认开启, 如果您在使用 GPU Operator 部署前,已经在节点上部署了 NVIDIA 驱动程序,请关闭。
- Driver.image :配置 GPU 驱动镜像,推荐默认镜像: nvidia/driver 。
- Driver.repository :GPU 驱动镜像所在的镜像仓库,默认为 nvidia 的 nvcr.io 仓库。
-
Driver.version :GPU 驱动镜像的版本,离线部署请使用默认参数,仅在线安装时需配置, 不同类型操作系统的 Driver 镜像的版本存在如下差异, 详情可参考:Nvidia GPU Driver 版本, 如下不同操作系统的
Driver Version
示例:Note
系统默认提供 525.147.05-centos7 的镜像,其他镜像需要参考向火种节点仓库上传镜像 。 注意版本号后无需填写 ubantu、centos、Red Hat等操作系统名称,若官方镜像含有操作系统后缀,请手动移除
- Red Hat 系统,例如
525.105.17
- Ubuntu 系统,例如
535-5.15.0-1043-nvidia
- CentOS 系统,例如
525.147.05
- Red Hat 系统,例如
-
Driver.RepoConfig.ConfigMapName :用来记录 GPU Operator 的离线 yum 源配置文件名称, 当使用预置的离线包时,global 集群可直接执行如下命令,工作集群 参考 Global 集群任意节点的 yum 源配置 。
-
global 集群配置
-
工作集群配置
参考 Global 集群任意节点的 yum 源配置
其它操作系统或内核可参考如下链接创建 yum 源文件:
-
Toolkit 配置参数¶
-
Toolkit.enable :默认开启,该组件让 conatainerd/docker 支持运行需要gpu的容器。
-
Toolkit.image :配置 Toolkit 镜像,推荐默认镜像: nvidia/k8s/container-toolkit 。
-
Toolkit.repository :所在的镜像仓库,默认为 nvcr.m.daocloud.io 仓库。
-
Toolkit.version :Toolkit 镜像的版本,版本号与官网保持一致即可。默认使用 centos 的镜像,如果使用ubuntu,需要手动修改 addon 的 yaml, 将 centos 改成 ubuntu。具体型号参考 NVIDIA Container Toolkit。
MIG 配置参数¶
详细配置方式请参考开启 MIG 功能
- MigManager.enabled :是否启用 MIG 能力特性。
- MigManager.Config.name: MIG 的切分配置文件名,用于定义 MIG 的(GI, CI)切分策略。 默认为 default-mig-parted-config 。自定义参数参考开启 MIG 功能。
- Mig.strategy :节点上 GPU 卡的 MIG 设备的公开策略。NVIDIA 提供了两种公开 MIG 设备的策略: single 、 mixed 策略,详情参考 NVIDIA GPU 卡模式说明。
Node-Feature-Discovery 配置参数¶
Node-Feature-Discovery.enableNodeFeatureAPI :启用或禁用节点特性 API(Node Feature Discovery API)。
- 当设置为 true 时,启用了节点特性 API。
- 当设置为 false 或 未设置 时,禁用节点特性 API。
下一步操作¶
完成上述相关参数配置和创建后:
-
如果使用 整卡模式,应用创建时可使用 GPU 资源
-
如果使用 vGPU 模式 ,完成上述相关参数配置和创建后,下一步请完成 vGPU Addon 安装
-
如果使用 MIG 模式,并且需要给个别 GPU 节点按照某种切分规格进行使用,否则按照 MigManager.Config 中的 default 值进行切分。
-
single 模式请给对应节点打上如下 Label:
-
mixed 模式请给对应节点打上如下 Label:
-
切分后,应用可使用 MIG GPU 资源。