采集npu的状态,在容器内执行npu-smi必须启用privileged: true,而且必须用root执行,否则会报device is used。如何不使用特权容器在容器中执行npu-smi
收藏回复举报
采集npu的状态,在容器内执行npu-smi必须启用privileged: true,而且必须用root执行,否则会报device is used。如何不使用特权容器在容器中执行npu-smi
t('forum.solved') 已解决
发表于2025-09-19 21:15:01
0 查看

现在有一个需求需要采集npu指标。实现方案是:执行npu-smi命令->处理回显->上报运维服务。

由于需求,服务必须用容器运行。

目前将整个根目录挂载到容器的/host目录下。然后使用chroot启动服务。

服务报错如下:

上面这个问题使用

privileged: true

之后可以解决。

服务使用paas用户运行,npu卡已经有一个其他容器在使用,采集服务中运行npu-smi报错如下

这个问题使用sudo权限之后可以运行。

但是由于安全规范,不允许使用特权容器。

如何配置才能在容器中执行npu-smi命令且不占用设备。

我要发帖子