Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Compute Cloud
    • Все инструкции
    • Посмотреть операции с ресурсами сервиса
    • Посмотреть метрики в Monitoring
    • Рекомендации по обновлению драйверов NVIDIA
  • Yandex Container Solution
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Поддерживаемые драйверы и рекомендации
  • Модель виртуализации Shared NVSwitch
  • Почему именно драйвер версии 535?
  • Обновление CUDA
  • Пример установки (Ubuntu)
  • Проблема с sudo rebootпосле обновления драйвера выше 535 и рекомендуемый обход
  1. Пошаговые инструкции
  2. Рекомендации по обновлению драйверов NVIDIA

Рекомендации по обновлению драйверов NVIDIA

Статья создана
Yandex Cloud
Обновлена 18 ноября 2025 г.
  • Поддерживаемые драйверы и рекомендации
  • Модель виртуализации Shared NVSwitch
  • Почему именно драйвер версии 535?
  • Обновление CUDA
    • Пример установки (Ubuntu)
  • Проблема с sudo rebootпосле обновления драйвера выше 535 и рекомендуемый обход

Примечание

В регионе Казахстан доступны только платформы standard-v3 (Intel Ice Lake) и standard-v3-t4i (Intel Ice Lake with T4i). Другие типы платформ, кластеры GPU и выделенные хосты недоступны.

Важно

Данное руководство предназначено для платформ gpu-standard-v3 (AMD EPYC™ with NVIDIA® Ampere® A100) и gpu-standard-v3i.

Для платформы gpu-standard-v3i поддерживается только образ с драйвером NVIDIA 535 и поддержкой secure-boot. Обновление видеодрайвера на этой платформе невозможно; допустимо обновлять только библиотеку CUDA.

Поддерживаемые драйверы и рекомендацииПоддерживаемые драйверы и рекомендации

Виртуальные машины платформ gpu-standard-v3 (AMD EPYC™ with NVIDIA® Ampere® A100) и gpu-standard-v3i в Yandex Cloud преднастраиваются с драйвером NVIDIA 535.
Мы рекомендуем использовать именно эту версию драйвера — обновление драйвера до других версий не поддерживается и может привести к нестабильности работы GPU.

Модель виртуализации Shared NVSwitchМодель виртуализации Shared NVSwitch

Мы используем модель виртуализации Shared NVSwitch, описанную в документации NVIDIA Fabric Manager User Guide.

NVSwitch-устройства вынесены в отдельную служебную ВМ и управляются отдельным драйвером NVIDIA версии 535. При старте гостевой ВМ GPU преднастраиваются для работы с NVLink; чтобы сохранить эту предконфигурацию, в Yandex Cloud запрещен программный сброс GPU из пользовательских ВМ.

Если в пользовательской ВМ обновить драйвер до другой версии (например, 570), драйвер может не распознать текущее состояние GPU — это ограничение драйверов NVIDIA. Поэтому смена версии драйвера из пользовательской ВМ не рекомендуется.

Почему именно драйвер версии 535?Почему именно драйвер версии 535?

NVIDIA публикует несколько веток драйверов (NVIDIA Data Center Drivers Overview):

  • LTSB (Long-Term Support Branch) — долгосрочная поддержка (обновления безопасности и исправления в течение 3 лет);
  • PB (Production Branch) — основная ветка для дата-центров;
  • NFB (New Feature Branch) — драйверы с новыми возможностями.

Версия 535 относится к LTSB; она валидирована и поддерживается в инфраструктуре Yandex Cloud. Драйверы из других веток не проходят проверку совместимости и могут работать некорректно.

Обновление CUDAОбновление CUDA

Часто требуется не смена драйвера, а обновление CUDA Toolkit. В большинстве случаев обновлять драйвер не нужно — достаточно установить требуемую версию CUDA и пакет cuda-compat, который обеспечивает совместимость с драйвером 535 (механизм CUDA Forward Compatibility).

Пример установки (Ubuntu)Пример установки (Ubuntu)

  1. Подключите репозиторий NVIDIA CUDA:

    sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu$(lsb_release -rs | sed -e 's/\.//')/x86_64/3bf863cc.pub
    sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
    sudo apt update
    
  2. Установите cuda-compat (пример для CUDA 12.5):

    sudo apt install -y cuda-compat-12-5
    echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.5/compat:$LD_LIBRARY_PATH' >> ~/.bashrc && source ~/.bashrc
    
  3. Проверьте текущую конфигурацию:

    nvidia-smi
    

Проблема с после обновления драйвера выше 535 и рекомендуемый обходПроблема с sudo rebootпосле обновления драйвера выше 535 и рекомендуемый обход

При переустановке драйвера и последующем sudo reboot драйвер не успевает корректно выгрузиться — поскольку в Yandex Cloud программный сброс GPU запрещен, карта остается в невалидном состоянии. Это не приводит к аппаратным проблемам, но ВМ будет работать некорректно. Вместо sudo reboot используйте команду yc compute instance restart.

Поэтому обновление драйвера выше версии 535 не рекомендуется. Если требуется установить драйвер выше 535 и выполнить перезагрузку пользовательской ВМ, можно применить следующий обходной сценарий:

  1. Установите драйвер.

    Скрипт для Ubuntu
    #!/bin/bash
    set -e
    
    # Фиксируем архитектуру
    arch="x86_64"
    
    # Определяем версию Ubuntu (20.04 -> ubuntu2004, 22.04 -> ubuntu2204 и т.д.)
    . /etc/os-release
    if [[ "$ID" != "ubuntu" ]]; then
      echo "Этот скрипт рассчитан только на Ubuntu!"
      exit 1
    fi
    distro="ubuntu${VERSION_ID//./}"
    
    echo "Используем репозиторий: $distro/$arch"
    
    # 1. Скачиваем пакет с ключами
    wget https://developer.download.nvidia.com/compute/cuda/repos/${distro}/${arch}/cuda-keyring_1.1-1_all.deb
    
    # 2. Устанавливаем ключи
    sudo dpkg -i cuda-keyring_1.1-1_all.deb || {
      echo "Не удалось установить cuda-keyring, выполняем альтернативные шаги..."
      
      # 2a. Загружаем gpg-ключ вручную
      wget https://developer.download.nvidia.com/compute/cuda/repos/${distro}/${arch}/cuda-archive-keyring.gpg
      
      # 2b. Кладём ключ в правильное место
      sudo mv cuda-archive-keyring.gpg /usr/share/keyrings/cuda-archive-keyring.gpg
      
      # 2c. Подключаем репозиторий CUDA вручную
      echo "deb [signed-by=/usr/share/keyrings/cuda-archive-keyring.gpg] \
      https://developer.download.nvidia.com/compute/cuda/repos/${distro}/${arch}/ /" \
      | sudo tee /etc/apt/sources.list.d/cuda-${distro}-${arch}.list
    }
    
    # 3. Обновляем список пакетов
    sudo apt update
    
    # 4. Устанавливаем драйверы NVIDIA
    sudo apt install -y nvidia-open
    
    # 5. Устанавливаем метапакет драйверов CUDA
    sudo apt install -y cuda-drivers
    
  2. Дальнейшие шаги необходимо выполнять до перезагрузки системы через sudo reboot.
    Создайте скрипт /usr/libexec/manage-nvidia:

    #!/bin/bash
    set -eu
    usage() {
             echo "usage: manage-nvidia (load|unload)"
             exit 1
    }
    [ $# -eq 1 ] || usage
    case "$1" in
             load)   modprobe nvidia ;;
             unload) modprobe -r nvidia_uvm nvidia_drm nvidia_modeset nvidia ;;
             *)      usage ;;
    esac
    
  3. Сделайте скрипт исполняемым:

    sudo chmod +x /usr/libexec/manage-nvidia
    
  4. Создайте systemd-unit /etc/systemd/system/manage-nvidia.service:

    [Unit]
    Description=Manage NVIDIA driver
    Before=nvidia-persistenced.service
    
    [Service]
    Type=oneshot
    ExecStart=/usr/libexec/manage-nvidia load
    RemainAfterExit=true
    ExecStop=/usr/libexec/manage-nvidia unload
    StandardOutput=journal
    
    [Install]
    WantedBy=multi-user.target
    RequiredBy=nvidia-persistenced.service
    
  5. Перезагрузите конфигурацию systemd, включите автоматический запуск сервиса manage-nvidia при загрузке системы и запустите сам сервис:

    sudo systemctl daemon-reload
    sudo systemctl enable --now manage-nvidia
    

    Ожидаемый вывод при успешном выполнении:

    Created symlink /etc/systemd/system/multi-user.target.wants/manage-nvidia.service → /etc/systemd/system/manage-nvidia.service.
    Created symlink /etc/systemd/system/nvidia-persistenced.service.requires/manage-nvidia.service → /etc/systemd/system/manage-nvidia.service.
    

    Проверьте зависимость от manage-nvidia.service у nvidia-persistenced.service:

    sudo systemctl list-dependencies nvidia-persistenced | grep manage-nvidia   
    

    Результат:

    ● ├─manage-nvidia.service
    

    Проверьте статус сервиса:

    sudo systemctl status manage-nvidia
    

После этого при sudo reboot systemd вызовет ExecStop для сервиса manage-nvidia, драйвер будет выгружен корректно, и перезагрузка пройдет без оставления GPU в невалидном состоянии.

Была ли статья полезна?

Предыдущая
Посмотреть метрики в Monitoring
Следующая
Yandex Container Solution
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»