MOFFETT Container Toolkit 用户手册
概述
MOFFETT Container Toolkit(moffett-ctk
)支持用户在容器环境中使用墨芯 AI 计算卡。 moffett-ctk
通过生成容器设备接口(Container Device Interface,CDI)规范文件,帮助容器正确识别并使用墨芯 AI 计算卡。该工具包兼容主流容器运行时,包括 Docker、Containerd 和 Podman 等。本文基于 Docker 介绍 moffett-ctk
的安装和配置。
安装 MOFFETT Container Toolkit
前提条件
已安装 SOLA ToolKit,且 SOLA ToolKit 版本 ≥ 3.11.0,具体操作请参见 SOLA Toolkit 安装指南。
已安装 Docker,且 Docker 版本 ≥ 25.0.0。
使用 Deb 包安装
moffett-ctk
的 Deb 安装包适用于 Debian 和 Ubuntu 系统,安装步骤如下:
获取 Deb 安装包。
wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/CloudNative/container-toolkit/moffett-container-toolkit_1.1.0_amd64.deb
安装
moffett-ctk
。sudo dpkg -i moffett-container-toolkit_1.1.0_amd64.deb
使用 RPM 包安装
moffett-ctk
的 RPM 安装包适用于 RHEL、AliOS、KylinOS V10、Rocky Linux 和 openEuler 系统,安装步骤如下:
获取 RPM 安装包。
wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/CloudNative/container-toolkit/moffett-container-toolkit-1.1.0-1.x86_64.rpm
安装
moffett-ctk
。sudo rpm -ivh moffett-container-toolkit-1.1.0-1.x86_64.rpm
查看 MOFFETT Container Toolkit 版本
查看 moffett-ctk
的版本:
moffett-ctk --version
配置 CDI
CDI 是一种面向容器运行时的开放规范,它抽象了对设备的访问方式,并实现了在不同容器运行时之间访问的标准化。
前提条件
已安装
moffett-ctk
。在 Docker 上启用 CDI,具体操作请参见配置 CDI。
操作步骤
生成 CDI 规范文件。
sudo moffett-ctk cdi generate --output=/etc/cdi/moffett.yaml
其中,
--output
参数用于指定 CDI 规范文件的保存路径。如果省略该参数,生成的 CDI 规范将输出到标准输出(STDOUT),即直接显示在终端窗口中。(可选)查看生成的设备名称。
moffett-ctk cdi list
使用 CDI 运行示例工作负载
运行示例工作负载验证 moffett-ctk
是否安装成功。
前提条件
已通过以下其中一种方式获取墨芯基础镜像:
通过墨芯 Docker 镜像仓库获取镜像:
docker pull moffett/macs-base-common:1.0-20250423
通过镜像存储地址下载并加载镜像:
wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/images/macs/macs-base-common-1.0-20250423.tar docker load -i macs-base-common-1.0-20250423.tar
使用 CDI 载入主机设备
载入主机全部设备
docker run --rm --device moffett.ai/spu=all moffett/macs-base-common:1.0-20250423 mx-smi list
以上命令的输出与在主机上直接运行
mx-smi
命令相同。载入主机指定设备
docker run --rm --device moffett.ai/spu=1 --device moffett.ai/spu=2 moffett/macs-base-common:1.0-20250423 mx-qual list
以上命令的输出与在主机中运行
mx-qual list -i 1 2
命令的结果相对应。说明
容器中运行
mx-smi list
或mx-qual list
命令时,返回对应设备的 Device ID 或 Index 始终从 0 开始排序;而主机中运行这两个命令,返回对应设备的实际 Device ID 或 Index。
卸载 MOFFETT Container Toolkit
卸载使用 Deb 包安装的
moffett-ctk
:sudo dpkg -P moffett-container-toolkit
卸载使用 RPM 包安装的
moffett-ctk
:sudo rpm -e moffett-container-toolkit