Verschachtelte Virtualisierung bedeutet die Konfiguration einer Virtualisierungsumgebung innerhalb einer virtuellen Maschine. Mit anderen Worten können wir sagen, dass verschachtelte Virtualisierung eine Funktion des Hypervisors ist, die es uns ermöglicht, Virtualisierung innerhalb eines virtuellen Servers durch die Hardwarebeschleunigung der Hypervisor(Host)-Maschine zu installieren und auszuführen.
In diesem Artikel besprechen wir, wie man verschachtelte Virtualisierung auf KVM unter CentOS 7 / RHEL 7 aktiviert. Ich gehe davon aus, dass Sie den KVM-Hypervisor bereits konfiguriert haben. Wenn Sie mit der Installation und Konfiguration des KVM-Hypervisors nicht vertraut sind, lesen Sie bitte den folgenden Artikel.
Gehen wir zum Hypervisor und überprüfen Sie, ob auf Ihrem KVM-Host die verschachtelte Virtualisierung aktiviert ist.
Intel-basierte Prozessoren führen den folgenden Befehl aus:
[root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested N
Für AMD-basierte Prozessoren führen Sie den folgenden Befehl aus:
[root@kvm-hypervisor ~]# cat /sys/module/kvm_amd/parameters/nested N
Die obige Befehlsausgabe N zeigt an, dass die verschachtelte Virtualisierung deaktiviert ist. Wenn die Ausgabe, die wir erhalten, Y ist, bedeutet dies, dass die verschachtelte Virtualisierung auf Ihrem Host aktiviert ist.
Um nun die verschachtelte Virtualisierung zu aktivieren, erstellen Sie eine Datei mit dem Namen /etc/modprobe.d/kvm-nested.conf mit folgendem Inhalt:
[root@kvm-hypervisor ~]# vi /etc/modprobe.d/kvm-nested.conf
options kvm-intel nested=1 options kvm-intel enable_shadow_vmcs=1 options kvm-intel enable_apicv=1 options kvm-intel ept=1
Speichern und beenden Sie die Datei.
Entfernen Sie nun das kvm_intel-Modul und fügen Sie dasselbe über den modprobe-Befehl hinzu. Stellen Sie vor dem Entfernen des Moduls sicher, dass die virtuelle Maschine heruntergefahren ist, andernfalls erhalten wir Fehlermeldungen wie „modprobe: FATAL: Module kvm_intel is in use“.
[root@kvm-hypervisor ~]# modprobe -r kvm_intel [root@kvm-hypervisor ~]# modprobe -a kvm_intel
Überprüfen Sie nun, ob die verschachtelte Virtualisierungsfunktion aktiviert ist.
[root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested Y
Angenommen, wir haben eine virtuelle Maschine mit dem Namen „Director“ auf dem KVM-Hypervisor, für die die verschachtelte Virtualisierung aktiviert ist. Stellen Sie vor dem Testen sicher, dass der CPU-Modus „Host-Modell“ oder „Host-Passthrough“ ist. Verwenden Sie Virt-Manager oder den Befehl virtsh, um den CPU-Modus der virtuellen Maschine zu überprüfen.
cpu_mode_vm_kvm
Melden Sie sich nun bei der virtuellen Director-Maschine an und führen Sie die Befehle lscpu und lsmod aus.
[root@kvm-hypervisor ~]# ssh 192.168.126.1 -l root root@192.168.126.1's password: Last login: Sun Dec 10 07:05:59 2017 from 192.168.126.254 [root@director ~]# lsmod | grep kvm kvm_intel 170200 0 kvm 566604 1 kvm_intel irqbypass 13503 1 kvm
[root@director ~]# lscpu
lscpu_command_rhel7_centos7
Versuchen wir, eine virtuelle Maschine in der virtuellen Manager-GUI der Director Virtual Machine oder im Befehl virt-install zu erstellen. In meinem Fall habe ich den Befehl virt-install verwendet.
[root@director ~]# virt-install -n Nested-VM --description "Test Nested VM" --os-type=Linux --os-variant=rhel7 --ram=2048 --vcpus=2 --disk path=/var/lib/libvirt/images/nestedvm.img,bus=virtio,size=10 --graphics none --location /var/lib/libvirt/images/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0 Starting install... Retrieving file .treeinfo... | 1.1 kB 00:00:00 Retrieving file vmlinuz... | 4.9 MB 00:00:00 Retrieving file initrd.img... | 37 MB 00:00:00 Allocating 'nestedvm.img' | 10 GB 00:00:00 Connected to domain Nested-VM Escape character is ^] [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015 ………………………………………………
cli-installer-virt-install-command-kvm
Dies bestätigt, dass die verschachtelte Virtualisierung erfolgreich aktiviert wurde, da wir in der Lage sind, virtuelle Maschinen innerhalb virtueller Maschinen zu erstellen.
Das obige ist der detaillierte Inhalt vonAktivieren Sie die verschachtelte Virtualisierung auf KVM auf Centos7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!