Размещение ВМ с vGPU#
Проброс графического процессора (GPU) в процесс виртуальной машины на узле виртуализации с видеокартой, необходим для запуска виртуальных машин, которые подходят для выполнения графически интенсивных задач и для запуска программного обеспечения, которое не может работать без GPU, например, CAD.
Предупреждение
В ПВ не поддерживается:
горячая миграция для ВМ с vGPU;
горячая перепланировка размещения (rescheduling) для ВМ с vGPU;
подключение двух и более разных vGPU (разные модели видеокарт) к одной ВМ;
подключение разных профилей (например Q и B) и и типов профилей (например B1 и B2) к одной ВМ от одной или нескольких видеокарт одной модели; автобалансировка для ВМ с vGPU.
Профили типа A и C тестирования не проходили и не имеют официальной поддержки.
Поддерживаются только видеокарты с встроенным функционалом vGPU (Time-Slice) от NVIDIA, vGPU MIG от NVIDIA не поддерживается.
Требуется поддержка от аппаратного обеспечения функций SR-IOV и IOMMU.
Требуется использовать ядро linux-5.15-generic
.
Поддерживаются типы профилей vGPU-Q, B.
Использование драйверов NVIDIA#
Для корректной работы функций, требующих vGPU на базе программно-аппаратных решений ускорения графических вычислений в средах виртуализации (далее видеокарты с поддержкой vGPU) NVIDIA необходимо, чтобы на серверы виртуализации ПК СВ были установлены драйверы NVIDIA согласно модели видеокарты с поддержкой vGPU.
Примечание
Данные драйверы не входят в состав сертифицированных на соответствие требованиям по безопасности информации ПВ и ОС СН.
После установки драйверов и настройки серверов виртуализации изменяются следующие файлы ПВ контрольные суммы которых указаны в файле gostsums.txt состава установочного диска и его обновления:
/usr/bin/sprof
;/usr/bin/rpcgen
;/usr/bin/gencat
;/usr/lib/x86_64-linux-gnu/libmcheck.a
.
Изменения контрольных сумм не являются нарушением сертифицированных характеристик ПВ.
Для проведения контроля целостности данные файлы могут быть исключены из проверки или установлены на контроль с обновленными контрольными суммами.
Назначение файлов, подлежащих изменению:
/usr/bin/sprof
— отображает сводку профилирования для общего объекта (общей библиотеки), указанного в качестве первого аргумента командной строки. Сводка профилирования создается с использованием ранее сгенерированных данных профилирования во втором (необязательном) аргументе командной строки;/usr/bin/rpcgen
— инструмент, который генерирует код C для реализации протокола RPC. Входные данные дляrpcgen
— это язык, похожий на C, известный как RPC Language (язык удаленного вызова процедур);/usr/bin/gencat
— файл каталога сообщений (обычно*.cat
), который командаgencat
создает из исходных файлов текстов сообщений (обычно*.msg
). Командаgencat
объединяет исходные файлы текстов сообщений, указанные параметромSourceFile
, в форматированный каталог сообщений, указанный параметромCatalogFile
;/usr/lib/x86_64-linux-gnu/libmcheck.a
— библиотека функцииmcheck
, которая устанавливает набор отладочных хуков для семейства функций выделения памятиmalloc
. Эти хуки вызывают определенные проверки согласованности состояния общей массы запросов в памяти. Проверки могут обнаруживать ошибки приложения, такие как освобождение блока памяти более одного раза или повреждение структур данных учета, которые непосредственно предшествуют блоку выделенной памяти.
Подготовка и настройка узла виртуализации#
Для подготовки и настройки узла виртуализации необходимо запустить скрипт предварительной настройки узла виртуализации для использования vGPU brest_vgpu_configure
:
/usr/sbin/brest_vgpu_configure
Предупреждение
Скрипт предварительной настройки узла виртуализации для использования vGPU не устанавливает драйвера видеокарты NVIDIA.
Присоединение графического процессора к виртуальной машине#
Примечание
Примечания:
После подключения графического процессора необходимо подключиться к ВМ для установки драйвера выбранной видеокарты и активации ее лицензии. Для установки драйвера видеокарты и активации лицензии необходимо обратиться к документации NVIDIA и разработчика ОС, установленной на ВМ.
При большом количестве ВМ можно воспользоваться сторонними средствами автоматизации для установки драйверов и активации лицензий.
Присоединение графического процессора в веб-интерфейсе#
Настройка шаблона ВМ#
Для того, чтобы добавить vGPU в шаблон виртуальной машины, необходимо:
В веб-интерфейсе ПВ в меню слева выбрать Шаблоны — ВМ.
На открывшейся странице Шаблоны ВМ нажать кнопку + и выбрать пункт Создать.
На открывшейся странице Создать шаблон ВМ перейти во вкладку Ввод/Вывод:

На вкладке Ввод/Вывод перейти к разделу VGPU Devices и нажать на кнопку +.
Заполнить появившиеся поля:
VGPU name — название видеокарты (значение выбирается из выпадающего списка);
VGPU profile — название готового профиля (значение выбирается из выпадающего списка);
Amount — количество подключаемых виртуальных функций (указывается целочисленное значение):
![]()
На странице Создать шаблон ВМ после заполнения остальных необходимых параметров нажать на кнопку Создать.
После этого на открывшейся странице Шаблоны ВМ отобразится созданный шаблон.
На странице Шаблоны ВМ выбрать созданный шаблон и на открывшейся странице Шаблон ВМ нажать на кнопку Создать экземпляр.
На открывшейся странице Создать ВМ:
в поле Имя ВМ задать наименование ВМ;
для параметра Служебная ВМ установить значение Вкл;
нажать на кнопку Создать экземпляр.
Настройка конфигурации ВМ#
Для того, чтобы добавить vGPU в виртуальной машине, необходимо изменить конфигурацию виртуальной машины, для этого необходимо:
В веб-интерфейсе ПВ в меню слева выбрать Экземпляры ВМ — ВМ.
На странице Экземпляры ВМ — ВМ выбрать созданную ВМ.
На странице ВМ перейти на вкладку Конфигурация и нажать на кнопку Изменить конфигурацию:

В открывшемся окне Редактирование конфигурации ВМ перейти на вкладку Ввод/Вывод:

В разделе VGPU Devices, нажать на кнопку +, а затем заполнить следующие параметры:
VGPU name — название видеокарты (значение выбирается из выпадающего списка);
VGPU profile — название готового профиля (значение выбирается из выпадающего списка);
Amount — количество подключаемых виртуальных функций (указывается целочисленное значение):
![]()
В окне Редактирование конфигурации ВМ нажать на кнопку Изменить.
Присоединение графического процессора в интерфейсе командной строки#
Для того, чтобы добавить vGPU к виртуальной машине, необходимо на сервере управления (на текущем лидере RAFT), выполнить следующую команду:
onevm attach-vgpu <VM_ID> --vgpu_pool <VGPU_POOL_ID> --vgpu_profile <VGPU_PROFILE>
где:
<VM_ID>
— идентификационный номер ВМ;<VGPU_POOL_ID>
— идентификационный номер присоединяемой видеокарты;<VGPU_PROFILE>
— название готового профиля;<VFS>
— количество подключаемых виртуальных функций.
Отсоединение графического процессора от ВМ#
Удаление графического процессора в веб-интерфейсе#
Настройка шаблона ВМ#
Для того, чтобы удалить vGPU из шаблона виртуальной машины, необходимо:
В веб-интерфейсе ПВ в меню слева выбрать Шаблоны — ВМ.
На открывшейся страницы Шаблоны ВМ выбрать нужный шаблон из списка.
На открывшейся странице Шаблон ВМ нажать на кнопку Обновить.
На открывшейся странице Изменить шаблон ВМ открыть вкладку Ввод/Вывод.
На открытой вкладке Ввод/Вывод перейти к разделу VGPU Devices и нажать на кнопку х справа от параметров удаляемого GPU:

На странице Изменить шаблон ВМ после заполнения остальных необходимых параметров нажать на кнопку Обновить.
Настройка конфигурации ВМ#
Для того, чтобы удалить vGPU в виртуальной машине, необходимо изменить конфигурацию виртуальной машины, для этого необходимо:
В веб-интерфейсе ПВ в меню слева выбрать Экземпляры ВМ — ВМ.
На странице Экземпляры ВМ — ВМ выбрать нужную ВМ.
На странице ВМ перейти на вкладку Конфигурация и нажать на кнопку Изменить конфигурацию:

В открывшемся окне Редактирование конфигурации ВМ перейти на вкладку Ввод/Вывод.

На открытой вкладке Ввод/Вывод перейти к разделу VGPU Devices и нажать на кнопку х справа от параметров удаляемого GPU:

В окне Редактирование конфигурации ВМ нажать на кнопку Изменить.
Удаление графического процессора в интерфейсе командной строки#
Для того, чтобы удалить vGPU из виртуальной машины, необходимо на сервере управления (на текущем лидере RAFT), выполнить следующую команду:
onevm detach-vgpu <VM_ID> <VGPU_POOL_ID>
где:
<VM_ID>
— идентификационный номер ВМ;<VGPU_POOL_ID>
— идентификационный номер присоединяемой видеокарты.