Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
client:qemureorg [2024/04/02 18:03 CEST] – [Erstellen einer neuen VM] chr | client:qemureorg [2024/04/02 18:07 CEST] (aktuell) – gelöscht chr | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== qemu ====== | ||
- | |||
- | QEMU im Verbund mit libvirt bietet eine leistungsfähige open Source-Virtualisierungsumgebung, | ||
- | |||
- | ===== Software ===== | ||
- | |||
- | Zur Verwaltung und Anpassung von QEMU-VMs ist ein Linux-System sehr empfehlenswert. QEMU-Betrieb unter Windows scheint inzwischen zwar einigermaßen möglich zu sein((Binaries https:// | ||
- | |||
- | Einige Distributionen liefern noch relativ alte Versionen von QEMU über ihre Paketquellen aus. Verwenden Sie mindestens Version 5.2.x; eine aktuellere Version (6.x) schadet natürlich nicht. | ||
- | |||
- | Installieren Sie von qemu und virt-manager ausgehend die für Ihre Distribution benötigten Pakete, etwa mittels: | ||
- | |||
- | < | ||
- | apt install qemu qemu-kvm virt-manager libvirt-daemon | ||
- | zypper in qemu qemu-kvm virt-manager libvirt | ||
- | dnf install qemu qemu-kvm virt-manager libvirt | ||
- | etc. | ||
- | </ | ||
- | |||
- | Prüfen Sie ggf. nach Abschluß der Installation, | ||
- | |||
- | <note tip>Der lokal zum Umgang mit qemu/ | ||
- | |||
- | Operationen als normaler User ohne weitere connect-Angaben (-c, --connect) und ohne gesetzte %%LIBVIRT_DEFAULT_URI%%-Umgebungsvariable werden im Kontext %%qemu:/// | ||
- | |||
- | |||
- | ===== Virtuelle Maschinen (VMs) ===== | ||
- | |||
- | [{{ client: | ||
- | |||
- | ==== Download und Import ==== | ||
- | |||
- | Nach dem Download der VM erfolgt ein Import der Konfiguration in libvirt mit einem der beiden folgenden Konsolenaufrufen. | ||
- | |||
- | < | ||
- | < | ||
- | |||
- | * „create“: | ||
- | * **„define“: | ||
- | |||
- | ==== Bearbeitung der VM ==== | ||
- | |||
- | Die Konfiguration der importierten VM kann nun editiert werden, wenn nötig. Diese Bearbeitung kann grafisch mittels des „Virtual Machine Manager“ (virt-manager), | ||
- | |||
- | ==== Start der VM ==== | ||
- | |||
- | Das Gastsystem kann nun gestartet und natürlich bearbeitet werden. Beim ersten Start einer VM allgemein können gewisse Probleme auftreten; mehr dazu unter [[# | ||
- | |||
- | Bei Problemen beim Boot à la Bluescreens usw. sollte geprüft werden, welche Busart zum Ansprechen des Massenspeichers im auf dem Image befindlichen Gastbetriebssystem verwendet wurde (scsi, sata, ata). Bei Linuxgastsystemen („a start job is running… for dev/ | ||
- | |||
- | |||
- | ==== Export der Konfiguration | ||
- | |||
- | Die Konfiguration der erstellten virtuellen Maschine muß vor einem Upload via bwLehrpool-Suite exportiert werden, da virtlibd die Konfiguration intern führt und daher die ursprünglich per bwLehrpool-Suite geschriebe, zum Import verwendete xml-Datei nicht aktualisiert wird. Das kann derzeit nur mit einem Kommandozeilenbefehl geschehen: | ||
- | |||
- | < | ||
- | |||
- | Folgender Befehl listet die vorhandenen VMs auf, falls Sie sich des VM-Namens nicht sicher sind: | ||
- | < | ||
- | |||
- | Das Festplattenabbild der VM muss dabei nicht explizit kopiert werden, da die exportierte Konfiguration (XML-Datei) automatisch auf das vorhandene Festplattenabbild verweist. | ||
- | |||
- | <note important> | ||
- | |||
- | ==== Optimierung (optional) ==== | ||
- | |||
- | Vor dem Upload der VM kann optional eine Optimierung des qcow2-Festplattenabbildes der VM vorgenommen werden. Dies umfasst das Komprimieren des Festplattenabbilds. Zur besseren Komprimierung sollten zuvor im laufenden Gastsystem alle freien Speicherblöcke mit Nullen beschrieben werden ([[vm_anpassen# | ||
- | |||
- | Die Kompression des Festplattenabbilds erfolgt mit folgenden Konsolenaufrufen: | ||
- | < | ||
- | qemu-img convert -f qcow2 -O qcow2 -c -o compression_type=zstd [Datei.qcow2] [temp_Datei.qcow2] | ||
- | mv [temp_Datei.qcow2] [Datei.qcow2] | ||
- | </ | ||
- | |||
- | ==== Upload der VM ==== | ||
- | |||
- | Die exportierte xml-Datei kann [[bwlehrpool-suite# | ||
- | |||
- | |||
- | ===== Erstellen einer neuen VM ===== | ||
- | |||
- | Von der allgemeinen Empfehlung abgesehen, besser Vorlagen-VMs herunterzuladen und anzupassen, können natürlich eigene VMs von Grund auf neu erstellt werden. Mitunter ist dies der einzige Weg, wenn Sie etwa ein exotischeres Betriebssystem, | ||
- | |||
- | Allgemein werden folgende Konfigurationsoptionen empfohlen: | ||
- | |||
- | * Emulierte Hardwaregeräte, | ||
- | * Dies gilt prinzipiell auch für die grafische Ausgabe („Video“); | ||
- | * „Anzeige Spice“ sollte auf „SPICE-Server“ gesetzt werden. | ||
- | * Das qcow2-Format sollte als Format für das Festplattenabbild bevorzugt werden, alternativ sind auch .vmdk und .vdi möglich. | ||
- | * Optional: Komprimierung des Festplattenabbilds vor dem Upload (siehe [[# | ||
- | |||
- | ==== Grafisches Erstellen der VM ==== | ||
- | |||
- | Ein grafisches Erstellen einer neuen VM erfolgt mittels virt-manager (Virtual Machine Manager), Cockpit oder dergleichen. Zur Erstellung den jeweiligen Assistent en (Wizard) starten (virt-manager: | ||
- | |||
- | ==== Manuelles Erstellen der VM ==== | ||
- | |||
- | Ein manuelles Erstellen der VM kann alternativ über den folgenden Konsolenaufruf erfolgen. | ||
- | |||
- | < | ||
- | virt-install --connect qemu:/// | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | [--cdrom [iso oder Device]] | ||
- | </ | ||
- | |||
- | Beispiel: | ||
- | < | ||
- | virt-install --connect qemu:/// | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | Der Befehl „osinfo-query os“ (aus der Bibliothek osinfo-query) zeigt verfügbare Werte für --os-variant an. Häufige Werte sind beispielsweise opensuse15.5, | ||
- | |||
- | |||
- | ==== Software ==== | ||
- | |||
- | Unter den jeweiligen Gastsystemen sollten u.a. zur Performanzverbesserung folgende Gastprogramme installiert werden: | ||
- | |||
- | === Linux === | ||
- | |||
- | * virtio Linux-Kernel-Treiber, | ||
- | * xserver-xorg-video-qxl bzw. xf86-video-qxl (bei Verwendung der paravirtualisierten 2D QXL-Grafik), | ||
- | * qemu-ga (qemu-guest-agent), | ||
- | * spice-vdagent. | ||
- | |||
- | === Windows === | ||
- | |||
- | * virtio Windows-Treiber per [[https:// | ||
- | * qemu-ga (qemu-guest-agent), | ||
- | * spice-vdagent. | ||
- | |||
- | ==== Export und Upload ==== | ||
- | |||
- | Der Export und Upload der VM erfolgt analog zu dem Vorgang ab [[# | ||
- | |||
- | |||
- | ===== Startprobleme ===== | ||
- | |||
- | ==== Netzwerk ==== | ||
- | |||
- | Mitunter tritt beim Start der VM die Meldung „Requested operation is not valid: network ' | ||
- | |||
- | Wenn Sie kein anderes virtuelles Netzwerk erzeugt haben oder nutzen wollen, können Sie das default-Netzwerk starten. Sie können mit „virsh net-list“ bestehende Netzwerke auflisten: | ||
- | |||
- | < | ||
- | |||
- | | ||
- | ---------------------------------------------- | ||
- | | ||
- | |||
- | [{{ client: | ||
- | |||
- | < | ||
- | -------------------------------------------- | ||
- | | ||
- | |||
- | Das sollte das Problem beheben. | ||
- | |||
- | ==== Laufwerke ==== | ||
- | |||
- | [{{ client: | ||
- | |||
- | In desem Fall: | ||
- | * „Konsole der virtuellen Maschine und Details anzeigen“, | ||
- | * „Details der virtuellen Geräte anzeigen“, | ||
- | * „SATA CDROM 1" rechtsklick, | ||
- | * „Zugehörige Dateien löschen" | ||
- | |||
- | |||
- | ===== Export in Cloudsysteme ===== | ||
- | |||
- | < | ||
- | |||
- | Zum Export von Windows-VMs in Cloud-Infrastrukturen wie bwClouds/ | ||
- | |||
- | - Plattenabbild mit „qemu-img convert“ in's raw-Format [[# | ||
- | - Es wird empfohlen, soweit möglich virtio-Treiber zu installieren. | ||
- | - Je nach Anwendungsfall sind folgende Schritte notwendig: | ||
- | | ||
- | | ||
- | - Plattenabbild API oder mit Openstacks CLI als Image nach OpenStack hochladen. | ||
- | |||
- | ==== Troubleshooting zum Export von Windows Guests ==== | ||
- | |||
- | Es ist wichtig, auf die Eigenschaften der Machine zu achten (in OpenStack sog. [[https:// | ||
- | |||
- | < | ||
- | hw_cdrom_bus sata | ||
- | hw_disk_bus sata | ||
- | hw_firmware_type uefi | ||
- | hw_machine_type q35 | ||
- | hw_video_model vga | ||
- | hw_vif_model e1000 | ||
- | </ | ||
- | |||
- | Die Optionen hw_cdrom und hw_disk_bus sind wichtig zur Verwendung eines Bustyps, der mit dem von bwLehrpool kommenden VMs in der Regel funktioniert Ist dem so? Prüfen!). Der Firmware-Typ hilft bei der Auswahl des richtigen Bootloaders, | ||
- | |||
- | Schließlich ergaben sich Probleme mit der Netzwerkkarte/ | ||
- | |||
- | „“ | ||