Включение nested виртуализации в KVM
Вложенная (nested) виртуализация позволяется запускать виртуальные сервера внутри существующего виртуального сервера, используя аппаратное ускорение хоста.
Данный метод лучше всего использовать для тестового стенда или отладки. Не рекомендуется использовать для продакшн.
Проверяем поддержку nested виртуализации
Для процессоров Intel проверяем файл /sys/module/kvm_intel/parameters/nested
, для AMD - /sys/module/kvm_amd/parameters/nested
.
Если в качестве содержимого наблюдаем 1
или Y
, значит процессор поддерживает nested виртуализацию, в противном случае - 0
и N
говорит о том, что nested виртуализация не поддерживается.
Активируем nested виртуализацию для Intel-процессоров
Сперва необходимо отключить все работающие виртуальные сервера и выгрузить модуль kvm_probe
.
1 | modprobe -r kvm_intel |
Активируем опцию:
1 | modprobe kvm_intel nested=1 |
Nested виртуализация активирована до следующей перезагрузки сервера.
Для перманентного применения необходимо в конфигурационный файл /etc/modprobe.d/kvm.conf
добавить строчку:
1 | options kvm_intel nested=1 |
Активируем nested виртуализацию для AMD-процессоров
Сперва необходимо отключить все работающие виртуальные сервера и выгрузить модуль kvm_amd
.
1 | modprobe -r kvm_amd |
Активируем опцию:
1 | modprobe kvm_amd nested=1 |
Nested виртуализация активирована до следующей перезагрузки сервера.
Для перманентного применения необходимо в конфигурационный файл /etc/modprobe.d/kvm.conf
добавить строчку:
1 | options kvm_amd nested=1 |
Проверяем активацию nested виртуализации.
1 | # virt-host-validate |