Udostępnij za pośrednictwem


Achtung Falle: Löschen von Snapshots in Hyper-V

Technorati Tags: Microsoft

Ein Teilnehmer des heutigen TechDays in München machte mich freundlicherweise auf ein potentielles Problem mit Hyper-V aufmerksam. Wie Sie wissen, kann man von Gastsystemen in Hyper-V jederzeit einen Snapshot erstellen. Dabei wird die vorhandene VHD-Datei eingefroren und eine Differencing Disc (*.avhd) erstellt. Löscht man den Snapshot wieder, dann wird der Inhalt in die ursprüngliche VHD-Datei (oder, bei geschachtelten Snapshots, in die vorherige AVHD-Datei) zurückgeschrieben. Das ist notwendig, um die Konsistenz des Laufwerks für das Gastsystem zu erhalten.

Das Problem ist nun folgendes: Stellen Sie sich vor, Sie haben eine VHD-Datei auf einem Laufwerk mit 80GB Kapazität, und die AVHD-Datei des Snapshots liegt auf einem anderen Laufwerk und ist 500GB groß. Jetzt löschen Sie im Hyper-V Manager den Snapshot. Dann versucht Hyper-V, die 500GB in die VHD-Datei zu übertragen. 80GB – 500GB = ??? Richtig: Genau das ist das Problem. Hyper-V prüft leider nicht, ob die Zielpartition groß genug ist. Als Ergebnis erhalten Sie wahrscheinlich eine korruptes Gastsystem …

Die richtige Vorgehensweise wäre: Exportieren Sie das Gastsystem in eine Partition mit genügend Platz, importieren Sie es von dort wieder nach Hyper-V und löschen Sie dann den Snapshot.

Mit freundlichen Grüßen!

Ralf M. Schnell

Comments

  • Anonymous
    January 01, 2003
    Hallo, Herr Uebelacker! Das stimmt - wenn die ursprüngliche VHD eine 'Fixed Size Disk' ist. Dann wird die natürlich nicht größer. Wenn Sie aber eine 'Dynamic Disk' benutzen, kann die ja für das Gastsystem 80GB groß sein und trotzdem auf einer 30GB-Partition liegen und dort nur 10GB Platz belegen. Arbeiten Sie dann mit einem Snapshot auf einer anderen Partition weiter und kopieren z.B. 40GB an Daten in das Gastsystem, dann ist die Differencing Disk des Snapshots mindestens 40GB groß. Löschen Sie dann den Snapshot, werden die 40GB in die ursprüngliche Dynamic Disk übertragen, die versucht, entsprechend zu wachsen, und damit haben Sie das beschriebene Problem. Mit freundlichen Grüßen! Ralf M. Schnell

  • Anonymous
    January 01, 2003
    Hallo, Herr Gölz, wenn ich Sie richtig verstanden habe, dann sind für Ihre VM fünf verschiedene virtuelle Festplatten konfiguriert, und die fünfte wollen Sie entfernen, mitsamt allen Daten und Snapshots. Das geht unter der Voraussetzung, daß da nicht gerade auch c: draufliegt. Einfach in den Eigenschaften der VM die virtuelle Festplatte löschen ... ABER: Ich habe leider keine Ahnung, ob das auch dann noch funktioniert, wenn Sie schon in den o.g. Fehler hineingelaufen sind. Kann sein, daß Hyper-V sich dann weigert, die VHD zu entfernen ... ich weiß es einfach nicht. Mit freundlichen Grüßen! Ralf M. Schnell

  • Anonymous
    March 18, 2009
    Theorie und Praxis ? Wenn meine Auffasung richtig ist, dass der Snapshot auf Blockebene "gezogen wird" kann EIN Snapshot maximal "alle Blöcke" in einem aktuelleren Wert haben, als die Blöcke auf der originalen HD. Alle Blöcke einer Snapshot Partition (Differencing Disc = *.avhd) können aber nur so groß sein, wie die originale HD. EIN Snapshot hat nach meiner Auffassung keine Verwaltung von Generationen. Also konsolidieren sich maximal 80 GB in 80 GB. Möglicherweise resultierte das so genannte "potentielle Problem" aus der Phase des Aufbaues des Snapshots.

  • Anonymous
    June 02, 2010
    The comment has been removed

  • Anonymous
    June 08, 2010
    Hallo Herr Schnell Ich versuche auf dem Hyper-V einen neuen virtuellen Server zu erstellen und dabei die bestehende virtuell Festplatte einzubinden. Diese hat leider bestehende Snapshots in beachlichen Grössen. VHD Datei=22 GB, Snapshot 1 = 11GB, SS2 = 0.25 GB, SS3 =12 GB und der eingebunden aktuellste 28 GB. Der Vorgang  läuft nun schon seit ca. 3 Stunden. Ich sehe den fliegenden Balken und die Meldung Änderungen werden übernommen. Muss/kann dies so lange laufen? Was macht er zu diesem Zeitpunkt ? Mit freundlichen Grüssen Norbert Mächler