Как стать автором
Обновить

Шпаргалка по установке драйверов NVIDIA на ML сервер

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.4K
Что бывает, если не следовать инструкциям
Что бывает, если не следовать инструкциям

Специалисты из сферы ИИ часто сталкиваются с задачей корректной настройки сервера с GPU. Лично я с этой задачей сталкиваюсь в последнее время даже слишком часто...

Данный материал предназначен для быстрой и последовательной установки драйверов NVIDIA, в том числе для видеокарт 50xx серии, а также настройки NVIDIA Container Toolkit. Эта инструкция актуальна для Linux-систем на базе Ubuntu и других Debian-совместимых дистрибутивов.

1. Удаление ранее установленных драйверов NVIDIA

Перед установкой рекомендуется полностью удалить старые драйверы и связанные с ними компоненты, чтобы избежать конфликтов версий.

sudo apt-get purge 'nvidia-*'
sudo apt-get update
sudo apt-get autoremove

После команды sudo apt-get purge обязательно сделайте глубокий вдох. В этот момент система вспоминает все ваши предыдущие попытки установить драйверы — и удаляет их вместе со старыми обидами.


2. Установка драйвера NVIDIA (актуальная версия 570+)

На май 2025 года для видеокарт серии RTX 50xx поддерживаются только драйверы nvidia-driver-570-open. Для других карт может быть достаточно любой версии nvidia-driver-xxx. Я же рекомендую ставить актуальную версию, в частности на свои сервера я ставлю версию nvidia-driver-570-server или nvidia-driver-570-open.

Поиск доступных версий драйвера:

apt search nvidia-driver

Опциональная установка библиотек:

Мне данная установка не требовалась, но для каких-то версий драйверов она может быть необходима. Для установки замените xxx на номер вашего драйвера.

sudo apt install libnvidia-common-xxx
sudo apt install libnvidia-gl-xxx

Установка драйвера (пример для 570-open):

sudo apt install nvidia-driver-570-open

3. Перезагрузка и проверка корректной установки

После завершения установки драйвера выполните перезагрузку системы:

Перезагрузка после установки драйвера — как кнопка «Сохранить» для всей вашей нервной системы. Рекомендуется, чтобы после неё заработало всё, кроме вашей паранойи.

sudo reboot

Проверьте, что драйвер установлен и GPU корректно определяется:

nvidia-smi

Ожидается вывод информации о вашей видеокарте и версии драйвера. Если вывод отсутствует или возникает ошибка, проверьте логи и отключите Secure Boot в BIOS, так как он может блокировать загрузку модулей NVIDIA.

Пример вывода информации командой nvidia-smi
Пример вывода информации командой nvidia-smi

4. Установка NVIDIA Container Toolkit для Docker

Для работы контейнеров с GPU необходим NVIDIA Container Toolkit. Он позволяет Docker-контейнерам использовать CUDA, cuDNN и связанные библиотеки.

Добавление репозитория и установка Toolkit:

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
  sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
  sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

5. Конфигурация Docker для работы с GPU

Для интеграции GPU в Docker необходимо настроить runtime.

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

Данная команда автоматически обновит конфигурацию Docker для работы с NVIDIA runtime.


6. Проверка работы GPU в контейнере

Для проверки запускаем контейнер с поддержкой GPU и исполняем утилиту nvidia-smi внутри:

sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi

В случае корректной настройки вы увидите информацию о вашей видеокарте изнутри контейнера. Это подтверждает правильную интеграцию GPU-драйвера, NVIDIA Container Toolkit и Docker.

Пример вывода, если Docker корректно увидел GPU.
Пример вывода, если Docker корректно увидел GPU.

7. Примечания

  • Для систем с Fedora, CentOS, RHEL и OpenSUSE инструкции по установке NVIDIA Container Toolkit отличаются, но общий принцип остаётся тем же: установка драйвера и toolkit, настройка контейнерного рантайма, перезапуск сервиса. Документацию по установке можно найти на официальном сайте NVIDIA.

  • Для Kubernetes следует использовать containerd и соответствующую конфигурацию через nvidia-ctk runtime configure --runtime=containerd.

  • Если драйвер NVIDIA так и не устанавливается, несмотря на все предпринятые шаги, рекомендуется попробовать другую версию драйвера, полностью повторяя весь алгоритм: очистка системы от старых пакетов, установка необходимых зависимостей и самого драйвера.

  • В случае, если повторные попытки не приводят к успеху и установка по-прежнему завершается с ошибками, оптимальным решением может стать переустановка операционной системы (например, Ubuntu) и повторное прохождение всех шагов инструкции. На практике, в сложных случаях именно этот подход помогал добиться стабильной работы драйверов и корректной интеграции с CUDA и контейнерной инфраструктурой.


8. Вывод

Правильная установка драйвера NVIDIA и последующая интеграция с контейнерной инфраструктурой является обязательным этапом при работе с задачами, требующими аппаратного ускорения. Следуя приведённой последовательности, можно гарантировать стабильную работу приложений, использующих CUDA и GPU.

Теги:
Хабы:
+2
Комментарии2

Публикации

Работа

Ближайшие события