环境:


系统 centos7
docker版本 docker 19.03+
k8s版本 kubectl-1.20.6

2019年7月的docker 19.03已经正式发布了,这次发布对我们来说有两大亮点。
1,就是docker不需要root权限来启动喝运行了
2,就是支持GPU的增强功能,我们在docker里面想读取nvidia显卡再也不需要额外的安装nvidia-docker2了!!!解决了纠结了好长时间的nvidia-docker2安装问题,这个问题实在是困扰了我好久好久。不是docker版本不兼容,就是安装了之后出现git仓库连不上的各种稀奇古怪的问题。

 

1、安装显卡驱动

2、安装nvidia工具包
安装nvidia-container-runtime 

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo
sudo yum install -y nvidia-container-toolkit nvidia-container-runtime

注意这一部分不安装!!!!!!!!
安装nvidia-docker2
# 添加nvidia-docker2源
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo

# 安装nvidia-docker2,重载Docker daemon configuration
yum install -y nvidia-docker2
sudo pkill -SIGHUP dockerd



3、应用配置
配置/etc/docker/daemon.json

# /etc/docker/daemon.json
{
    "default-runtime": "nvidia",
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    },
    "insecure-registries": [],
    "registry-mirrors": [
        "http://hub-mirror.c.163.com",
        "https://registry.docker-cn.com"
    ]
}
systemctl daemon-reload
systemctl restart docker


4、应用k8s-device-plugin
配置DaemonSet

kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/1.0.0-beta6/nvidia-device-plugin.yml


5、查看gpu支持是否配置成功

kubectl describe node

找到对应的gpu节点机,查看如下配置

Capacity:
  cpu:                8
  ephemeral-storage:  46692072Ki
  hugepages-1Gi:      0
  hugepages-2Mi:      0
  memory:             8007780Ki
  nvidia.com/gpu:     1
  pods:               110
Allocatable:
  cpu:                7900m
  ephemeral-storage:  43031413484
  hugepages-1Gi:      0
  hugepages-2Mi:      0
  memory:             7655380Ki
  nvidia.com/gpu:     1
  pods:               110


若出现如下信息则代表配置成功

nvidia.com/gpu:     1

是不是简单了好多?!!!!!

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐