Heim >System-Tutorial >LINUX >Aktivieren Sie die verschachtelte Virtualisierung auf KVM auf Centos7

Aktivieren Sie die verschachtelte Virtualisierung auf KVM auf Centos7

WBOY
WBOYnach vorne
2024-03-30 17:21:36435Durchsuche

Verschachtelte Virtualisierung bedeutet die Konfiguration einer Virtualisierungsumgebung innerhalb einer virtuellen Maschine. Mit anderen Worten können wir sagen, dass verschachtelte Virtualisierung eine Funktion des HypervisorsHypervisors 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.

Installieren Sie den KVM-Hypervisor unter CentOS 7.x und RHEL 7.x

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
Testen der verschachtelten Virtualisierung

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.

在 Centos7 的KVM上启用嵌套虚拟化

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

在 Centos7 的KVM上启用嵌套虚拟化

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
………………………………………………

在 Centos7 的KVM上启用嵌套虚拟化

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen