首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Nvidia Config之后,Containerd没有启动

在Nvidia Config之后,Containerd没有启动
EN

Server Fault用户
提问于 2021-12-01 11:37:51
回答 1查看 730关注 0票数 0

我遵循这个官方教程允许裸金属k8s集群具有GPU访问权限。然而,我在这样做的时候收到了错误。

Kubernetes 1.21容器1.4.11和Ubuntu20.04.3LTS(GNU/Linux5.4.0-91-泛型x86_64)。

Nvidia驱动程序是预装在495版无头系统操作系统上的。

/etc/containerd/config.toml中粘贴以下配置并执行服务重新启动后,容器将无法使用exit 1启动。

集装箱Config.toml

系统日志这里.

代码语言:javascript
复制
# persistent data location
root = "/var/lib/containerd"
# runtime state information
state = "/run/containerd"

# Kubernetes doesn't use containerd restart manager.
disabled_plugins = ["restart"]

# NVIDIA CONFIG START HERE

version = 2
[plugins]
  [plugins."io.containerd.grpc.v1.cri"]
    [plugins."io.containerd.grpc.v1.cri".containerd]
      default_runtime_name = "nvidia"

      [plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia]
          privileged_without_host_devices = false
          runtime_engine = ""
          runtime_root = ""
          runtime_type = "io.containerd.runc.v2"
          [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia.options]
            BinaryName = "/usr/bin/nvidia-container-runtime"

# NVIDIA CONFIG ENDS HERE

[debug]
  level = ""

[grpc]
  max_recv_message_size = 16777216
  max_send_message_size = 16777216

[plugins.linux]
  shim = "/usr/bin/containerd-shim"
  runtime = "/usr/bin/runc"

我可以确认Nvidia驱动程序通过运行nvidia-smi来检测GPU (Nvidia GTX 750 by ),并得到以下输出

代码语言:javascript
复制
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 495.44       Driver Version: 495.44       CUDA Version: 11.5     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:02:00.0 Off |                  N/A |
| 34%   34C    P8     1W /  38W |      0MiB /  2000MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

修改后的config.toml才能让它正常工作。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2021-12-02 04:38:23

据我所知,是这样:

Dec 02 :15:36 k8s-node0 2179737:code=exited :无效的禁用插件URI“重新启动”io.containerd.x.vx Dec 02 :15:15:36 k8s-node0 systemd1:containerd.service:主进程已退出,状态=1/FAILURE

因此,如果您知道restart-ish插件实际上已启用,则需要跟踪它的新URI语法,但实际上我建议只注释掉该节,或者使用disabled_plugins = [],因为我们使用的容器的可塑性作用没有提到任何关于“重新启动”的内容,并且具有= []风格。

顺便说一句,将来您可能希望将journalctl调用限制为只查看containerd.service,因为它会抛出许多分散注意力的文本:journalctl -u containerd.service,甚至可以将其限制在最后几行,这有时会更有帮助:journalctl -u containerd.service --lines=250

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1085068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档