Вложенная виртуализация
Вложенная виртуализация (nested virtualization) — это когда вы запускаете гипервизор, например, SpaceVM или другие, внутри виртуальной машины (которая, конечно, работает на другом гипервизоре), а не на реальном оборудовании. Другими словами, у вас есть гипервизор хоста, размещающий гостевой гипервизор (как виртуальную машину), который может размещать свои собственные виртуальные машины.
Это, очевидно, добавляет накладные расходы во вложенную среду, но в некоторых случаях это:
-
может позволить вам протестировать (или узнать), как управлять гипервизорами перед фактической реализацией, или протестировать какую-то опасную/сложную процедуру с участием гипервизоров, прежде чем делать это на физическом оборудовании;
-
позволит компаниям развернуть свою собственную среду виртуализации, например, в публичных сервисах (облаках).
Требования
Чтобы обеспечить максимально возможную производительность, близкую к собственной, любой гипервизор должен иметь доступ к некоторым (реальным) аппаратным функциям, которые обычно полезны для виртуализации, так называемым "расширениям виртуализации с аппаратной поддержкой" (см. http://en.wikipedia.org/wiki/Hardware-assisted_virtualization).
При вложенной виртуализации гостевой гипервизор также должен иметь доступ к расширениям виртуализации с аппаратной поддержкой, и это означает, что гипервизор хоста должен предоставлять эти расширения своим виртуальным машинам. В принципе, он работает и без этих расширений, но с низкой производительностью, и это не вариант для продуктивной среды (но, возможно, достаточный для некоторых тестовых случаев). Раскрытие этих расширений требуется в случае ядра процессоров Intel 3 или выше.
Вам нужно будет выделить достаточно времени процессора, оперативной памяти и дискового пространства для гостевых гипервизоров.
Управление вложенной виртуализацией
Производится в CLI командами system nested [get|enable|disable]
.
Unknown processor type
Если в выводе команды system nested get
вы видите Unknown processor type,
посмотрите вывод команды dmidecode -t 4
, и с этой информацией обратитесь в
поддержку. Вложенная виртуализация может быть включена, если во всех процессорах
узла в поле Manufacturer есть слова Intel или AMD или Advanced Micro Devices.
Установка гипервизоров на SpaceVM
-
Проверьте, что вложенная виртуализация включена на сервере согласно предыдущему пункту.
-
Создайте ВМ с процессором типа host-model или host-passthrough.
Установка SpaceVM на гипервизор
-
Проверьте, что вложенная виртуализация включена на гипервизоре.
-
Создайте ВМ с процессором с поддержкой проброса инструкций виртуализации процессора.