Настройка режима эмуляции ЦП для вычислительного кластера#
Режим эмуляции ЦП определяет, какая модель будет назначена и какие дополнительные функции будут доступны виртуальному ЦП.
Режим эмуляции ЦП, заданный на уровне вычислительного кластера, используется по умолчанию для создаваемых ВМ. При необходимости его можно переопределить на уровне ВМ.
Если серверы в вычислительном кластере имеют разные модели ЦП, может не работать динамическая миграция ВМ либо могут неправильно работать приложения внутри ВМ, зависящие от конкретных моделей ЦП. Во избежание этого можно определить, какая модель ЦП обеспечивает совместимость по всем серверам в вычислительном кластере, и вручную установить ее для кластера по умолчанию. Однако в этом случае будет обеспечиваться меньший уровень производительности и безопасности для ВМ.
Ограничения
Чтобы изменение режима эмуляции ЦП вступило в силу, существующие ВМ необходимо полностью остановить и запустить заново.
Важно
Изменение режима эмуляции ЦП не вступает в силу после обычного перезапуска ВМ.
Предварительные условия
Должен быть создан вычислительный кластер, как описано в разделе Создание вычислительного кластера.
Настройка режима эмуляции ЦП для вычислительного кластера
Выполните следующие действия:
На экране Настройки → Системные настройки перейдите на вкладку Эмуляция процессора ВМ.
Выберите режим эмуляции ЦП виртуальных машин. Режим эмуляции ЦП определяет, какая модель будет назначена и какие дополнительные функции будут доступны виртуальному ЦП.
Host-model (по умолчанию) — модель и набор дополнительных функций виртуального ЦП подбираются таким образом, чтобы они наиболее точно соответствовали модели и дополнительным функциям ЦП вычислительного сервера, на котором размещена виртуальная машина (полное соответствие не гарантируется). Этот режим обеспечивает меньший уровень производительности и безопасности, чем режим host-passthrough, но предоставляет большую степень работоспособности горячих миграций виртуальных машин в случае, когда на вычислительных серверах используются незначительно отличающиеся модели ЦП.
Host-passthrough — виртуальной машине предоставляется виртуальный ЦП такой же модели и с такими же дополнительными функциями, как у ЦП вычислительного сервера, на котором размещена виртуальная машина. Этот режим обеспечивает наибольший уровень производительности и безопасности, но не гарантирует работоспособность горячих миграций виртуальных машин при использовании разных моделей ЦП на вычислительных серверах.
Custom — виртуальной машине предоставляется виртуальный ЦП указанной модели с указанными дополнительными функциями. Модель ЦП выбирается из списка моделей ЦП, совместимых со всеми вычислительными серверами (аналогично для дополнительных функций). Этот режим обеспечивает наименьший уровень производительности и безопасности, но гарантирует работоспособность горячих миграций виртуальных машин, даже если на вычислительных серверах используются разные модели ЦП.
Модели ЦП в списке отсортированы по новизне в порядке убывания. По умолчанию все дополнительные функции выбранной модели ЦП отключены.
Некоторые модели ЦП представлены в двух вариантах (например, Skylake-Server и Skylake-Server-IBRS). Наличие строки "IBRS" в названии модели ЦП означает, что включена защита от аппаратных уязвимостей Spectre и Meltdown. Хотя наличие этой защиты снижает производительность ЦП, в целях безопасности рекомендуется использовать модели ЦП с включенной защитой. Для доверенных приложений возможно использование моделей ЦП с отключенной защитой.

Включите или отключите поддержку вложенной виртуализации. Её следует включить, если необходима возможность создавать виртуальные машины внутри виртуальных машин. Для модели ЦП qemu64 вложенная виртуализация не поддерживается.
Нажмите Сохранить.
Используйте следующую команду:
vinfra service compute cluster set --cpu-mode <cpu-mode>
[--cpu-model <cpu-model>] [--cpu-features <cpu-features>]
[--nested-virtualization <nested_virtualization>]
--cpu-mode <cpu-mode>Режим эмуляции ЦП виртуальных машин. Определяет, какая модель будет назначена и какие дополнительные функции будут доступны виртуальному ЦП.
host-model(по умолчанию) — модель и набор дополнительных функций виртуального ЦП подбираются таким образом, чтобы они наиболее точно соответствовали модели и дополнительным функциям ЦП вычислительного сервера, на котором размещена виртуальная машина (полное соответствие не гарантируется). Этот режим обеспечивает меньший уровень производительности и безопасности, чем режим host-passthrough, но предоставляет большую степень работоспособности горячих миграций виртуальных машин в случае, когда на вычислительных серверах используются незначительно отличающиеся модели ЦП.host-passthrough— виртуальной машине предоставляется виртуальный ЦП такой же модели и с такими же дополнительными функциями, как у ЦП вычислительного сервера, на котором размещена виртуальная машина. Этот режим обеспечивает наибольший уровень производительности и безопасности, но не гарантирует работоспособность горячих миграций виртуальных машин при использовании разных моделей ЦП на вычислительных серверах.custom— виртуальной машине предоставляется виртуальный ЦП указанной модели с указанными дополнительными функциями. Модель ЦП выбирается из списка моделей ЦП, совместимых со всеми вычислительными серверами (аналогично для дополнительных функций). Этот режим обеспечивает наименьший уровень производительности и безопасности, но гарантирует работоспособность горячих миграций виртуальных машин, даже если на вычислительных серверах используются разные модели ЦП.
--cpu-model <cpu-model>Модель ЦП. Параметр можно указать для режима эмуляции ЦП
custom. Список моделей ЦП, совместимых со всеми вычислительными серверами, можно получить с помощью командыvinfra service compute baseline-cpu. По умолчанию используется наиболее новая модель ЦП, совместимая со всеми вычислительными серверами.--cpu-features <cpu-features>Список дополнительных функций ЦП через запятую. Параметр можно указать для режима эмуляции ЦП
custom, чтобы включить дополнительные функции для выбранной модели ЦП (по умолчанию все дополнительные функции отключены). Список дополнительных функций каждой модели ЦП можно получить с помощью командыvinfra service compute additional-cpu-features.--nested-virtualization <nested_virtualization>Включение или отключение поддержки вложенной виртуализации (
true— включить,false— отключить). По умолчанию поддержка отключена.
Например, чтобы задать режим эмуляции ЦП custom, а также указать модель ЦП Skylake-Server и включить дополнительные функции ЦП pdpe1gb и stibp, выполните:
# vinfra service compute cluster set --cpu-mode custom --cpu-model Skylake-Server --cpu-features pdpe1gb,stibp