Heute gibt es mal einen (für diesen Blog) recht außergewöhnlichen Artikel: Es geht um Windows 11!
Auch wenn ich selbst kaum noch Windows nutze, ist man trotzdem von Zeit zu Zeit darauf angewiesen, weil bestimmte Software einfach nur für Windows verfügbar ist. Wer nun nicht Windows auf einem separaten Rechner installieren oder ein Dual-Boot-System einrichten möchte, kann dazu einfach eine virtuelle Maschine mit Windows 11 einrichten.
Hier kommt nun wieder Proxmox VE ins Spiel: In diesem Blog gab es ja bereits ein paar Artikel zu dieser Virtualisierungs-Software. Diese ist nun seit der Version 7.1 auch mit Windows 11 als Gast-Betriebssystem kompatibel.
Im folgenden wird daher Schritt für Schritt gezeigt, wie man eine virtuelle Maschine für Windows 11 vorbereitet und das Betriebssystem anschließend installieren und optimal in der virtuellen Umgebung einrichten kann.
Die gezeigten Schritte funktionieren übrigens auch für ältere Versionen von Windows oder für die Server-Variante des Betriebssystems. Trotzdem ist Windows 11 durch die hohen Systemanforderungen von Microsoft etwas speziell, daher zielt dieser Artikel explizit auf Windows 11 ab.
Inhalt
Vorbereitung: Herunterladen der ISO-Images für Windows 11 und Treiber
Für die Installation von Windows 11 als virtuelle Maschine wird zunächst wieder ein ISO-Image benötigt. Dies kann man direkt bei Microsoft unter diesem Link herunterladen. Nach der Wahl der Edition und der Sprache wird hier ein Download-Link angezeigt. Dieser kann dann direkt in Proxmox genutzt werden, um das ISO-Image auf einen dafür geeigneten Storage herunter zu laden.
Das Image ist dabei über 5 GB groß, der Download dauert dann u.U. etwas länger.
Auf die gleiche Art und Weise laden wir nun noch ein weiteres ISO-Image herunter: VirtIO Drivers (Direktlink)
Dieses Image enthält alle notwendigen Treiber, die benötigt werden, damit Windows direkten (paravirtualisierten) Zugriff auf die Hardware des VM-Hosts erhalten kann. Darauf gehen wir aber später noch detailliert ein.
Virtuelle Maschine für Windows 11 erstellen
Bei der Erstellung der virtuellen Maschine für Windows 11 sind einige Besonderheiten zu beachten. Diese sind nicht zuletzt darin begründet, weil Microsoft für Windows 11 recht strikte Vorgaben für die Installation vorgesehen hat (z.B. wird ein TPM 2.0 Modul benötigt).
Den Assistenten zum Erstellen einer neuen virtuellen Maschine starten wir wieder über den Button Erstelle VM oben rechts.
Im ersten Schritt des Assistenten werden die allgemeinen Einstellungen der VM festgelegt.
Hinweis: Hier sollten wieder die erweiterten Einstellungen als erstes aktiviert werden, damit sämtliche Optionen sichtbar werden.
- Knoten: Der Knoten im Rechenzentrum, auf der die Maschine laufen soll. Da hier nur eine Proxmox-Instanz läuft, kann man hier auch nichts weiteres auswählen.
- VM ID: Die eindeutige ID der virtuellen Maschine.
- Name: Der Name der VM.
- Beim Booten starten: Legt fest, ob die virtuelle Maschine beim Booten von Proxmox automatisch mit gestartet werden soll.
Weiter geht es mit den Einstellungen zum Betriebssystem:
Hier wählen wir das zuvor herunter geladene ISO-Image von Windows 11 aus.
Wichtig ist hier ebenfalls der Typ und die Version des Gast-Betriebssystems: Hier wählen wir natürlich 11/2022 aus.
Es folgen die System-Einstellungen:
- Grafikkarte: Wahl der emulierten Grafikkarte. Kann in den meisten Fällen auf der Standardeinstellung belassen werden.
- Maschinentyp: Der Typ der Maschine. Hier sollte man für Windows 11 q35 wählen (dies sollte aber bereits vorausgewählt sein).
- Firmware: Unter Firmware ist auf jeden Fall OVMF (UEFI) anzugeben, da Windows 11 kein (Legacy-)BIOS mehr unterstützt. Hier muss nur noch der Storage angegeben werden, auf dem die zugehörige EFI-Disk gespeichert werden soll. Die Option Pre-Enroll keys sollte auch aktiviert bleiben.
- SCSI Controller: Die Art des Controllers. Hier wählt man für Windows am besten VirtIO SCSI. Damit sollte die Performance der Maschine am besten sein, man braucht jedoch spezielle VirtIO-Treiber (s.u.).
- Qemu Agent: Die Option kann an dieser Stelle gleich aktiviert werden, da wir einen entsprechenden Agent installieren werden.
- TPM: Windows 11 setzt auch einen TPM 2.0 Chip voraus. Proxmox kann einen solchen Chip bereits emulieren und daher muss die Option an dieser Stelle aktiviert werden. Hier muss dann wieder ein TPM-Storage angegeben werden.
Im nächsten Schritt wird die virtuelle Festplatte konfiguriert, auf der Windows 11 installiert werden soll.
- Bus/Device: Für beste Performance wählt man hier am besten SCSI.
- Storage: Gibt den Storage an, auf den die virtuelle Festplatte gespeichert werden soll.
- Disk-Größe: Die Größe der virtuellen Festplatte. Windows 11 benötigt hier laut Systemanforderungen mindestens 64 GB.
- Cache: Mit dieser Option legt man fest, die der Promox-Host dem Gast-OS mitteilt, wann Daten auf die virtuelle Festplatte geschrieben wurden. Für Windows 11 wird die Option Write back für bessere Performance empfohlen
- Discard: Windows 11 unterstützt den TRIM-Befehl, daher sollte diese Option aktiviert werden (v.a. wenn die virtuelle Festplatte auf einer SSD gespeichert wird).
- SSD Emulation: Wenn die virtuelle Festplatte auf einer SSD liegt, sollte man diese Option ebenfalls aktivieren.
- IO thread: Diese Option kann für bessere Performance ebenfalls aktiviert werden.
Es folgen die Optionen zur CPU:
- Sockets/Cores: Gibt die Anzahl der zu emulierenden Sockets bzw. CPU-Cores an. Hier mehrere Sockets anzugeben ist sehr ungewöhnlich, man sollte aber auf jeden Fall mehrere CPU-Kerne für die VM bereit stellen. Maximal kann hier die Anzahl der (physischen) CPU-Cores des Host-Systems angegeben werden.
- Typ: Hier wird der Typ der emulierten CPU definiert. Hier sollte man nach Möglichkeit host wählen, da so die CPU des Host-Systems emuliert wird, was für maximale Kompatibilität und Performance sorgt.
Im nächsten Schritt wird der Speicher der VM konfiguriert:
- Speicher: Die Größe des Speichers. Hier sollte man mindestens 4 GB (4096 MB wählen).
- Min. Speicher: Minimaler Speicher, der der VM zugewiesen werden kann. Dazu muss die Option Balooning Gerät aktiviert sein (s.u.).
- Balooning Gerät: Mit dieser Einstellung kann der VM immer nur der Speicher zugewiesen werden, der tatsächlich benötigt wird (aber minimal so viel Speicher, wie unter Min. Speicher angegeben wurde). Diese Option macht auf jeden Fall Sinn, da so der Speicher des Host-Systems weniger belastet wird und so mehr Speicher z.B. für andere VMs verfügbar ist.
Nun geht es an die Netzwerk-Einstellungen der virtuellen Maschine:
- Bridge: Die Netzwerk-Bridge, die für die Netzwerk-Kommunikation genutzt werden soll. Wenn der Proxmox-Host nur eine Netzwerkkarte hat, gibt es meist nur eine Bridge, welche hier standardmäßig ausgewählt wird.
- Modell: Hier wählt man am besten die Option VirtIO (paravirtualized). Dazu werden jedoch zusätzliche Treiber während der Installation benötigt (s.u.).
Im letzten Schritt des Assistenten werden die Einstellungen noch einmal zusammengefasst:
Nach einem Klick auf Abschließen ist die virtuelle Maschine innerhalb von wenigen Augenblicken erstellt.
Treiber-CD zur virtuellen Maschine hinzufügen (VirtIO)
Bevor wir nun die virtuelle Maschine starten und Windows 11 installieren können, müssen wir zunächst noch die Treiber-CD (VirtIO) zur VM hinzufügen, da ansonsten die Installation nicht durchgeführt werden kann.
Dazu selektieren wir die soeben erstellte VM und gehen in den Reiter Hardware. Mit dem Button Hinzufügen kann nun ein weiteres CD/DVD Laufwerk hinzugefügt werden:
Im erscheinenden Dialog wählen wir hier nun das bereits vorher heruntergeladene ISO-Image virtio-win.iso aus und bestätigen mit dem Button Erstellen.
Installation von Windows 11
Nun kann es aber endlich an die Installation von Windows 11 gehen. Ich werde aber im Folgenden nicht auf jeden einzelnen Schritt eingehen – ich denke, jeder hat schon mal ein Windows (11) installiert. Hier geht es eher um die Besonderheiten, die bei der Installation unter Proxmox zu beachten sind.
Wir starten zunächst die VM und verbinden uns mit dem Button Konsole mit der Oberfläche der VM:
Die Installation von Windows 11 läuft hier zunächst „ganz normal“ ab, bis zu dem Schritt, wo festgelegt wird, wo Windows installiert werden soll. Wie man sieht, sieht man hier nichts – es steht kein Laufwerk zur Auswahl.
Genau an dieser Stelle wird nun die Treiber-CD (VirtIO) benötigt, die wir vorhin noch zur virtuellen Maschine hinzugefügt haben. Dazu wählen wir hier zunächst Treiber laden und klicken anschließend auf Durchsuchen. Hier sehen wir dann das zweite CD-Laufwerk, wo wir nun den Treiber zur Erkennung der Festplatte installieren können. Dieser befindet sich unter D:\amd64\w11 (evtl. kann hier der Laufwerks-Buchstabe abweichen):
Wenn der Ordner w11 markiert ist, wird nach einem Klick auf OK der Treiber RedHat VirtIO SCSI pass-trough controller angeboten. Mit einem Klick auf Weiter wird dieser installiert. Im Dialog zur Laufwerks-Auswahl wird nun die virtuelle Festplatte angezeigt.
Hier bitte noch nicht auf Weiter klicken, denn wir benötigen noch zusätzliche Treiber. Das vorgehen ist hier wieder identisch, jedoch wählen wir beim Hinzufügen des Treibers nun den Ordner D:\NetKVM\w11\amd64 auf der Treiber-CD aus: Dies ist der Treiber für die VirtIO-Netzwerkkarte der virtuellen Maschine.
Dieses Spielchen wiederholen wir nun ein drittes Mal und wählen diesmal den Ordner D:\Baloon\w11\amd64. Dies ist der Treiber für das sog. Balooning (s.o.)
Nach der Einbindung dieser drei Treiber kann es aber mit dem Setup von Windows 11 wie gewohnt weiter gehen. Die Installation läuft hier wie auf einem „normalen“ Rechner ab, daher überspringe ich hier die eigentliche Installation.
Installation weiterer Treiber
Wenn Windows 11 installiert ist, sollten noch einige Treiber installiert werden, damit das System möglichst rund läuft. Hier nutzen wir wieder die VirtIO-Treiber-CD, die ja noch im virtuellen CD-Laufwerk liegt. Hier gibt es nun einen komfortablen Installer unter D:\virtio-win-gt-x64.msi:
Durch diesen Installer kann man sich einfach Durchklicken, beim Schritt Custom Setup sind bereits alle enthaltenen Treiber vorausgewählt. Wurde die eigentliche Installation gestartet, muss man noch einen Dialog bestätigen, dass man Treiber von ReadHat auf dem System installieren will.
Damit die Treiber geladen werden, sollte die virtuelle Maschine neu gestartet werden. Wir fahren die Maschine nun aber erst einmal herunter.
Nacharbeiten
Wenn die Maschine ausgeschaltet ist, kann man zunächst das Windows 11 Installationsmedium auf dem virtuellen Laufwerk entfernen. Dazu markiert man die Windows 11 VM und klickt im Reiter Hardware doppelt auf das Laufwerk mit dem Windows 11 ISO-Image. Anschließend wählt man hier die Option Kein Medium verwenden.
Die Treiber-CD (VirtIO) wird ebenfalls nicht mehr benötigt, wie auch das zweite CD-Laufwerk. Diese kann daher in den Hardware-Optionen der VM komplett entfernt werden:
Anschließend kann die Windows 11 VM wieder gestartet werden und man kann die Installation an die eigenen Bedürfnisse anpassen.
Für die Arbeit mit der virtuellen Maschine ist es natürlich ziemlich umständlich, wenn man sich immer per Browser auf die „Konsole“ verbinden muss. Daher sollte einer der ersten Schritte die Einrichtung einer RDP-Verbindung sein: Wie man dazu vorgehen kann, ist in diesem Artikel beschrieben.
Anschließend kann man sich mit einem beliebigen RDP-Client mit der Windows 11 Maschine verbinden.
Fazit
Wer Windows 11 wie ich nur gelegentlich nutzen möchte/muss und keine separate Maschine oder ein Dual-Boot-System nur zu diesem Zweck aufsetzen möchte, kann auch einfach ein virtualisiertes Windows 11 System nutzen.
Mit Proxmox VE kann dies recht schnell und unkompliziert umgesetzt werden. Die Installation einer Windows 11 VM ist zwar etwas umständlicher – nicht zuletzt durch die hohen Systemanforderungen und der benötigten Treiber. Nach erfolgreicher Installation kann eine solche VM aber eine gute Alternative zu einem „echten“ Windows 11 System sein.
Darüber hinaus bietet eine virtuelle Maschine natürlich den Vorteil, dass man sich die neuste Ausgabe von Windows mal ungezwungen ansehen und ausprobieren kann.
Was sind eure Erfahrungen? Nutzt ihr Windows 11 bereits – evtl. bereits auf einer virtuellen Maschine? Hinterlasst mir dazu doch einfach einen Kommentar.
Weiterführende Artikel
- Proxmox VE: Installation und Grundkonfiguration
- Proxmox VE: Ubuntu Server als virtuelle Maschine installieren und einrichten
- Proxmox VE: Ubuntu Server als Linux Container (LXC) installieren und einrichten
Hallo Jan,
danke für den Artikel. Bin schon am überlegen ob ich mir bei netcup einen Root-Server hole und auf diesen dann Proxmox installiere.
Gruß Hans
Hi Hans,
auf einem Root-Server muss man nur beachten, dass man hier nur eine öffentliche IP-Adresse hat. Hier muss man sich also etwas einfallen lassen, wenn man die VMs auch aus dem Internet erreichbar machen möchte. Hier muss man dann vermutlich mit internen Netzen, Firewall-Regeln und einem Reverse Proxy arbeiten.
Gruß,
Jan
Hallo Jan
Man kann die VM auch über VNC aufrufen. Bei mir funktioniert das allerdings nur mit TigerVNC.
– Dazu muss man unter Optionen der VM „Benutze Tablet als Zeiger = Ja“ auswählen.
– In der conf Datei der VM (/etc/pve/nodes/pvexxx/qemu-server) muss folgende Zeile hinzugefügt werden „args: -vnc 0.0.0.0:217“ wobei 217 die VM Id ist.
Im TigerVNC gibt man nun die IP Adresse des Proxmox Servers und als Port 6117 (5900 + 217) ein.
Ist zwar etwas umständlicher als RDP geht aber auch.
ciao
Werner
Hi Werner,
danke für den Input. RPD ist allerdings „MS-native“, daher vermutlich die beste Wahl. Für Verbindungen unter Linux klappt das z.B. mit Remina sehr gut.
Gruß,
Jan
Habe gerade deinen Artikel gelesen, meine Win11 läuft auch. Und wie du sagst manchmal braucht man dieses Fenstersystem. Und genau da liegt das Problem. Die Anwendung benötigt openGL 2.0 , dies realisiert sich weder mit Standard Grafiktreiber noch mit virgpu. Spice startet erst garnicht weil vm agent not running.
Gibt es da eine Lösung ?
Grüße Matthias
Hi Matthias,
3D-Unterstützung in einer Windows-VM wird denke ich schwierig. Das geht glaube ich nicht über eine virtuelle GPU. Hier müsste man dann denke ich tiefer in die Trickkiste greifen und die ganze Grafikkarte an die VM „weiter reichen“, das nennt sich dann PCI(e) Passthrough.
Leider habe ich hier keine praktischen Erfahrungen, da meine Virtualisierungs-Kiste keine dedizierte GPU hat. Ist aber vielleicht mal einen Versuch wert?
Wenn du dich hier mal ran wagst, dann wären hier deine Erfahrungen sicherlich interessant.
Gruß,
Jan
Hallo Jan, hallo Matthias, ich habe eine Nvidia T400 erfolgreich anhand dieses Tutorials in Windows 11 und Testweise in Windows Server 2022 Datacenter Evaluation durchgeschleift: https://www.reddit.com/r/homelab/comments/b5xpua/the_ultimate_beginners_guide_to_gpu_passthrough/
Eine Anmerkung noch zu vGPU:
PCI passthrough ist kein vGPU. Vgpu ist wenn die Karte beim Host bleibt und sozusagen geteilt wird zwischen den VMs. Das geht in Richtung verschiedener Technologien wie AMD MxGpu und Nvidia Grid.
Noch einige Hinweise:
Gegenüber Hyper-V bin ich bezüglich der Performance von Windows VMs mit Proxmox unzufrieden: Im Leerlauf habe ich zwischen 60-100% Prozessorauslastung unter Proxmox 7.2.7. Ich habe die Ursache nicht gefunden. Mit der deutschen Server 2022 ISO muss man als Maschinentyp eine ältere Version benutzen, sonst wird keine Netzwerkkarte zur Zeit erkannt. Falls jemand die gleichen Erfahrungen bezüglich CPU Last macht und eine Lösung findet bitte ich diese zu teilen.
Liebe Grüße
Wer beim starten der virtuellen Maschine in der UEFI-Shell landet, sollte folgendes versuchen.
fs0:
cd EFI\BOOT
ls
BOOTX64.EFI
Neustart mit beliebiger Taste bestätigen
Anmerkung: Die Tastenbelegung kann in der VM anders sein. Z.B. liegt der Doppelpunkt unter dem Ö
Englische Version verwenden und anschließend das dt. Language-Pack installieren (netzwerk problem).
Weiß auch nicht warum, aber dürfte schon länger so sein.
Ebenso die deploatet Versions
https://tech-latest.com/ghost-spectre-windows-10-superlite-version/
wegen der Auslastung versuchen – gibt dort auch win 11
Sehr guter Artikel, danke dafür.
Umstellen auf SCSI und die Treiber laden hat mir geholfen.
Hatte immer die ganze Disk zum durchsuchen gewählt und mich gewundert warum nie was
gefunden wurde.
Merci.