Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:virtualisierung:kvm:kvm_winxp]] 

Virtualisierung von Windows XP mit KVM und Virt-Manager

Host-System: Ubuntu-Server 12.04 mit qemu+kvm, Storage im LVM

Als Storage wurde zunächst eine IDE-Platte gewählt, da für die anderen Typen kein Treiber in WinXP verfügbar ist:

WinXP Installationsmedium Iso-Abbild benutzen WinXP-SP2.iso
Betriebssystem Typ Windows
Version Windows XP
RAM / CPU 512 MB / 1 CPU
Speicher-Festplatte anderen Speicher wählen
Storage-Pool LVM Volume Group muss schon angelegt sein
Neuer Datenträger 50000MB wählen
Virtualisierungstyp kvm
Architektur: i686
Konfiguration bearbeiten:
Boot-Options PXE+Harddisk+CDRom
Disk 1 Advanced Options Disk Bus: IDE (später virtio)
Speicherformat: raw
Netzwerk NIC verbunden mit green rtl8139 (später virtio)
Maschineneinstellungen apic, acpi on,on
  1. WinXP-Client über PXE in Linbo booten und registrieren
  2. Start.conf des Client anpassen: 20 GB-WinXp + 2 GB Daten + Rest, import-workstations
  3. WinXP-Client über PXE in Linbo booten und partitionieren
  4. WinXP-Client über CD-ROM booten und WinXP installieren, dabei Partitionierung und Dateisystem beibehalten
  5. Reboot: WinXP-Client wieder über PXE in Linbo booten und Start ohne Restaurierung
  6. WinXP-Installation abschließen
  7. Image erstellen

Imgagevereinheitlichung

Mit virtuellem XP-Client und realem XP-Client:

  1. WinXP auf virtuellen Client im IDE-Modus installieren (siehe oben)
  2. virtueller Client: Im Gerätemanager den Festplattenkontroller auf Standard-IDE umstellen
  3. virtueller Client: Festplatte auf virtio-Modus umstellen und alle nötigen Treiber installieren (siehe unten)
  4. virtueller Client: Image erstellen
  5. realer Client: Image booten
  6. realer Client: alle nötigen Treiber installieren
  7. realer Client: Image erstellen

Achtung: Nach Umstellen von IDE auf virtio und neuem Partitionieren ändert sich minimal die Partitionsgröße! → siehe unten


Grafik: vmware-VGA-Teiber für kvm verwenden

Download: → http://www.linux-kvm.com/content/using-vmware-vga-kvm-windows-guests

Dieses Iso-Image auf den Host nach /var/lib/libvirt/images/ kopieren. Im Client das Iso in die CD-ROM einlegen, Client booten und das setup auf der CD starten.

Problem: Dieser VGA-Treiber passt leider nicht!


Netzwerk: virtio - Treiber für Windows XP

Die virtio-Treiber findet man auf einem CD-ROM-iso, z.B. bei

Ich verwendete „virtio-win-0.1-22.iso“ von fedora. Dieses Iso-Image auf den Host nach /var/lib/libvirt/images/ kopieren.
Dann die Netzwerkkarte auf virtio umstellen, das iso-Image einlegen und Client booten. Nun von CD die Treiber des neu erkannten Ethernet-Controllers installieren.


Storage: virtio - Treiber für Windows XP

Die erste Festplatte ist zunächst eine IDE-Platte.
Eine zweite virtio-Festplatte im Client hinzufügen, das iso-Image einlegen und den Client booten. Nun wird nach dem Treiber gefragt und man kann ihn von CD installieren. Die virtio-Platte testweise formatieren.
Ich verwendete zuerst „virtio-win-0.1-22.iso“ von fedora. Dieses Iso enthält mehrere Treiber. Den XP-Treiber mit der Nummer 51… benutzen. Der auch enthaltene Treiber mit der Nummer 61.63.103.2200 funktioniert zwar mit der zweiten virtio-Platte, aber später nicht mit der boot-Platte. Ursache: der 61…-Treiber gehört zu Win7, wird aber bei automatischer Installation von WinXP eingebunden!

Jetzt die erste Festplatte auf virtio umstellen, die zweite Platte wieder löschen und Client booten. Bei der Abfrage der Hardwareerkennung nun den Treiber manuell auswählen und den 51.63.103.2200 Red-Hat-Virtio-Treiber wählen.

LINBO

Man muss nun linbo von sda auf vda umstellen:
In der „start.conf.<virtwinxp>“ des virtuellen Client nun alle Einträge „sda“ bzw. „sda1“, … durch „vda“ bzw. „vda1“ … ersetzen.

Zusätzlich musste ich noch auf den reboot-Workaround wechseln:

  1. In der „start.conf.<virtwinxp>“ eintragen:
    ...
    [OS]
    ...
    Kernel = reboot
    ...
  2. In der Datei „/var/linbo/pxelinux.cfg/<virtwinxp>“ eintragen:
    ...
    DEFAULT reboot
    ...

Problem: Mit dem vda-Partitionen (virtio) ergeben sich andere Partitionsgrößen als mit den sda-Partitionen (IDE) - trotz gleichem Wert in der start.conf. Wenn dadurch die Imagegröße nicht mehr passt, muss man die Partitionsgrößen der vda-Partitionen in der start.conf minimal erhöhen.


Storage: SCSI - Treiber für Windows XP: funktioniert leider nicht

Problem bei SCSI: Formatieren der SCSI-Platte funktioniert, aber beim Benutzen der SCSI-Platte stürzt die virtuelle Maschine immer ab - scheinbar ein qemu-kvm Fehler.


Performance der virtuellen WinXP-Maschine

Hostsystem: Ubuntu-Server 12.04, 64 Bit, 4GB Ram, 4 Kerne, Intel Core i3-550 3,2 GHz, RAID-Controller 3ware 9650SE- 2LP PCIe SATA-II und HDD mit 1TB S-ATA
Virtuelle XP-Maschine: 1 Prozessor, 512 MB RAM, Festplatte mit 50 GB im LVM, davon 20GB für WinXP-Partition, virtio-Netzwerkkarte
Virtueller Server: paedML 5.10, 2 Prozessoren, 2048 MB RAM, Festplatte-virtio-Modus mit 500GB im LVM, virtio-Netzwerkkarte

Aktion Zeitdauer
virtuelle XP-Maschine
Zeitdauer
virtuelle XP-Maschine
Zeitdauer
reale XP-Maschine
1 Prozessor
512 MB RAM
HD: IDE-Modus im LVM, 50 GB
virtio-Netzwerk
1 Prozessor
512 MB RAM
HD: virtio-Modus im LVM, 50 GB
virtio-Netzwerk
Pentium 4, 2,8 GHz
1 GB RAM
HD: IDE mit 40GB
Netzwerk 1GB
Image der WinXP Partition erstellen,
Größe des cloop am Server: 1,5 GB
gesamt 1,5 h 17,5 min 19 min
davon: Nullen der Partition (ca. 16GB) 45 min 9:00 min 7:00 min
davon: Image lokal erstellen 35 min 5:25 min 10 min
davon: Create hash-table 2,5 min 20 sec 70 sec
davon: Image hochladen (ca. 5 MB/s) 5 min 1:50 min 1:00 min
Sync-Start mit modprobe 1,5 GB cloop 90 sec 30 sec 40 sec
rsync download cloop mit 1,5 GB cloop 4:00 min 1:40 min 1:57 min
extrakt_fs 1,5 GB→ 20 GB 240 min !! 16 min 9:30 min
Disk-Speed mit DiskSpeed32-Tool
für 20 GB Partition
5500 bis 4500 kB/s 150000 kB/s 54000 bis 30000 kB/s (HD)
16500 kB/s (USB-Stick)
Partition formatieren von WinXP 2 GB Partition 35 sec 5 sec 65 sec
Partition formatieren von LINBO 20 GB Partition 7:40 min 15 sec 13 sec
Dateien kopieren Ordner „Programme“
mit 110 MB kopieren
14:20 min (1.Durchlauf)
13:20 min (2.Durchlauf)
60 sec (1.Durchlauf)
60 sec (2.Durchlauf)
15 sec (1.Durchlauf)
10 sec (2.Durchlauf)
In der virtuellen Maschine ist die Festplattenperformance einer IDE-Platte nur ca. 1/30 bis 1/10 der einer realen Festplatte, was völlig unbrauchbar ist!
 [[anwenderwiki:virtualisierung:kvm:kvm_winxp]] anwenderwiki/virtualisierung/kvm/kvm_winxp.txt · Zuletzt geändert: 2012/12/08 14:47 (Externe Bearbeitung)