DCSM 用户手册
MOFFETT Data Center SPU Manager(DCSM)是用于管理和监控墨芯 SPU 设备的工具,方便在集群和数据中心环境中对设备的管理操作。DCSM 提供以下两种交互接口:
dcsmi
:用于管理和监控 SPU 性能与健康状态的命令行工具。DCSM Exporter:用于单机或 Kubernetes 环境下的集群级监控。它可导出 SPU 的指标和健康数据,用于实时监控与告警,具体请参见 DCSM Exporter 用户手册。
部署 DCSM
前提条件
安装 SOLA Toolkit,具体请参见 SOLA Toolkit 安装指南。
操作步骤
获取 DCSM 安装包。
wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/dcsm/dcsm_1.2.0_amd64.deb
wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/dcsm/dcsm-1.2.0-1.x86_64.rpm
安装 DCSM。
注意
使用 RPM 包安装 DCSM 时,确保 SOLA Toolkit 也使用 RPM 包安装,否则系统提示无法找到依赖的
libsola.so
包,导致安装失败。sudo dpkg -i dcsm_1.2.0_amd64.deb
sudo rpm -U dcsm-1.2.0-1.x86_64.rpm
通过 systemd 启动 DCSM 服务,即启动
mx-hostengine
。sudo systemctl --now enable dcsm
安装后验证。
a. 查看 DCSM 服务状态。如果服务正在运行,
dcsm.service
状态显示为active (running)
。systemctl status dcsm
# 以下为 Ubuntu 系统返回的 DCSM 服务状态示例 ● dcsm.service - MOFFETT DCSM service Loaded: loaded (/lib/systemd/system/dcsm.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2025-06-26 11:41:06 CST; 2s ago Main PID: 2043982 (mx-hostengine) Tasks: 5 (limit: 154137) Memory: 1.5M CPU: 46ms CGroup: /system.slice/dcsm.service └─2043982 /usr/bin/mx-hostengine -n
b. 通过
dcsmi
工具查询墨芯设备信息。如返回设备信息,表示 DCSM 安装成功。dcsmi discovery -l
DCSM 主机引擎
DCSM 主机引擎(mx-hostengine
)是设备监控的核心进程。在主机上安装 DCSM 后,其二进制文件位于 /usr/bin
目录。执行以下命令,将 mx-hostengine
注册为 systemd 服务,随 DCSM 服务启动,主机重启后会自动重启。
sudo systemctl --now enable dcsm
通过 systemd 方式启动 mx-hostengine
的相关配置由 /usr/lib/systemd/system/dcsm.service
文件指定,可根据实际情况需要修改,步骤如下:
打开并修改
dscm.service
。sudo vim /usr/lib/systemd/system/dcsm.service
[Unit] Description=MOFFETT DCSM service [Service] User=root PrivateTmp=false ExecStart=/usr/bin/mx-hostengine -n # 启动 mx-hostengine 的命令,可选择配置下表所示的选项 Restart=on-abort [Install] WantedBy=multi-user.target
mx-hostengine
命令支持设置以下选项:选项
说明
-h,--help
显示帮助信息。
--version
显示
mx-hostengine
的版本信息。-t,--term
尝试终止
mx-hostengine
守护进程(Best Effort)。-p,--port <port_number>
指定监听的 TCP 端口号,默认值为 9494。用于客户端通过该端口访问
mx-hostengine
。-d,--domain-socket <socket_path>
指定 Unix 域套接字(Unix Domain Socket)路径作为通信通道,指定后不再启用 TCP 端口监听。默认路径为
/tmp/mx-hostengine
。-n,--no-daemon
不以守护进程方式启动
mx-hostengine
。-b,--bind-interface <ip_address>
指定监听的网络接口 IP 地址,默认为 localhost 或 127.0.0.1。如需实现被其他主机连接访问,设置为 all 或 0.0.0.0,即主机所有 IP 地址可被监听。
--log-level
指定日志级别,具体如下:
- NONE:关闭日志
- FATAL:仅记录致命错误
- ERROR(默认值):记录错误及更高级别信息
- WARN:记录警告及更高级别信息
- INFO:记录一般信息、警告和错误
- DEBUG:记录所有调试信息-f,--log-filename <file_path>
指定日志文件的输出路径,默认值
/var/log/dcsm/mx-hostengine.log
。重新加载配置。
sudo systemctl daemon-reload
重启 DCSM 服务。
sudo systemctl restart dcsm.service
另外,也可通过执行 sudo mx-hostengine
命令以守护进程方式手动启动 mx-hostengine
。
使用 dcsmi 工具
dcsmi
是连接访问 mx-hostengine
的命令行工具,dcsmi
二进制文件位于 /usr/bin
目录。
命令格式:dcsmi [选项] 子命令
- -h,--help
显示帮助信息。
- --version
显示工具的版本信息。
子命令 discovery
显示 SPU 设备信息。
dcsmi discovery [选项]
- --host <IP/FQDN>
指定连接的主机 IP 地址或域名(Fully Qualified Domain Name,FQDN),默认值为 localhost。
如需连接的主机可被访问,建议在启动 DCSM 服务时通过 -b 选项指定监听所有 IP 地址。
如果连接的主机使用
-d
参数启动mx-hostengine
,需给套接字文件路径加上前缀unix://
。
- -d,--device <device_id>
指定要查询的设备 ID,需和
--info
一起使用。- -g,--group <group_id>
指定要查询的设备组 ID,需和
--info
一起使用。关于设备组的详细说明请参见子命令 group。- -l,--list
列出所有墨芯 SPU 设备。
- -i,--info
查询指定设备或设备组的信息,和
--device
或--group
搭配使用。
示例
dcsmi discovery -l --host <ip_address>:<port_number> # 查询指定 IP 主机的设备信息
dcsmi discovery -l --host unix:///tmp/mx-hostengine
dcsmi discovery -i -d 0 # 查询 ID 为 0 的设备信息
dcsmi discovery -i -g 0 # 查询 ID 为 0 的组信息
子命令 group
设备组是用户自定义的设备集合,是 DCSM 多数操作的作用对象。通常可为每个任务作业(job)创建对应的设备组,以便统一管理和监控相关设备。DCSM 初始化时会自动创建默认设备组(group 0),包含主机上检测到的所有 SPU 设备。单个设备可同时加入多个设备组。
dcsmi group [选项]
通用选项
- -h,--help
显示帮助信息。
- --host <IP/FQDN>
指定连接的主机 IP 地址或域名(Fully Qualified Domain Name,FQDN),默认值为 localhost。
如需连接的主机可被访问,建议在启动 DCSM 服务时通过 -b 选项指定监听所有 IP 地址。
如果连接的主机使用
-d
参数启动 mx-hostengine,需给套接字文件路径加上前缀unix://
。
- -g,--group <group_id>
指定设备组 ID,和
-i
、-a
、-r
一起使用。
功能选项(必选其一)
- -l,--list
列出当前所有的设备组。
- -i,--info
显示指定设备组的信息。
- -c,--create <group_name>
创建一个空设备组,并返回其 ID。组 ID 取决于先前创建的设备组,因此其值可能会有所不同。
- -d,--delete <group_id>
删除指定的设备组。
- -a,--add <device_id1> [<device_id2> ...]
为指定的设备组添加设备,可添加单个或多个设备。
- -r,--remove <device_id1> [<device_id2> ...]
从指定的设备组移除设备,一次可移除单个或多个设备。
示例
dcsmi group -l --host 127.0.0.1:9494
dcsmi group -l --host unix:///tmp/mx-hostengine
dcsmi group -c test_group # 创建名为 test_group 的组,返回组 ID 为 1
dcsmi group -l
dcsmi group -g 1 -a 0 1 2 3
dcsmi group -g 1 -i
dcsmi group -g 1 -r 1 3
dcsmi group -d 1
子命令 stats
对设备组中的设备进行后台数据监控及统计。
须知
任务执行期间,DCSM 会持续收集默认统计指标。若需重复使用相同的 <job_name>,需先通过 dcsmi stats -r <job_name>
命令移除旧任务记录。
dcsmi stats [选项]
通用选项
- -h,--help
显示帮助信息。
- --host <IP/FQDN>
指定连接的主机 IP 地址或域名(Fully Qualified Domain Name,FQDN),默认值为 localhost。
如需连接的主机可被访问,建议在启动 DCSM 服务时通过 -b 选项指定监听所有 IP 地址。
如果连接的主机使用
-d
参数启动mx-hostengine
,需给套接字文件路径加上前缀unix://
。
- -g,--group <group_id>
指定设备组 ID,用于启动、停止、查看统计记录,和
-e
、-s
一起使用。- -i,--interval
指定统计指标(字段)采样间隔 (单位:ms),和
-e
一起使用。- -m,--max-keep-age
指定统计指标(字段)最大保存时间(单位:s),和
-e
一起使用。
功能选项(必选其一)
- -e,--enable
启动目标组的统计记录。。
- -s,--jstart <job_name>
为指定设备组创建并开始一个监控统计任务。
- -x,--jstop <job_name>
停止指定任务的监控统计任务。
- -j,--job <job_name>
查看的监控统计任务信息。
- -r,--jremove <job_name>
删除监控统计任务。
- --jremoveall
删除全部统监控统计任务。
示例
dcsmi stats -e -g 1 # 为指定的设备(group 1)组启用统计功能
dcsmi stats -s test_job -g 1 # 启动统计任务
dcsmi stats -x test_job # 停止统计任务
dcsmi stats -j test_job #查看统计结果
子命令 diag
执行环境诊断任务。目前仅支持本地检测 SOLA 环境是否就绪。
dcsmi diag [选项]
- -h,--help
显示帮助信息。
- -r,--run
指定环境诊断任务的等级。目前仅支持等级 1,即检测 SOLA 环境是否就绪。
示例
dcsmi diag -r 1
MOFFETT Validation Suite (version 1.2.0)
Software
DenyList .......................................... PASS
SOLA Library ...................................... PASS
MXML Library ...................................... PASS
Driver ............................................ PASS
Permissions and OS-related Blocks ................. PASS
Persistence Mode .................................. PASS
Environmental Variables ........................... PASS
停用 DCSM
当更新 SOLA Toolkit 时,DCSM 服务会影响 SOLA Toolkit 卸载,根据 DCSM 服务启用的方式选择停用的命令:
当以系统服务方式启动 DCSM 服务时,执行以下命令:
sudo systemctl --now disable dcsm
当以守护进程方式启动
mx-hostengine
时,执行以下命令:sudo mx-hostengine -t
卸载 DCSM
暂停并禁用 DCSM 服务。
sudo systemctl --now disable dcsm
卸载 DCSM。
须知
执行卸载操作会移除 DCSM 软件包提供的所有文件,包括二进制可执行文件和库文件。
sudo dpkg -r dcsm
sudo rpm -e dcsm