In diesem Artikel möchte ich aufzeigen, wie unter vSphere 4 und vSphere 5, genauer gesagt unter ESXi 4 und ESXi 5 misalignte Disks für den Betrieb an einem NetApp Storage System optimiert werden können.
Was sind misalignte Disks und warum sollte ich diese alignen?
Eine schöne detailierte Erklärung ist im NetApp TR-3747 "Best Practices for File System Alignment in Virtual Environments" (http://media.netapp.com/documents/tr-3747.pdf) zu finden.
Die Kernaussage des Artikels ist folgender:
Standardmäßig startet die erste Primary Partition bei vielen Gast-Betriebssystemen (Windows 2000, Windows XP, Windows 2003, diverse Linux-Distributionen) bei Sektor (logischer Block) 63.
Diese Tatsache sorgt in virtuellen Umgebungen für "misalign"te Filesysteme, denn die Partition beginnt nicht bei einem Sektor, der 1:1 mit dem Beginn eines darunterliegenden Sektors des Storages übereinstimmt.
Sprich: die Blöcke decken sich nicht 1:1 und es kann dazu führen, dass für das Lesen oder Schreiben eines Guest-OS-Blockes von 2 Blöcken auf Storageseite gelesen oder geschrieben werden muss.
Dies wirkt sich negativ auf die IO-Performance der virtuellen Gast-Betriebssysteme aus und kann durch richtiges Alignment optimiert werden.
Wichtig ist hierbei, dass Windows Server 2008, Windows Vista und Windows 7 Gastbetriebssystme standardmäßig ihr Offset bei 1.048.576 haben und somit kein Alignment brauchen, weil dieser Wert durch 4.096 teilbar ist und somit perfekt mit dem Storagelayout harmoniert.
Das gleiche gilt für Red Hat Enterprise Linux 6, da es seine Partitionen per default richtig alignt.
In diesem Artikel geht es um eine Step-by-Step Anleitung, wie ein misalignter VM-Guest angepasst werden kann:
WICHTIG: Mit diesen Schritten werden grundlegende Änderungen an vmdk-Layouts vorgenommen. Prüfen Sie, ob aktuelle Backups für den Fall der Fälle vorliegen!
01. Die MBRTools sind Teil der NetApp Virtual Storage Console 2.1.1. Diese sollte auf dem vCenter installiert sein
02. Die MBRTools können aus dem VI-Client im NetApp Virtual Storage Console Plugin des vCenters heruntergeladen werden

03. Entpacken der gedownloadeten MBRTools. Die entpackten Dateien sind im 2. Screenshot zu sehen.


04. Über den VI-Client via Datastorebrowser die MBRTools auf den ESXi kopieren, welcher die MBR-Tasks ausführen soll

05. per SSH auf den jeweiligen ESX aufwählen (ACHTUNG: Bei ESXi muss der Remote Support aktiviert sein) und den Ordner "Ontap" nach /opt kopieren

06. Die Dateien sollten nun unter /opt/ontap liegen

07. Die Dateien "mbralign" und "mbrscan" mit den Befehlen "chmod 770 mbralign" und "chmod 770 mbrscan" ausführbar machen

08. Mit einem "./mbrscan PFAD_ZUR_VMDK-FLAT_DATEI" kann das derzeitige Alignment geprüft werden - ACHTUNG: Die virtuelle Maschine sollte keine Snapshots haben, kein LinkedClone sein und MUSS ausgeschaltet sein!
09. Beispielhafter Screenshot von einer Windows 2008 Server und einer Windows 7 VM - defaultmäßig richtiges Alignment

10. Screenshot einer misalignten XP-VM

11. Durch die Ausführung des Befehls "./mbralign --preview PFAD_ZUR_VMDK-FLAT_DATEI" kann geprüft werden, welche Auswirkungen der Alignment-Prozess auf die vmdk hat und das Zieldesign wird angezeigt.

12. Alignment mit "./mbralign PFAD_ZUR_VMDK-FLAT_DATEI" anstarten - ACHTUNG: Doppelter Speicherplatz wird benötigt, da vmdk kopiert wird!

13. Nach dem Alignmentvorgang gibt es die neuen passenden alignten vmdk's und als Backup die vorherigen vmdk's

14. Mit "./mbrscan PFAD_ZUR_VMDK-FLAT_DATEI" noch einmal prüfen, ob die neuen vmdk's richtig alignt sind

15. VM wieder anstarten und testen, ob alles funktioniert
Quick and simple...
Benjamin Ulsamer
Consultant & Trainer
teamix GmbH