Kapitel 9. KVM paravirtualisierte Treiber
Paravirtualisierte Treiber stehen für virtualisierte Windows-Gäste zur Verfügung, die auf KVM-Hosts laufen. Diese paravirtualisierten Treiber sind im virtio-Paket enthalten. Das virtio-Paket unterstützt Blockspeichergeräte und Netzwerkschnittstellen-Controller.
Paravirtualisierte Treiber verbessern die Leistung von voll virtualisierten Gästen. Mit paravirtualisierten Treibern verringert sich die Latenz bei I/O-Vorgängen des Gasts, und der Datendurchsatz wird erhöht auf nahezu dasselbe Niveau wie bei Bare-Metal-Implementierungen. Die Verwendung von paravirtualisierten Treibern wird empfohlen für voll virtualisierte Gäste, auf denen I/O-intensive Aufgaben und Anwendungen ausgeführt werden.
Die KVM paravirtualisierten Treiber werden in neueren Fedora-Versionen automatisch geladen und installiert. Diese Fedora-Versionen erkennen und installieren die Treiber, so dass zusätzliche Installationsschritte Ihrerseits nicht notwendig sind.
Wie auch mit dem KVM-Modul, so sind die virtio-Treiber nur auf Hosts verfügbar, auf denen neuere Fedora-Versionen laufen.
Note
Es stehen nur 28 PCI-Slots pro Gast für zusätzliche Geräte zur Verfügung. Jedes paravirtualisierte Netzwerk oder Blockgerät benötigt einen Slot. Jeder Gast kann bis zu 28 zusätzliche Geräte in einer beliebigen Kombination aus paravirtualisierten Netzwerk, paravirtualisierte Festplatten oder anderen PCI-Geräten mit VTd einsetzen.
Die folgenden Microsoft Windows Versionen besitzen unterstützte KVM paravirtualisierte Treiber:
Windows XP,
Windows Server 2003,
Windows Vista, und
Windows Server 2008.
9.1. Installation der KVM Windows paravirtualisierten Treiber
Dieser Abschnitt erläutert den Installationsvorgang für die KVM Windows paravirtualisierten Treiber. Die KVM paravirtualisierten Treiber können während der Windows-Installation geladen werden oder nach abgeschlossener Installation des Gasts installiert werden.
Sie können die paravirtualisierten Treiber mittels einer der folgenden Verfahren auf Ihrem Gast installieren:
durch Hosten der Installationsdateien auf einem Netzwerk, auf das der Gast Zugriff hat,
mittels eines virtualisierten CD-ROM-Laufwerks der Treiberinstallations-CD .iso-Datei, oder
mittels eines virtualisierten Floppy-Laufwerks, um die Treiber zur Boot-Zeit zu installieren (für Windows-Gäste).
Dieses Handbuch beschreibt die Installation von der paravirtualisierten Installations-CD als virtualisiertes CD-ROM-Laufwerk.
Herunterladen der Treiber
Das virtio-win-Paket installiert ein CD-ROM-Abbild namens virtio-win.iso
im /usr/share/virtio-win/
-Verzeichnis.
Installation der paravirtualisierten Treiber
Es wird empfohlen, die Treiber auf dem Gast zu installieren, bevor Sie ein Gerät, welches die paravirtualisierten Treiber verwenden soll, verknüpfen bzw. modifizieren.
Für Blockgeräte, auf denen Root-Dateisysteme gespeichert sind sowie für andere zum Booten des Gasts nötige Blockgeräte müssen die Treiber installiert sein, ehe das Gerät modifiziert wird. Sollten die Treiber nicht auf dem Gast installiert sein, und der Treiber wird auf den virtio-Treiber eingestellt, kann der Gast nicht starten.
Prozedur 9.1. Verwenden von virt-manager
zum Einhängen eines CD-ROM-Abbilds für einen Windows-Gast
Öffnen Sie den virt-manager
, wählen Sie Ihren virtualisierten Gast aus der Liste der virtuellen Maschinen aus und klicken die Details-Schaltfläche.
Klicken Sie die Schaltfläche Hinzufügen im Details-Fenster.
Dies startet einen Assistenten, der Sie beim Hinzufügen des Geräts unterstützt. Wählen Sie
Speichergerät aus dem Drop-Down-Menü und klicken anschließend auf
Weiter.
Wählen Sie die Option Datei (Disk-Abbild) und geben den Dateispeicherort der .iso-Datei des paravirtualisierten Treibers an. Der Speicherort der .iso-Dateien ist /usr/share/xenpv-win
, sofern Sie yum
zur Installation der paravirtualisierten Treiberpakete genutzt haben.
Falls die Treiber auf einer physischen CD vorliegen, wählen Sie die Option Normale Plattenpartition.
Setzen Sie den
Gerätetyp auf
IDE CD-Rom und klicken auf
Weiter, um fortzufahren.
Die CD wurde zugewiesen und steht dem Gast nun zur Verfügung, sobald dieser gestartet wird. Klicken Sie auf
Abschließen, um den Assistenten zu beenden, oder "Zurück", wenn Sie einen Fehler korrigieren möchten.
Diese Anleitung zeigt die Installation der paravirtualisierten Treiber während einer Windows-Installation.
Unten sehen Sie ein dateibasiertes Blockgerät, das den virtualisierten IDE-Treiber verwendet. Dies ist ein typischer Eintrag für einen virtualisierten Gast, der keine paravirtualisierten Treiber verwendet.
<disk type='file' device='disk'>
<source file='/var/lib/libvirt/images/disk1.img'/>
<target dev='hda' bus='ide'/>
</disk>
Um das paravirtualisierte Gerät zu verwenden, ändern Sie den Eintrag bus= auf virtio
.
<disk type='file' device='disk'>
<source file='/var/lib/libvirt/images/disk1.img'/>
<target dev='hda' bus='virtio'/>
</disk>
Diese Anleitung zeigt die Erstellung neuer Geräte zur Verwendung der KVM paravirtualisierten Treiber mittels virt-manager
.
Alternativ können Sie auch die Befehle virsh attach-disk
oder virsh attach-interface
nutzen, um Geräte zu verknüpfen, die die paravirtualisierten Treiber verwenden.
Installieren Sie die Treiber zuerst
Vergewissern Sie sich, dass die Treiber auf dem Windows-Gast installiert wurden, ehe Sie damit beginnen, neue Geräte zu installieren. Falls die Treiber nicht bereitstehen, kann das Gerät nicht erkannt werden und wird nicht funktionieren.
Öffnen Sie den virtualisierten Gast, indem Sie in virt-manager
auf den Namen des Gasts doppelklicken.
Öffnen Sie den Hardware-Reiter.
Klicken Sie auf die Schaltfläche Hardware hinzufügen.
Wählen Sie unter dem Reiter "Hinzufügen virtueller Hardware" Speicher oder Netzwerk für den Gerätetyp.
Neue Festplatten
Wählen Sie das Speichergerät oder dateibasierte Abbild. Wählen Sie Virtio-Disk als Gerätetyp und klicken auf Weiter.
Neue Netzwerkgeräte
Wählen Sie Virtuelles Netzwerk oder Gemeinsam verwendetes physisches Gerät. Wählen Sie Virtio als Gerätetyp und klicken auf Weiter.
Klicken Sie auf Abschließen, um das Gerät zu speichern.
Starten Sie den Gast nun neu. Das Gerät wird unter Umständen vom Windows-Gast nicht erkannt, so lange er nicht neu gestartet wird.