Der Paravirtual SCSI Adapter - Dessen Vorteile und Anwendungsbereiche
Virtualisierung bringt gleichzeitig Einfachheit und Komplexität in die EDV Umgebung. Richtig eingesetzt kann die Verwendung von Virtualisierungssoftware im Bezug auf Verfügbarkeit und den Kosten ein Segen sein. Durch Live-Migrations-Techniken werden Server ständig auf verfügbarere Hardwaresysteme verschoben um so beste Performance und Verfügbarkeit zu erzielen.
Gleichzeitig aber verlangen Virtualisierungslösungen mehr Detailgenauigkeit als herkömmliche, traditionelle Infrastrukturen. Administratoren für virtuelle Umgebungen müssen darauf achten dass alle Physikalischen Ressourcen welche der Virtuellen Welt zur Verfügung stehen optimal genutzt werden, damit sich die Investitionen in virtuelle Umgebungen bezahlt macht.
Hersteller von Virtualisierungssysteme haben viel getan, virtuelle Hardware mit möglichst wenig Overhead bereitstellen zu können. Einer dieser Schritte war zum Beispiel die Einführung von paravirtuellen SCSI (PVSCSI) Adaptern in VMware ESX. PVSCSI Adapter, welche nur für eine Handvoll ausgewählter Gastbetriebssysteme verfügbar sind, sind hochperformante virtuelle Speicheradapter die einer virtuellen Maschine hinzugefügt werden können. Diese neuartigen Speicheradapter bieten enorme Vorteile für eine virtuelle Umgebung da der Datendurchsatz erhöht wird, während gleichzeitig die CPU-Last drastisch sinkt. Richtig bemerkbar macht sich der Unterschied jedoch nur bei Systemen mit hoher I/O-Last. VMware hat den PVSCSI-Adapter entwickelt um Anforderungen von SQL-Datenbanken oder anderen I/O Intensiven Anwendungen gerecht zu werden. Es wird vom VMware empfohlen die PVSCSI-Adapter-Technologie nicht in Umgebungen einzusetzen die DAS-Systeme verwenden.
Der PVSCSI Adapter wird seit vSphere 4 bereitgestellt und war am Anfang nur für wenige Systeme verfügbar. Inzwischen werden alle aktuellen Windows und Linux Systeme unterstützt. Wichtig ist bei Linux Systemen eigentlich nur ein 2.6 Kernel. Um Windows und Linux Systeme von PVSCSI Booten zu können muss man teilweise ein wenig in die Trickkiste greifen.
Um einen PVSCSI-Adapter zu verwenden, muss die virtuelle Maschine mit Hardware-Version 7 betrieben werden. Wenn Sie eine virtuelle Maschine mit einer niedrigeren Hardware Ebene erstellen steht die PVSCSI-Option nicht zur Verfügung. Die Hardware-Version kann aber im ausgeschalteten Zustand der virtuellen Maschine aktualisiert werden (mit vSphere 5.0.0 aktuell auf Version 8 über das Kontext-Menü). Vor vSphere 4.0 Update 1, konnte der PVSCSI-Adapter bei Boot Volumes nicht verwendet werden. Um PVSCSI zu nutzen musste man das Boot-Volume so konfigurieren, dass erst ein anderer SCSI-Adapter benutzt wurde, der PVSCSI musste dann von Hand hinzugefügt werden um zusätzliche Daten-Volumes einbinden zu können. Seit vSphere 4.0 U1 können PVSCSI auch für virtuelle Boot-Volumes genutzt werden.
Mit der „richtigen“ Art der Nutzlast, kann PVSCSI in Verbindung mit Glasfaser-Speicher eine Reduktion von 10%-30% erbringen, was die „cycles per I/O (CPIO)“ angeht. Also die Prozessorlast. Bei iSCSI Systemen beträgt diese Reduktion ungefähr 25%. Der wahre Performance Zugewinn hängt natürlich von der I/O Blockgröße ab.
VMware bietet einige spezifische Anleitungen im Hinblick auf die Verwendung von PVSCSI in neuen virtuellen Maschinen. Laut VMware sollte der PVSCSI-Adapter wenn möglich nur in virtuellen Maschinen mit extrem hohem Datenaufkommen verwendet werden. VMware empfiehlt bei virtuellen Maschinen mit niedrigem Datenaufkommen bei den „alten“ und erprobten LSI Logic SCSI Adaptern zu bleiben. VMware erklärte dies in vollem Umfang in ihrem Knowledgebase Eintrag 1017652. Am Ende des Knowledgebase Eintrages wird zusammenfassend gesagt: „Die Testresultate zeigen das der PVSCSI besser als der LSI Logic Adapter ist, außer unter einer Bedingung – die virtuelle Maschine führt weniger als 2000 IOPS (Input/Output operations Per Second = Ein-/Ausgabe Operationen Pro Sekunde) aus.
Wenn sie allerdings schon eine virtuelle Maschinen mit niedrigem Datenaufkommen mit PVSCSI-Adaptern erstellt haben lohnt es sich nicht diese umzustellen auf LSI Logic. Einfach gesagt, die Umstellung von PVSCSI auf LSI Logic braucht Zeit und der Leistungsverlust ist zu vernachlässigen.
In Umgebungen mit enorm hohem Datenaufkommen hat VMware einen Leistungszuwachs von 12% gemessen bei einer um 18% geringeren Prozessorlast. Die Tests wurden in Umgebungen durchgeführt mit extrem hohem Datenaufkommen - soll heissen, mit ca. 350000 IOPS.
Es gibt trotz enormen Vorteilen von PVSCSI auch Situationen in denen der Einsatz vom PVSCSI eine schlechte Entscheidung ist. Der entscheidenste Nachteil wäre zum Beispiel, wenn virtuelle Maschinen für Fehlertoleranz konfiguriert sind. Darüber hinaus, wenn sie gezwungen sind den Microsoft Cluster Service (MSCS) zu verwenden, muss ein anderer Typ SCSI Controller gewählt werden. Und, wie an anderer Stelle schon erwähnt, eine virtuelle Maschine geschaffen wird, diese jedoch aber ein sehr geringes Datenaufkommen hat, dann lohnt sich der Einsatz von PVSCSI, denn es resultieren keine Geschwindigkeitsvorteile daraus.
Das Erstellen einer neuen virtuellen Maschine die PVSCSI verwendet ist sehr einfach, solange man ein von VMware und PVSCSI unterstütztes Betriebssystem benutzt. Am Anfang, wenn man eine neue virtuelle Maschine erstellt, muss bei den Optionen die „Benutzerdefiniert“ Option ausgewählt werden. Abbildung 1 zeigt wie das geht.
Nachdem die „Benutzerdefiniert“ Auswahl getroffen wurde folgt der Assisstent bis man zur VM Versionsseite gelant. Auf dieser Seite sollte man VM Version 7 auswählen, wie Abbildung 2 zeigt. Wenn die VM Version 4 ausgewählt wird, wird die PVSCSI Option nicht verfügbar sein.
Wenn man bei der Betriebssystemauswahl angelangt ist, stellen sie sicher dass sie ein Betriebssystem auswählen das von PVSCSI unterstützt wird. Wenn nicht, dann erscheint auf der SCSI Controller Seite des Assistenten neben der PVSCSI Auswahl ein Warnhinweis der lautet „nicht empfohlen für dieses Gastbetriebssystem“. Wenn man ein unterstütztes Betriebssystem wählt kommt solch eine Warnung nicht.
Von hier an ist die Prozedur, das Erstellen der VM, dieselbe wie bei der Auswahl eines andren SCSI Adapters. Am Beginn der Gastbetriebssysteminstallation müssen nur ein paar kleine Schritte unternommen werden um PVSCSI zu nutzen.
Für dieses Beispiel wird Windows Server 2008 R2 als Gastbetriebssystem verwendet, auf einer VM der 40GB freier Festplattenplatz zugewiesen wird. Wenn die Installation gestartet wird, sehen sie in Abbildung 3 dass keinerlei Volumen angezeigt werden auf welche man Windows Server 2008 R2 installieren könnte.
Das Windows Server 2008 R2 Installationsmedium enthält keine Treiber für den PVSCSI Adapter von VMware, heißt also das keinerlei Speicher erkannt werden kann. Es müssen Treiber bereitgestellt werden die vom Installer verwendet werden können um den bereitgestellten Speicher zu finden und diesen zu benutzen. VMware hat für diesen Zweck Diskettenimages eingebettet die die PVSCSI Treiber enthalten. Diese Images sind im Host Datenspeicher abgelegt. Um das Diskettenimage zu verbinden klicken sie das Disketten Icon im vCenter an und gehen zu „Diskettenlaufwerk 1“ > „Zu Diskettenimage auf Datenspeicher verbinden“.
Sie werden daraufhin mit der „Datenspeicher durchsuchen“ Dialogbox konfrontiert, dort navigieren sie zu „vmimages“ > „Disketten“ und wählen das Image dass zu ihrem gewählten Betriebssystem passt. Abbildung 5 zeigt die Diskettenimage Auswahlmöglichkeiten.
Zurück im Windows Installationsbildschirm klicken sie auf den „Treiber laden“ Button, im nachfolgenden Bildschirm klicken sie auf „Durchsuchen“ und erweitern das neu verbundene Diskettenlaufwerk. Wählen sie den Top-Level-Ordner für ihren Betriebssystem-Typ – 32-bit (i386) oder 64-bit (amd64). Lassen sie sich nicht durch den Namen „amd64“ beeinflussen. Dies ist der Treiber der bei jeder 64-bit Version von Windows verwendet werden sollte, egal welcher Prozessorhersteller benutzt wird. AMD64 ist der allgemein gültige Namen für 64-bit Systeme.
Nun wird Windows den neuen Treiber laden und man ist in der Lage die virtuelle Festplatte auszuwählen, die bei der Erstellung der VM geschaffen wurde. Abbildung 7 zeigt das „neu entdeckte“ Speichergerät
Von diesem Punkt an funktioniert der Rest der Windows Installation exakt genauso wie bei herkömmlichen virtuellen Maschinen.
PVSCSI ist nicht nur für neue virtuelle Maschinen gedacht. Sie könnten zum Beispiel einen virtuellen SQL-Server besitzen, dieser könnte enorme Vorteile aus dem Geschwindigkeitszuwachs von PVSCSI ziehen. Sofern die VM keinen riesigen Bedarf an Datendurchsatz benötigt für das Boot Volume, wird empfohlen das man den alten Adapter weiterhin verwendet und den PVSCSI Adapter als sekundären Adapter verwendet.
Um PVSCSI korrekt zu konfigurieren auf der vorhandenen VM sollte die VM die VMware Tools installiert haben. Als erstes muss ein neues Laufwerk dem System hinzugefügt werden damit der neue Adapter etwas zum Verbinden hat. Hier wird der Prozess im Detail durchgegangen.
Erstens, öffnen sie vCenter und klicken sie mit der rechten Maustaste auf die gewünschte VM, vom Schnellauswahlfenster wählen sie „Einstellungen bearbeiten“.
Im „Eigenschaften virtueller Maschinen“ Dialog klicken sie auf den „Hinzufügen“ Button um neue Hardware hinzuzufügen. Wenn sie im „Hardware hinzufügen“ Dialog sind, dann wählen sie die Option "Festplatte".
Folgen sie den Bildschirmanweisungen um die Größe der neuen virtuellen Festplatte festzulegen. Erst einmal bei der „Virtueller Geräteknoten“ Option angelangt ist es entscheidend dass die Festplatte mit einem separaten, eigenen SCSI-Adapter verbunden wird. Verbinden sie die Festplatte auf keinen Fall mit einem SCSI der mit 0 beginnt, dies ist standardmäßig der Standard SCSI-Adapter. In diesem Beispiel wird 1:0 als virtueller Geräteknoten verwendet, abgebildet in Abbildung 10.
Fahren sie mit dem Rest des Vorgangs fort. Wenn sie fertig sind werden sie feststellen das die Geräteliste zwei Geräte anzeigt: Ihre neue Festplatte als auch den SCSI.Adapter des standardmäßigen LSI Logic-Typs. Der Grund warum der neue Adapter erstellt wurde ist folgender, die neue Festplatte wurde nicht an den Standardadapter angeschlossen sondern an den eigens Erstellten.
Nun wählen sie den neuen SCSI Adapter aus und klicken sie auf den „Typ ändern“ Button. Im „SCSI Adapter Typ ändern“-Dialog wählen sie dann „VMware Paravirtuell“ und klicken auf OK.
An diesem Punkt, nachdem das System neugestartet wurde, öffnen sie den Disk Manager, dort erscheint dann das neue Volumen, welches bereit ist zur Formatierung.