Como habilitar virtualização em KVM

Equipe de Documentação Fedora Versão F36 onwards Last review: 2023-02-21
Nested virtualization allows you to run a virtual machine (VM) inside another VM while still using hardware acceleration from the host.

Verificando se a virtualização aninhada é suportada

For Intel processors, check the /sys/module/kvm_intel/parameters/nested file. For AMD processors, check the /sys/module/kvm_amd/parameters/nested file. If you see 1 or Y, nested virtualization is supported; if you see 0 or N, nested virtualization is not supported.

For example:

$ cat /sys/module/kvm_intel/parameters/nested
Y

Habilitar virtualização aninhada

Para habilitar a virtualização aninhada em processadores Intel:

  1. Shut down all running VMs and unload the kvm_probe module:

    $ sudo modprobe -r kvm_intel
  2. Activate the nesting feature:

    $ sudo modprobe kvm_intel nested=1
  3. Nested virtualization is enabled until the host is rebooted. To enable it permanently, add the following line to the /etc/modprobe.d/kvm.conf file:

    options kvm_intel nested=1

To enable nested virtualization for AMD processors:

  1. Shut down all running VMs and unload the kvm_amd module:

    $ sudo modprobe -r kvm_amd
  2. Activate the nesting feature:

    $ sudo modprobe kvm_amd nested=1
  3. Nested virtualization is enabled until the host is rebooted. To enable it permanently, add the following line to the /etc/modprobe.d/kvm.conf file:

    options kvm_amd nested=1

Configurando virtualização aninhada no virt-manager

Configure sua máquina virtual para usar virtualização aninhada:

  1. Open virt-manager, double-click the VM in which you wish to enable nested virtualization, and click the Show virtual hardware details icon.

  2. Click CPUs in the side menu. In the Configuration section, there are two options - either type host-passthrough in the Model: field, or select the Copy host CPU configuration check box (that fills the host-model value in the Model field).

    Using host-passthrough is not recommended for general usage. It should only be used for nested virtualization purposes.
  3. Click Apply.

Testando virtualização aninhada

  1. Start the virtual machine.

  2. On the virtual machine, run:

    $ sudo dnf group install virtualization
  3. Verify that the virtual machine has virtualization correctly set up:

    $ sudo virt-host-validate
      QEMU: Checking for hardware virtualization                                 : PASS
      QEMU: Checking if device /dev/kvm exists                                   : PASS
      QEMU: Checking if device /dev/kvm is accessible                            : PASS
      QEMU: Checking if device /dev/vhost-net exists                             : PASS
      QEMU: Checking if device /dev/net/tun exists                               : PASS
      ...