Mehrere VMDK-Dateien zu einem virtuellen Laufwerk zusammenfassen

    VMDK-Größe im vSphere ClientDie Desktop-Produkte VMware Workstation, Fusion und Player können virtuelle Laufwerke in mehrere VMDK-Dateien aufteilen. Wenn man sich beim Anlegen einer VM unversehens für diese Option entschieden hat, dann kann man die VMDKs nachträglich wieder über die Kommandozeile zusammen­führen.

    Das Aufteilen von virtuellen Laufwerken in mehrere Dateien ist eine Behelfslösung, um die Größenbeschränkung von VMDKs und FAT32 auf 2TB zu umgehen. Das Limit wurde zwar für VMDKs unter ESXi 5.5 auf 62TB angehoben, aber nicht bei den gehosteten Virtualisierern.

    Sparse Disk als Vorgabe

    Legt man ein neues virtuelles Laufwerk in der VMware Workstation an, dann lautet die Voreinstellung auf Split virtual disk in multiple files - und zwar auch dann, wenn die Größe weit unter dem maximal zulässigen Wert bleibt. Als Grund nennt VMware, dass die VMDKs auf diese Weise einfacher auf andere Computer zu übertragen seien.

    Sparse Disks sind beim Anlegen einer VMDK in der Workstation immer noch der Vorgabewert.

    Bei der Vergabe der Dateinamen geht die VMware Workstation nach folgendem Schema vor:

    • Die erste Disk trägt den im Wizard vergebenen Namen plus die Endung .vmdk
    • Alle anderen Disks hängen an den Namen -s<nnn> an, wobei <nnn> für eine fortlaufende dreistellige Zahl steht.

    Sparse Disks folgen dieser Namenskonvention.

    Konvertierung mit vmware-vdiskmanager

    Wenn man beim Anlegen eines virtuellen Laufwerks vergessen hat, die vorgegebene Einstellung auf Store virtual disk as a single file zu ändern oder man findet das aufgesplittete Format nicht mehr praktikabel (etwa aufgrund der geringeren Performance), dann kann man die VMDK-Sammlung mit vmware-vdiskmanager.exe in einer Datei zusammenführen.

    Dieses Tool für die Kommandozeile bietet keine eigentliche Merge-Funktion, aber man kann sich dessen Fähigkeiten zur Konvertierung von virtuellen Disks zunutze machen:

    vmware-vdiskmanager -r <Quelldatei> -t 0 <Ziel>.vmdk

    Als Quelldatei gibt man den Namen der Haupt-VMDK an, also jene ohne die Erweiterung -s<nnn>, und als Ziel die zu erstellende neue virtuelle Disk. Die Zahl im Parameter -t steht für den Typ des neuen Laufwerks, sie bedeutet laut Online-Hilfe:

    • 0: single growable virtual disk
    • 1: growable virtual disk split in 2GB files
    • 2: preallocated virtual disk
    • 3: preallocated virtual disk split in 2GB files
    • 4: preallocated ESX-type virtual disk
    • 5: compressed disk optimized for streaming
    • 6: thin provisioned virtual disk - ESX 3.x and above

    Es wäre daher auch durchaus denkbar, dass man den umgekehrten Weg beschreitet und eine einzelne VMDK aufspaltet, indem man als Ziel -t1 angibt.

    Manuelles Anpassen der VM

    Nach vollbrachter Konvertierung behält vmware-vdiskmanager die Quelldateien bei, und wenn man sie nicht mehr benötigt, muss man diese von Hand entfernen. Vorher aber sollte man die VM, der die Disk zugeordnet ist, so konfigurieren, dass sie auf die neue VMDK verweist.

    Möchte man eine Split Disk von der Workstation auf einen ESXi-Host migrieren, dann muss man sie erst konvertieren, bevor man sie dort nutzen kann. Das kann man gleich auf dem PC mit vmware-vdiskmanager tun oder anschließend auf der ESXi-Shell mit dem Programm namens vmkfstools. Dieser KB-Artikel beschreibt, wie man es zur Konvertierung von Sparse Disks verwendet.

    Überträgt man eine ganze VM mit dem entsprechenden Befehl direkt aus der Workstation auf einen ESXi-Server, dann erfolgt die Umwandlung in eine Single Disk automatisch.

    Keine Kommentare