Auch ich möchte mich zunächst bei Frank bedanken, mich auf FrankysWeb mit eigenen Beiträgen beteiligen zu dürfen. Da ich mich beruflich sehr viel mit Hyper-V Servern beschäftigen darf, möchte ich mein Wissen hier gerne teilen und einige Artikel dazu schreiben. Beginnen möchte ich mit einer Anleitung, wie Du virtuelle Festplatten in Hyper-V Server vergrößern, bzw. erweitern kannst.
Unterschiede bei virtuellen Festplatten
Bevor die Vergrößerung durchgeführt wird, solltest Du Dir die Einstellungen der virtuellen Maschine aufrufen. Dort kontrollierst Du, ob die betreffende Festplatte per IDE-Controller oder SCSI-Controller angebunden ist. Hier entscheidet sich nämlich, ob die Erweiterung im laufenden Betrieb möglich ist, oder ob Du die VM zunächst herunterfahren musst.
Während virtuelle IDE-Festplatten sich nicht im laufenden Betrieb verwalten lassen, stehen Dir bei SCSI-Festplatten die meisten Operationen auch während der Ausführung zur Verfügung (zumindest ab Windows Server 2012R2, bzw. Windows 8.1). Ob es sich beim Format der Festplatte um eine VHD- oder eine VHDX-Datei handelt oder ob die VM als 1. Generation oder 2. Generation angelegt wurde, spielt dabei keine Rolle.
Virtuelle Festplatte vergrößern
Das Vergrößern einer virtuellen Festplatte lässt sich entweder über den Hyper-V Manager erledigen oder (schneller) über die PowerShell. Im Hyper-V Manager musst Du Dir die betreffende Festplatte in den Einstellungen der VM heraussuchen und startest dann mittels der Option „Bearbeiten“ den Assistenten für die Bearbeitung virtueller Festplatten. Dieser führt Dich dann durch die weiteren Schritte.
Wer das Ganze, wie ich, lieber über die PowerShell umsetzen möchte, dem genügt der folgende kurze Befehl: Resize-VHD <Pfad zur VHD> -SizeByte <Größe>
z.B.: Resize-VHD „D:\HyperV\Test-SRV\Virtual Hard Disks\Test-SRV-Disk0.vhdx“ -SizeBytes 60GB
Nachdem dieser Befehl abgesetzt wurde, wird die (maximale) Größe der VHD-Datei auf die angegebene Größe erweitert. Wichtig: Es muss die neue Gesamtgröße des virtuellen Datenträgers angegeben werden (nicht die zu erweiternde Größe). Der Vorgang dauert nur wenige Sekunden.
Festplatte in der virtuellen Maschine erweitern
Nachdem Du die Größe der VHD(X)-Datei der virtuellen Maschine erweitert hast, musst Du den neuen, zusätzlichen Speicherplatz natürlich noch dem Betriebssystem zur Verfügung stellen. Sofern Du eine Windows Server Version mit Desktopdarstellung installiert hast, kannst Du das über die Datenträgerverwaltung erledigen. Solltest Du eine Core-Installation haben oder einfach die PowerShell bevorzugen, musst Du zunächst herausfinden, um welchen Datenträger und welche Partition es sich handelt. Hierfür rufst Du mit Get-Partition | ft DriveLetter, DiskNumber, PartitionNumber eine Liste der im System konfigurierten Partitionen ab.
Anschließend kannst Du mit Resize-Partition die Größe der Partition anpassen. Um die Partition auf die maximale Größe zu erweitern, lesen wir dabei noch mit Get-PartitionSupportedSize die größtmögliche Kapazität aus. Der komplette Befehl lautet letztlich:
Resize-Partition -DiskNumber x -PartitionNumber y (Get-PartitionSupportedSize -DiskNumber x -PartitionNumber y).SizeMax.
In meinem Beispiel möchte ich die Partition mit dem Laufwerksbuchstaben E auf die größtmögliche Kapazität erweitern.
Dies erreiche ich mit:
Resize-Partition -DiskNumber 1 -PartitionNumber 2 (Get-PartitionSupportedSize -DiskNumber 1 -PartitionNumber 2).SizeMax
Direkt nach der Ausführung dieses Befehls, wird die Partition erweitert und der zuvor definierte zusätzliche Speicherplatz steht dem Betriebssystem zur Verfügung.
Interessant wäre hier, wie man bei einer Linux VM die Partition vergrößert.
Hi,
das lässt sich hierfür genauso nutzen. Du musst aber zunächst das Volume in der VM auf die neue Größe verringern. Das dürfte der wesentlich schwierigere, bzw. aufwändigere Teil sein. Anschließend kannst Du die fixe Disk mit diesem Befehl verkleinern.
Resize-VHD -ToMinimumSize
oder
Resize-VHD -SizeByte
Hi,
kann man dies auch benutzen, um fixe VHDX zu verkleinern?
Oder ist dies problematischer als vergrößern?
cu
UserNeo
Hallo Tom
in diesem Fall würde ich darauf tippen, dass die virtuelle Festplatte nicht „dynamisch erweiterbar“ (also mit Thin-Provisioning) angelegt wurde, sondern mit fester Größe (Thick Provisioning).
In diesem Fall erweitert er die Festplatte zunächst um den gewünschten Speicherplatz, beschreibt aber dann den neuen Speicherplatz einmal komplett mit Nullen, bevor er diesen freigibt. Das dauert dann leider seine Zeit.
Viele Grüße René
Hallo René
Schön das du nun auch da bist!
Guter Beitrag!
Ich habe eine Frage:
Exchange 2010/Hyper-V-Cluster/Server2008/3Par
Erweiterung:
Vorher Offline(wegen 2008)
Mit Hyper-V-Manger erweitern
Dabei schlafen einem die Füße ein, das dauert ewig! Keine Ahnung warum.
( 100gb ca 10 min.. )
Geht das per Powershell schneller?
LG Tom