
Wir haben einen KVM-Hypervisor ( L0
, AMD, Kernel: Linux level0kvmhypervisor 4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) x86_64 GNU/Linux
), der eine virtuelle Maschine ausführt, die ich als verschachtelten VirtualBox-Hypervisor ( ) verwenden möchte L1
. Ich versuche also, VirtualBox innerhalb von KVM auszuführen. Einige Details zum KVM-Hypervisor ( L0
):
# cat /proc/cpuinfo
processor : 0 ... 23
vendor_id : AuthenticAMD
cpu family : 23
model : 113
model name : AMD Ryzen 9 3900 12-Core Processor
stepping : 0
microcode : 0x8701021
cpu MHz : 2193.155
cache size : 512 KB
physical id : 0
siblings : 24
core id : 0
cpu cores : 12
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 16
wp : yes
flags : ... svm ...
bugs : sysret_ss_attrs spectre_v1 spectre_v2 spec_store_bypass
bogomips : 6188.58
TLB size : 3072 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 43 bits physical, 48 bits virtual
power management: ts ttp tm hwpstate cpb eff_freq_ro [13] [14]
# dpkg --list | egrep -- "(kvm|libvirt)" | sed 's/amd64.*//g'
ii libsys-virt-perl 5.0.0-1
ii libvirt-clients 5.0.0-4+deb10u1
ii libvirt-daemon 5.0.0-4+deb10u1
ii libvirt-daemon-system 5.0.0-4+deb10u1
ii libvirt-glib-1.0-0:
ii libvirt0:
ii python3-libvirt 5.0.0-1
ii qemu-kvm 1:3.1+dfsg-8+deb10u8
Die verschachtelte Option ist ebenfalls aktiviert:
# cat /sys/module/kvm_amd/parameters/nested
1
Innerhalb der KVM-virtuellen Maschine, auf der VirtualBox installiert ist (L1): Ich versuche, eine von Vagrant erstellte VM zu starten und erhalte die folgende Fehlermeldung:
...
==> default: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "357a07b4-7d81-4336-9ea6-0dbf0ab49d18", "--type", "headless"]
Stderr: VBoxManage: error: AMD-V is not available (VERR_SVM_NO_SVM)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole
Dies sind die KVM XML-CPU-Einstellungen für den VirtualBox- L1
Hypervisor:
<vcpu placement='static'>1</vcpu>
<cpu mode='host-model' check='partial'>
<model fallback='allow'/>
</cpu>
Ich glaube, hier muss etwas geändert werden, aber ich bin mir nicht ganz sicher, was. Ich kann keine Ressourcen zu diesem Thema finden, deshalb frage ich hier. Wie kann ich den VirtualBox-Hypervisor ( L1
) in einer virtuellen KVM-Maschine zum Laufen bringen, um eine VM zu starten?
Für jede Hilfe wäre ich sehr dankbar.
Antwort1
<cpu mode='host-passthrough'>
<feature policy='require' name='svm'/>
</cpu>
Verwenden Sie diese Einstellungen für eine AMD-CPU in der Einstellungsdatei der virtuellen Maschine.