Как убедиться, что среда выполнения контейнера является nvidia-docker для узла kubernetes?
Мне нужно проверить, правильно ли настроен узел kubernetes. Нужно использовать nvidia-docker для одного из рабочих узлов.
Использование: https://github.com/NVIDIA/k8s-device-plugin
Как я могу подтвердить правильность конфигурации для плагина устройства?
$ kubectl describe node mynode
Roles: worker
Capacity:
cpu: 4
ephemeral-storage: 15716368Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 62710736Ki
nvidia.com/gpu: 1
pods: 110
Allocatable:
cpu: 3800m
ephemeral-storage: 14484204725
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 60511184Ki
nvidia.com/gpu: 1
pods: 110
System Info:
Machine ID: f32e0af35637b5dfcbedcb0a1de8dca1
System UUID: EC2A40D3-76A8-C574-0C9E-B9D571AA59E2
Boot ID: 9f2fa456-0214-4f7c-ac2a-2c62c2ef25a4
Kernel Version: 3.10.0-957.1.3.el7.x86_64
OS Image: CentOS Linux 7 (Core)
Operating System: linux
Architecture: amd64
Container Runtime Version: docker://18.9.1
Kubelet Version: v1.11.2
Kube-Proxy Version: v1.11.2
Тем не менее, я вижу nvidia.com/gpu
вопрос о ресурсах узла: Container Runtime Version
должен сказать nvidia-docker
если узел настроен правильно? В настоящее время это показывает docker
который кажется подозрительным!
1 ответ
Не уверен, что вы уже сделали это, но, кажется, это четко описано:
После установки драйверов NVIDIA и докера NVIDIA, вам необходимо включить nvidia runtime на вашем узле, отредактировав /etc/docker/daemon.json
как указано здесь. Итак, как сказано в инструкции, если вы видите, что runtimes
правильно, вам просто нужно отредактировать этот конфиг.
Затем разверните DeamonSet (это способ обеспечить запуск модуля на каждом узле с доступом к сети и устройствам хоста):
kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v1.11/nvidia-device-plugin.yml
Теперь ваши контейнеры готовы к использованию графического процессора - как описано здесь.