Eigener Hypervisor
Lernziele
Nach diesem Kapitel kannst du:
- Entscheiden, ob dein PC das Lab tragen kann
- Die drei VMs mit Hyper-V anlegen
- Verschachtelte Virtualisierung in VMware, VirtualBox und Proxmox einschalten
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“Diese Ergänzung gehört nicht zum Standardweg des Kurses, der auf smartlearn läuft. Ein eigener Hypervisor lohnt sich, wenn du auch ausserhalb der Schule ohne Netzzugang zu smartlearn arbeiten willst. Dieser Weg geht auf eigenes Risiko. Deine Dozentin oder dein Dozent hilft vor allem beim Standardweg.
Dein PC braucht mindestens 32 GB RAM, besser 48 GB, dazu eine x86-CPU mit Virtualisierung und rund 200 GB freien Speicher. Ein Mac mit Apple-Prozessor eignet sich nicht, weil das Lab auf x86-Prozessoren getestet ist.
Unabhängig vom Hypervisor gelten dieselben Anforderungen wie auf smartlearn:
- Drei VMs mit den Grössen aus Kapitel 0.2
- Verschachtelte Virtualisierung auf beiden Knoten
- Ein gemeinsames Netz mit festen Adressen, aus dem die VMs ins Internet kommen
- Ubuntu Server 26.04 mit den Einstellungen aus Kapitel 0.2
Einen Client wie auf smartlearn brauchst du nicht, dein PC übernimmt seine Rolle. Du meldest dich von ihm aus direkt per SSH an den Servern an und öffnest die Weboberflächen in seinem Browser. Wo der Kurs vom Client spricht, ist dein PC gemeint.
Hyper-V
Abschnitt betitelt „Hyper-V“Unter Windows 11 Pro, Education und Enterprise ist Hyper-V der einfachste Weg. Aktiviere Hyper-V in den Windows-Features, starte den PC neu und lade das ISO von Ubuntu Server 26.04 LTS von ubuntu.com herunter. Wie du Hyper-V einschaltest, beschreibt die Anleitung zur Installation von Hyper-V von Microsoft. Das Skript lab/hyperv/new-lab.ps1 legt danach ein internes Netz mit NAT und die drei VMs an. Starte es in einer PowerShell als Administrator, mit deinem persönlichen Code und dem Pfad zum ISO.
powershell -ExecutionPolicy Bypass -File new-lab.ps1 -Code mmuster -Iso "$env:USERPROFILE\Downloads\ubuntu-26.04-live-server-amd64.iso"Das Skript gibt dem Front-end 16 GB RAM, den Knoten 8 GB und jeder VM vier virtuelle CPUs. Es schaltet die verschachtelte Virtualisierung ein, die festen Arbeitsspeicher verlangt. Für Secure Boot wählt es die Vorlage für fremde Systeme, sonst startet Ubuntu nicht. Was verschachtelte Virtualisierung unter Hyper-V voraussetzt, nennt die Anleitung zur verschachtelten Virtualisierung von Microsoft.
# Nested virtualisation needs static memory and the virtualisation extensions of the CPU Set-VMMemory -VMName $vm.Name -DynamicMemoryEnabled $false Set-VMProcessor -VMName $vm.Name -Count 4 -ExposeVirtualizationExtensions $true # Ubuntu starts with Secure Boot only with the template for third-party systems Set-VMFirmware -VMName $vm.Name -SecureBootTemplate MicrosoftUEFICertificateAuthorityDas Skript legt das Labnetz 192.168.210.0/24 mit NAT an, dein PC selbst ist das Gateway 192.168.210.1. Am Ende zeigt es die Adressen aus deinem Code, dieselben wie der Generator in Kapitel 0.3, die du bei der Installation von Ubuntu einträgst. Auf .1 antwortet unter Hyper-V kein DNS, trag deshalb den DNS ein, den das Skript nennt. Windows 11 Home enthält kein Hyper-V.
In VMware Workstation schaltest du die verschachtelte Virtualisierung für beide Knoten in den Einstellungen der VM ein, unter «Processors» mit «Virtualize Intel VT-x/EPT or AMD-V/RVI». Die Option erklärt die Dokumentation von VMware Workstation Pro. Unter ESXi heisst die Option «Expose hardware assisted virtualization to the guest OS».
Unter Windows funktioniert die Option nur, wenn der Hypervisor von Windows nicht läuft. Meldet VMware beim Start «Virtualized Intel VT-x/EPT is not supported on this platform», nutzen die Speicherintegrität, WSL 2 oder Docker Desktop diesen Hypervisor. In diesem Fall ist Hyper-V oder smartlearn der bessere Weg.
VirtualBox
Abschnitt betitelt „VirtualBox“In VirtualBox heisst die Option «Enable Nested VT-x/AMD-V» und steht unter «System» und «Processor». Auf der Kommandozeile schaltest du sie bei ausgeschalteter VM mit VBoxManage ein. Beide Wege beschreibt das Handbuch von VirtualBox. Für VirtualBox unter Windows gilt dieselbe Einschränkung wie für VMware.
VBoxManage modifyvm "mmuster-node1" --nested-hw-virt onProxmox
Abschnitt betitelt „Proxmox“In Proxmox VE setzt du bei beiden Knoten unter «Hardware» und «Processors» den Typ auf host. Damit sieht die VM die CPU mit allen Funktionen, auch der Virtualisierung. Ob der Proxmox-Host verschachtelte Virtualisierung erlaubt, zeigt auf dem Host die folgende Datei. Sie muss Y oder 1 enthalten, bei AMD-Prozessoren heisst der Pfad kvm_amd. Die Einstellungen auf Host und VM beschreibt die Seite zur verschachtelten Virtualisierung im Wiki von Proxmox VE.
cat /sys/module/kvm_intel/parameters/nestedAufgabe Lab
Wenn du einen eigenen Hypervisor nutzt, lege die drei VMs an, installiere Ubuntu nach Kapitel 0.2 und prüfe auf beiden Knoten die verschachtelte Virtualisierung.
Lösung
grep -cE 'vmx|svm' /proc/cpuinfo gibt auf beiden Knoten eine Zahl grösser als null aus. Ist sie null, ist die Option im Hypervisor aus, oder unter Windows läuft der Hypervisor von Windows im Hintergrund.
Texte und Abbildungen stehen unter CC BY-SA 4.0 und der Code unter der MIT-Lizenz. Die Quellen liegen auf GitHub.